环境
CentOS 7.4 x86_64 最小安装
mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
下载软件包
cd /root/
curl -O https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
解压软件包
tar zxf /root/mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz -C /opt/
ln -s /opt/mysql-5.7.20-linux-glibc2.12-x86_64 /opt/mysql
创建日志目录和数据目录
mkdir /opt/mysql/log
mkdir /opt/mysql/data
创建配置文件
rm -rf /etc/my.cnf*
cat < /opt/mysql/my.cnf
[mysqld]
user=nobody
datadir=/opt/mysql/data
socket=/tmp/mysql.sock
symbolic-links=0
log-error=/opt/mysql/log/error.log
pid-file=/opt/mysql/log/mysql.pid
character_set_server=utf8
init_connect='SET NAMES utf8'
EOF
创建服务文件
创建 mysqld 文件
cd /opt/mysql
cp support-files/mysql.server ./mysqld
修改 mysqld 文件前面的四个全局变量
basedir=/opt/mysql
datadir=/opt/mysql/data
lockdir=/opt/mysql/log
lock_file_path="$lockdir/mysql.lock"
安装依赖包
yum install libaio-devel
初始化 mysql 数据库
chown -R nobody.nobody /opt/mysql/
/opt/mysql/bin/mysqld --initialize --user=nobody --basedir=/opt/mysql --datadir=/opt/mysql/data
# 注意输出中包含密码的一行: [Note] A temporary password is generated for root@localhost: sYVgqP&*F0U8
启动 mysql 数据库
/opt/mysql/bin/mysqld start
登陆数据库
/opt/mysql/bin/mysql -uroot -p
# 输入数据库初始化是生成的密码
修改数据库 root 账户的密码
# 默认密码登陆后,进行其他操作前需要修改默认密码
# 密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@sswo2d'