CentOS 8 服务器安装 MySQL 8.0

参考资料:MySQL 官方 – A Quick Guide to Using the MySQL Yum Repository

1. 下载 MySQLyum 仓库源

# 在这里是下载到了 /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 版本目前不会生成,以后应该会有,毕竟官网目前说的是(截止到 MySQL 5.7 为止)。 2022-11-24 更新:8.0 目前也已经有了,详见 5.2

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 就安装好了!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注