#!/bin/sh . /etc/init.d/functions #创建mysql用户 id mysql &> /dev/null || { useradd -r -d /data/mysql -s /sbin/nologin mysql ; action "创建用户成功"; } #安装依赖包 yum install -q -y libaio perl-Data-Dumper libncurses* &> /dev/null #创建mysql的家目录文件夹 mkdir -pv /data/mysql &> /dev/null && chown mysql:mysql /data/mysql #解压二进制程序 tar xf mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local #将原文件创建为软链接 ln -sv /usr/local/mysql-5.7.30-linux-glibc2.12-x86_64 /usr/local/mysql &> /dev/null chown -R root:root /usr/local/mysql/ #环境变量 echo 'PATH=/usr/local/mysql/bin/:$PATH' > /etc/profile.d/mysql.sh . /etc/profile.d/mysql.sh #准备配置文件 cat > /etc/my.cnf <<EOF [mysqld] datadir = /data/mysql socket=/data/mysql/mysql.sock log-error=/data/mysql/mysql.log pid-file=/data/mysql/mysql.pid [client] port=3306 socket=/data/mysql/mysql.sock EOF #创建数据库文件 /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/data/mysql #服务启动文件 cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig mysqld on service mysqld start && action "mysql服务启动成功" || action "mysql服务启动失败" #设置密码 MYSQL_OLDPASSWORD=`awk '/A temporary password/{print $NF}' /data/mysql/mysql.log` MYSQL_ROOT_PASSWORD=123456 mysqladmin -uroot -p$MYSQL_OLDPASSWORD password $MYSQL_ROOT_PASSWORD &>/dev/null && action "修改密码成功" || action "修改密码失败"