一、概述

本教程演示安装的是免费的社区版 MySQL 服务器,教程参照官方文章改编,真实可用。适用在 Linux 、 Ubuntu 、CentOS 等系统下安装。

原版英文教程:https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/#repo-qg-yum-fresh-install

二、安装 MySQL yum 仓库

当下载好 MySQL yum 仓库的 rpm 包后,使用sudo rpm -Uvh your_download_package_name.rpm命令格式安装 yum 仓库,如下:

# sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm

至此就完成了 MySQL yum 仓库的安装,需要一提的是,如果本机原来装有相关安装包的,该安装包将被更新。

三、选择安装 MySQL 版本

默认 MySQL yum 源在执行 MySQL 安装时,安装的是 yum 源上指定的最新版本,目前是8.0版。如果这是你想要的,请转到下一步,直接安装即可。如果不是,则需要变更 yum 源的配置信息,指定安装 MySQL 的版本。
配置的方式有多种,我们可以平台情况,使用yum-config-managerdnf config-manager命令进行配置,又或直接编辑相关文件进行配置,例如下面将原安装8.0版,变更为5.7版,相关操作如下:

利用yum-config-manager命令配置:

# sudo yum-config-manager --disable mysql80-community
# sudo yum-config-manager --enable mysql57-community

利用dnf config-manager命令配置:

# sudo dnf config-manager --disable mysql80-community
# sudo dnf config-manager --enable mysql57-community

直接操作配置文件变更安装配置
使用 vi /etc/yum.repos.d/mysql-community.repo 命令打开配置文件,然后找到如下配置项:

# Enable to use MySQL 5.7
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

可以看到在8.0版和5.7版的配置项中分别有一个enable的字段,enable=1表示允许enagle=0表示禁止。从默认配置可以验证前面说的默认是安装最新的8.0版,而其它低于此版本的均被设置为enable=0,禁止安装。
所以这里需要安装 5.7 版的MySQL ,只需把原 8.0 版的配置项的enable=1 变更为enable=0, 5.7版的enable=0变更为eanble=1即可。选装其它版本的过程也是如此,变更配置后,保存并退出即可。

注意:如果同时开启了多个版本的安装授权,默认会安装已开启授权的最新一个版本的MySQL。如需查看授权情况,可根据平台情况,使用yum repolist enabled | grep mysqldnf repolist enabled | grep mysql命令查看详情。

四、安装MySQL

执行以下命令即可完成 MySQL 的安装:

# sudo yum install mysql-community-server

注:如果你的平台是支持dnf命令的,只需将上述的 yum 替换为 dnf 即可!

五、启动MySQL服务器

执行以下命令启动已经安装好的MySQL服务器:

# sudo service mysqld start

如果是EL7-based平台(如:CentOS 7) ,首选使用以下命令:

# sudo systemctl start mysqld.service

启动MySQL服务后,接下来查询一下启动的情况,执行以下命令:

# sudo service mysqld status

同样的,如果是基于 EL7-based 的平台,优先使用以下命令:

# sudo systemctl status mysqld.service

六、修改root用户密码

自MySQL 5.7版本起,新安装的MySQL在首次启动时,如果数据目录为空,则会促发以下操作:

  • 初始化服务器
  • 在数据目录中生成SSL证书和密钥文件
  • 安装/启用validate_password插件
  • 创建超级用户帐户“root”@“localhost”,并将其密码存储在错误日志文件中

既然密码存放在日志中,那我们只需定位到该日志文件,然后查找出来,再执行正常的登录修改即可。接下来,运行以下命令即可从日志文件中滤出密码;

# sudo grep 'temporary password' /var/log/mysqld.log

获得自动生成的密码后,接下来就是修改密码了,运行以下命令登录SQL:

# mysql -uroot -p

再接着在 MySQL shell 下输入以下命令修改密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

'MyNewPass4!'为新指定的密码,根据个人需求更改即可。

注意:由于启用了validate_password插件,密码要求包含至少一个大写字母,一个小写字母,一个数字和一个特殊字符,并且密码总长度至少为8个字符。
最后修改:2022 年 06 月 08 日
如果觉得我的文章对你有用,请随意赞赏