安装MySQL8.0(参考官方文档)
1 添加yum仓库
1.1 下载最新的.rpm包
sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
1.2 添加仓库并更新仓库
sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm
2 安装MySQL8.0
sudo yum install mysql-community-server
3 启动MySQL服务
sudo systemctl start mysqld.service
或者
sudo service mysqld start
4 查看服务器状态
sudo systemctl status mysqld.service
5 登录MySQL8.0
MySQL8.0安装时默认为root用户创建了密码,查看命令如下:
sudo grep 'temporary password' /var/log/mysqld.log
登录命令:
mysql -uroot -p
输入密码即可登录
登陆后建议立即修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourNewPassword';
修改密码时默认要求设置高等级密码,
官方文档原文:要求密码包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码总长度至少为8个字符。
远程链接配置
主要分为两个步骤:
1.创建并设置远程登录用户(可以使用root用户,但是不建议)
2. 开放3306端口
一 设置远程登录用户
使用自己创建的用户并允许任何主机登录
create user 'your_user_name'@'%' identified by 'your_password';
注: 本人使用的workbench链接远程MySQL,如果使用navicat, mysql8.0默认的加密方式是“caching_sha2_password”,navicat目前只支持"mysql_native_password",所以创建用户时执行下面命令修改
alter user 'your_user_name'@'%' identified with mysql_native_password by 'your_password';
修改后可以执行select host,user,plugin from user;
语句,查看新增用户的plugin是否是mysql_native_password
如果提示密码过于简单,执行以下两条命令,修改密码等级,再次上述的命令即可(不建议) .
set global validate_password.policy=0;
set global validate_password.length=1;
设置用户权限
GRANT ALL PRIVILEGES ON *.* TO 'your_user_name'@'%';
使用root用户:
use mysql;
update user set host='%' where user ='root'
更新权限并退出
flush privileges;
quit
二 开放3306端口
查看端口是否开放
sudo iptables-save
如果没有,则执行
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload # 重启防火墙
再次执行
sudo iptables-save
查看端口