wget http://repo.mysql.com/mysql57-community-release-el7-9.noarch.rpm
yum install mysql57-community-release-el7-9.noarch.rpm
查看yum源
yum list mysql-community-server
2. 安装
yum install mysql-community-server
3. 配置 systemd
[root@six lzo]# cat /etc/systemd/system/mysql.service
[Unit]
Description=MySQL Server
After=network.target
[Service]
ExecStart=/usr/sbin/mysqld --defaults-file=/data/mysqld/my.cnf --datadir=/data/mysql --socket=/data/mysqld/mysqld.sock --user=mysql
Group=mysql
WorkingDirectory=/usr
[Install]
WantedBy=multi-user.target
4. 配置 mysql
[root@six lzo]# mkdir /data/mysql;mkdir /data/mysqld/
[root@six lzo]# chown -R mysql:mysql /data/mysql;chown -R mysql:mysql /data/mysqld/
[root@six lzo]# chown -R mysql:mysql /data/mysql;chown -R mysql:mysql /data/mysqld/
注意,原来的 mysql_install_db 已经废弃不用
[root@six lzo]#/usr/sbin/mysqld --initialize --defaults-file=/data/mysqld/my.cnf --datadir=/data/mysql --user=mysql
[root@six lzo]# chown -R mysql:mysql /data/mysql;chown -R mysql:mysql /data/mysqld/
5. 配置my.cnf
[root@six lzo]# mv /etc/my.cnf /data/mysqld/my.cnf
[root@six lzo]# chown -R mysql:mysql /data/mysqld
修改 /data/mysqld/my.cnf内的内容,主要是 mysqld节点
datadir=/data/mysql
socket=/data/mysqld/mysql.sock
skip-grant-tables
default-time-zone='+8:00'
log_timestamps='system'
explicit_defaults_for_timestamp
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error=/data/mysqld/mysqld.log
pid-file=/data/mysqld/mysqld.pid
6. 配置 mysql 用户
[root@six lzo]# systemctl start mysql.service
[root@six lzo]# mysql -S/data/mysqld/mysqld.sock
mysql shell 中增加用户
mysql> FLUSH PRIVILEGES;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '1122334455' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '1122334455' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> \q
7. 复位权限
注释 /data/mysqld/my.cnf内,skip-grant-tables,例如:
#skip-grant-tables
[root@six lzo]# systemctl restart mysql.service
8. 验证安装
[root@six lzo]# rpm -aq|grep "mysql"
mysql-community-libs-5.7.15-1.el7.x86_64
mysql57-community-release-el7-9.noarch
mysql-community-client-5.7.15-1.el7.x86_64
mysql-community-server-5.7.15-1.el7.x86_64
mysql-community-common-5.7.15-1.el7.x86_64
输入 1122334455,登录完成,整个安装完成
补充,初始化失败,可以删除 数据目录,重新初始化,
mysqld --initialize --user=mysql --basedir=/usr/bin --datadir=/var/lib/mysql --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp
初始化密码在日志文件里面(日志文件位置看 my.cnf 配置)
)qT%kesFx6k3
必须修改初始化密码,修改需要步骤如下:
mysql -S/var/lib/mysql/mysql.sock -uroot -p
使用初始化密码登录,执行下面的语句,设置新密码为 1qaz@WSX
SET PASSWORD = PASSWORD('1qaz@WSX');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
flush privileges;
后续可以这样修改密码了
update mysql.user set authentication_string=password('1qaz@WSX') where user='root';
如果服务没有起来,考虑
/usr/sbin/mysqld --defaults-file=/data/mysqld/my.cnf --daemonize --user=mysql --basedir=/usr/bin --datadir=/data/mysql --pid-file=/data/mysqld/mysqld.pid