去官网下载RPM软件包
下载链接:https://dev.mysql.com/downloads/mysql/
选择以下依赖包下载
将下载下来的依赖包上传到服务器
按照依赖次序,依次安装
rpm -ivh mysql-community-client-plugins-8.0.33-1.el8.x86_64.rpm
rpm -ivh mysql-community-common-8.0.33-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.33-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.33-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.33-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.33-1.el8.x86_64.rpm
第五命令可能会遇到以下问题
解决方案如下
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
yum install libaio
等待下载完成,然后执行如下命令
rpm -ivh mysql-community-server-8.0.33-1.el8.x86_64.rpm --nodeps --force
查看是否安装成功
mysqladmin --version
启动停止mysql
systemctl start mysqld.service
systemctl stop mysqld.service
systemctl status mysqld.service
查看mysql随机生成的秘密
sudo grep 'temporary password' /var/log/mysqld.log
#最后root@localhost:后面的就是随机密码
使用随机密码登录数据库
mysql -u root -p
#然后输入随机密码
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '*******';
-- 此时如果密码设置的过于简单会报错:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
-- 解决方案一:设置一个复杂的密码,最少8位,且至少有一位数字和字母
-- 解决方案二:修改mysql密码策略
set global validate_password.policy=0; // 密码策略等级改为低
set global validate_password.mixed_case_count=0; // 取消大小写混合
set global validate_password.special_char_count=0; // 特殊字符数量设置为0
set global validate_password.length=6; // 密码最小长度改为6
此时会有一个~~特别恶心~~ 的问题
-- 设置密码策略时会报错:简而言之就是你必须修改密码之后才能能进行操作
You must reset your password using ALTER USER statement before executing this statement.
-- 但是如果你修改密码,不管密码怎么修改都会报错:你的密码过于简单
Your password does not satisfy the current policy requirements
-- 反复试了多次之后,可以先将随机密码的最后一位变换一下,然后修改成新的密码,
-- 如我的随机密码是FyyiNdpiD3>t,则执行如下操作
alter user 'root'@'localhost' identified by 'FyyiNdpiD3>s';
-- Query OK, 0 rows affected (0.01 sec)
-- 然后进行修改密码策略,再修改密码即可
设置远程客户端访问
ALTER USER 'root'@'%' IDENTIFIED BY 'mysql#2023';