目录
一. 下载安装mysql
1.添加MySQL的Yum存储库
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
2.进行repo的安装
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
3.重新获取Mysql的GPG
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
4.开始安装MySQL服务器
yum install mysql-server
二.MySQL数据库设置
1.设置不区分大小写
vim /etc/my.cnf
在[mysqld]下,添加以下内容
#让MYSQL大小写敏感(1-不敏感,0-敏感)
lower_case_table_names=1
2. 启动MySQL
systemctl start mysqld.service
2.3. 查看MySQL运行状态
systemctl status mysqld.service
三.设置密码
1.通过擦看日志查找初始化密码
grep "password" /var/log/mysqld.log
2.进入数据库
mysql -uroot -p
然后输入初始化密码登录
3.登录后设置登录密码,第一次设置登录密码要设置复杂一点儿,不然会报错
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
4.如果想要把密码修改简单,可以在设置了第一次的密码后按照下面步骤设置修改
调整MySQL密码验证规则,修改 policy 和 length 的值
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;
然后再设置个密码,这个时候就可以设置简单一点儿的密码了
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
四.设置远程访问
1.设置防火墙
查看防火墙状态,如果当前是dead状态,即防火墙未开启
systemctl status firewalld
开启防火墙,没有任何提示即开启成功
systemctl start firewalld
再次查看防火墙状态,显示running即已开启了
systemctl status firewalld
开启3306端口,提示success,表示设置成功。
firewall-cmd --permanent --zone=public --add-port=3306/tcp
重启防火墙
firewall-cmd --reload
2.设置认证方式
如果你没有设置认证方式,默认的密码加密方式是:caching_sha2_password,而现在很多客户端工具还不支持这种加密认证方式,连接测试的时候就会报错:
client does not support authentication protocol requested by server; consider upgrading MySQL client 这里的错误信息就是不支持身份认证方式,没关系,编辑/etc/my.cnf文件里面在[mysqld]下面加上这句话即可:
vim /etc/my.cnf
default_authentication_plugin=mysql_native_password
登陆到mysql命令行:然后输入密码
mysql -u root -p
进入之后选择mysql库,用户信息都存在这个库的user表中
use mysql; select host, user, authentication_string, plugin from user;
可以看到,用户对应的主机是localhost,而不是%,所以不能连接。
授权root用户可以远程登陆
update user set host='%' where user = 'root';
flush privileges;
刷新权限
flush privileges;
设置认证方式后若要修改密码则需要使用
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
3.阿里云设置安全组开放3306端口
参考阿里云服务器安全组开放3306端口教程MySQL数据库 | 端口号