参考资料:MySQL 官方 – A Quick Guide to Using the MySQL Yum Repository
1. 下载 MySQL
的 yum
仓库源
# 在这里是下载到了 /opt 目录中,使用的是 root 用户,请根据实际使用情况更改
cd /opt
sudo wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
# 推荐使用最新的源:2023-07-29 更新
sudo wget https://dev.mysql.com/get/mysql80-community-release-el8-7.noarch.rpm
2. 安装 yum 源
sudo rpm -ivh mysql80-community-release-el8-1.noarch.rpm
# 推荐使用最新的源:2023-07-29 更新
sudo rpm -ivh mysql80-community-release-el8-7.noarch.rpm
3. 安装 MySQL
sudo yum install mysql-community-server
【注】如果是服务器版本的 CentOS 安装 MySQL 时是没有输入密码的,桌面版的可以输入密码。
如果安装提示找不到 mysql-community-server
,请参考文章:CentOS 8 服务器安装 MySQL 报错:no match mysql-community-server
4. 启动 MySQL 服务器
sudo service mysqld start
# 或 (CentOS 7 或 CentOS 8 推荐下面的命令)
sudo systemctl start mysqld.service
查看服务器的状态:
sudo service mysqld status
# 或 (CentOS 7 或 CentOS 8 推荐下面的命令)
sudo systemctl status mysqld.service
5. 登陆数据库
5.1 MySQL 5.7
安装完成后 root 的密码为空密码,可以从安装的日志中查看。
【注】请注意与上一版本 5.7 的区别,5.7 会在日志中生成 root 用户的随机密码,但是 8 版本目前不会生成,以后应该会有,毕竟官网目前说的是( 2022-11-24 更新:8.0 目前也已经有了,详见 5.2截止到 MySQL 5.7 为止
)。
less /var/log/mysql/mysqld.log
如果当前系统登陆的用户为 root 可以直接使用以下命令快速登陆,等同于 mysql -uroot --skip-password
,因为 root 没有密码,所以不需要使用 sudo mysql -uroot -p
命令,如果使用该命令,则当需要输入密码的时候直接回车即可。
# 输入 mysql 直接回车即可
mysql
【注】mysql_secure_installation
指令只对 MySQL 5.6 有效,从 MySQL 5.7 开始就已经不能使用。
5.2 MySQL 8.0
【注】现在 8.0
版本也会自动生成随机密码(需要先启动 MySQL,不启动是不会生成的),测试版本为: 8.0.31
,暂未深究从哪个小版本开始支持的。
# 启动 MySQL
systemctl start mysqld.service
# 可以增加开机启动
systemctl enable mysqld.service
less /var/log/mysqld.log
#打开如下所示:
[MY-010454] [Server] A temporary password is generated for root@localhost: y,zAao(r
6. 修改 root 的密码
使用 mysql
登陆,然后修改 root 的密码:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
# 输入 quit; 退出 mysql
mysql> quit;
这时再直接输入 mysql 就不允许登陆了,因为我们已经为 root 设置了密码,需要通过密码才能进行登陆。
mysql -uroot -p
Enter password: # 输入设置的密码并回车
恭喜你!这样 MySQL 就安装好了!