CentOS 使用 yum 安装MySQL 8

1. 下载MySQL

使用yum下载

由于CentOS自带的yum中默认不包含MySQL,所以需要先去MySQL官网下载repo源并安装。

使用方法下载完成后使用文件传输软件或scp命令将其拷贝到服务器上。

1
scp mysql80-community-release-el7-3.noarch.rpm root@1.1.1.1:/usr/local/mysql/

传输完成后在服务器中安装repo源并更新缓存。

1
2
3
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
yum clean all
yum makecache

由于MySQL镜像位于国外服务器,可能该步以及后续下载会较慢,建议可以使用清华大学开源镜像网站替换(该命令仅会下载community-server包,其他包的安装依旧需要执行之前安装 repo 源的命令)。

1
wget <https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql80-community-el7/mysql-community-server-8.0.16-2.el7.x86_64.rpm>

2. 安装MySQL

使用 yum 进行安装。

1
yum install mysql-community-server

如果使用的是国内镜像,由于下载的已经是安装包了,请使用如下命令

1
yum localinstall mysql-community-server-8.0.16-2.el7.x86_64.rpm

采用上述两种方法之一安装成功后启动MySQL服务。

1
systemctl start mysqld.service

3. 配置MySQL

启动成功后,可使用MySQL生成的随即初始密码登录,初始密码位于 /var/log/mysqld.log 中,使用下列命令查询。

1
cat /var/log/mysqld.log | grep password

查询后登录root账户。

1
mysql -u root -p

登录完成后应立即修改初始密码(MySQL 8 中提高了密码的安全等级,默认需要多种类型的字符,包括大小写和标点)。

1
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password123!@';

MySQL 8 中默认root用户不允许外部访问,应建立一个单独的账户并授予其对应权限,操作如下。

1
2
3
CREATE USER 'remote'@'%' IDENTIFIED BY 'Remote!@12';
grant all privileges on *.* to 'remote'@'%';
flush privileges;

操作完成后便创建了一个可以远程链接的名为remote的用户,他的密码是Remote!@12,同时还赋予了它操作所有数据库的权限。

上述配置完成后还应配置MySQL开机自动启动。

1
systemctl enable mysqld.service