简介
本文介绍了Linux CentOS系统下Mysql8.4.0的下载和安装方法
环境 (rpm -q centos-release)
centos-release-7-2.1511.el7.centos.2.10.x86_64
正文
一、去官网下载Mysql8.4.0
下载参考我另一篇mysql5.7.4的安装
CentOS7.9安装Mysql5.7-m14_centos下mysql5.7下载-CSDN博客
下载完成后上传到服务器
先查询之前是否存在安装过mysql
rpm -qa | grep -i mysql
卸载旧版本
rpm -e --nodeps mysql-community-...
二、安装Mysql
1、首先解压刚刚上传的mysql 5.7-m14
tar -xvf mysql-8.4.0-1.el7.x86_64.rpm-bundle.tar
2、开始安装,需要依次安装
rpm -ivh mysql-community-common-8.4.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.4.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.4.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.4.0-1.el7.x86_64
rpm -ivh mysql-community-client-8.4.0-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.4.0-1.el7.x86_64.rpm
期间遇到的错误可根据提示操作
1、启动mysql服务
systemctl start mysqld;
2、检查是否正确启动
systemctl status mysqld;
3、更新my.cnf文件,设置指定端口并且启用本地密码认证插件
4、重启mysql
systemctl restart mysqld;
5、查看临时密码
grep 'temporary password' /var/log/mysqld.log
6、登录到mysql
mysql -u root -p
7、更新密码
注:必须更新密码才能做其他操作,且密码需大于8位数,且必须为大写字母+小写字母+数字+特殊符号
alter user 'root'@'localhost' identified by 'Mysql@3306';
8、临时设置密码策略为低级
只有将密码策略设置为低级,才能更新称自己想要的密码
SET GLOBAL validate_password.policy = LOW;
到这里已经可以使用自己的密码登录mysql了,但无法进行远程连接,我们需要先新增一个远程登录用户
1、新增远程登录用户并授权
create user root@'%' identified with mysql_native_password by 'root';
2、用户授权
grant all on *.* to root@'%' with grant option;
3、刷新授权表
flush privileges;
注:此时进行远程连接的时候会报错 ”2058 PLUGIN CACHING_SHA2_PASSWORD COULD NOT BE LOADED”,需要更新密码认证方式
1、设置密码并设置永不过期
alter user 'root'@'%' identified by '你的密码' password expire never;
2、设置密码用mysql_native_password插件认证
alter user 'root'@'%' identified with mysql_native_password by '你的密码';
3、重新加载授权表使操作生效
flush privileges;
此时已经可以进行远程连接了(如果是,不要忘记在云服务器上面放开端口)
三、防火墙设置
1、开放HTTP服务
firewall-cmd --permanent --add-service=http
2、防火墙开放端口
firewall-cmd --zone=public --add-port=你的mysql端口/tcp --permanent
3、重新加载防火墙规则,使端口生效
firewall-cmd --reload
4、查看生效的防火墙规则,刚刚加的端口已经存在其中了
firewall-cmd --list-all