1.下载MySQL源安装包
$ wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2.安装mysql源
$ yum localinstall mysql57-community-release-el7-8.noarch.rpm 3.安装MySQL
这一步才是真正安装mysql
$ yum install mysql-community-server4.启动MySQL服务并设置开机启动
$ systemctl start mysqld
$ systemctl enable mysqld
$ systemctl daemon-reload5.查看防火墙是否开启
通过
systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。
通过
systemctl start firewalld开启防火墙,没有任何提示即开启成功。
再次通过
systemctl status firewalld查看firewalld状态,显示running即已开启了。
如果要关闭防火墙设置,可能通过
systemctl stop firewalld这条指令来关闭该功能。
6.端口开放
$ firewall-cmd --zone=public --add-port=3306/tcp --permanent$ firewall-cmd --reload7.查看mysql密码
$ grep 'temporary password' /var/log/mysqld.log(1)修改密码
mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';或者mysql>set password for 'root'@'localhost'=password('MyNewPass4!');(2)查询当前的密码测试
mysql> show variables like '%password%';validate_password_policy:密码安全策略,默认MEDIUM策略
| 策略 | 检查规则 |
| 0 or LOW | Length |
| 1 or MEDIUM | Length; numeric, lowercase/uppercase, and special characters |
| 2 or STRONG | Length; numeric, lowercase/uppercase, and special characters; dictionary file |
validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
validate_password_length:密码最少长度
validate_password_mixed_case_count:大小写字符长度,至少1个
validate_password_number_count :数字至少1个 validate_password_special_char_count:特殊字符至少1个
(3)修改策略(将策略要求置为LOW,长度要求置为1)
set global validate_password_policy=0;
set global validate_password_length=1;经测试,最小长度为4,设置为1无效,不晓得为什么,后面再查询下。
(4)重置密码
alter user 'root'@'localhost' identified by '1234';密码重置成功,可重新登录。
8.添加远程登录用户
mysql> GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;9.刷新MySQL
mysql 新设置用户或更改密码后需用flush privileges刷新MySQL的系统权限相关表,否则会出现拒绝访问,还有一种方法,就是重新启动mysql服务器,来使新设置生效。
10.如果连接不上MySQL
(1)查看mysql IP和端口是否正常。
使用:netstat -anpt
(2)监听得地址如果是:::3306或者是0.0.0.0:3306,表示监听所有IP地址,这监听状态是正常。若出现127.0.0.0:3306,说明监听的本地地址,需要在mysql配置文件中将bind-address选项设置为bind-address = 0.0.0.0,重启mysql。
(3)查看用于远程访问的mysql用户权限是否正确。
在本地登入mysql服务器,
use mysql;SELECT user, host from mysql.user; 查看用于远程访问的mysql用户host的权限,%表示允许所有机器访问。若host为127.0.0.1/localhost,那么这个用户就只能本机访问,则需要将host改为%,可以使用update user set host='%' where user='root';
(4)如果还不行看看某云安全组3306是否开启端口
