一、概述
本教程演示安装的是免费的社区版 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 包。https://dev.mysql.com/downloads/repo/yum/.
- 安装 MySQL yum rpm 包。
当下载好 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-manager
或dnf 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 mysql
或dnf 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个字符。
8 条评论
有帮助,非常感谢!
感谢肯定,欢迎常访!
春暖花开,下次再来!
感谢支持!!!
不让出门,只能刷刷博客了!
天冷,窝在家里刷刷您的博客!
雁过留声!
已加入收藏夹,时不时的来看看有没有更新博文!