CentOS6.5 安装 MySQL5.7 RPM Bundle

时间:2021-06-23 21:07:01

本教程适用于新装CentOS6.5升级预装MySQL5.1.x至5.7.x版本,在操作过程中将省略检查步骤。
详细操作说明和配置变动请参考 —— 【MySQL5.7-官方文档

安装环境:CentOS6.5、MySQL5.7.16
教程内容:

  1. MySQL版本适用说明
  2. 安装源文件下载
  3. 卸载系统MySQL较旧版本
  4. 安装MySQL
  5. 登录并创建MySQL密码

1.MySQL版本适用说明

MySQL版本 适用的系统
el5, el6, el7 Red Hat Enterprise Linux/Oracle Linux/CentOS 5, 6, or 7
fc24, fc25 Fedora 24 or 25
sles12 SUSE Linux Enterprise Server 12

2.安装源文件下载

在官方网站的下载选项中提供两类下载地址:
- 通用版(Generally Available (GA) Release)
- 开发版(Development Release)
考虑到运行的稳定性,作者在此将推荐下载 GA 版本。

本示例中使用的MySQL安装版本为:Red Hat Enterprise Linux 6 / Oracle Linux 6 (x86, 64-bit), RPM Bundle (440MB)
其文件名为:mysql-5.7.16-1.el6.x86_64.rpm-bundle.tar

附:[ MySQL Community Server 下载地址 ]

3.卸载系统MySQL较旧版本

CentOS6.5中预装的MySQL版本为5.1.71-1.el6。在卸载较旧版本之前,如果您的系统中还没有用于运行mysqld的用户名和组,那么就需要为系统添加一个mysql用户 (并不是一定叫mysql,也可以叫其他名称,但是需要遵循语法、操作规定)。

(1)添加mysql组和mysql用户

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

注: groupadduseradd的语法或名称在不同版本的Unix系统上可能略有不同,但在CentOS6.5中应进行如上操作。上述操作只是为了获得系统的所有权,而不是以登录为目的;使用useradd命令和-r-s /bin/false选项来创建一个没有登录权限的用户。

(2)查看系统旧版MySQL

rpm -qa | grep mysql

将会输出系统中原MySQL及其组件列表,例如:

  • mysql-5.1.71-1.el6.x86_64
  • mysql-devel-5.1.71-1.el6.x86_64
  • mysql-libs-5.1.71-1.el6.x86_64
  • mysql-server-5.1.71-1.el6.x86_64
  • qt-mysql-4.6.2-26.el6_4.x86_64

注: 以上列表中的文件可能并不全,但是列表中的文件将会按顺序被逐个移除。

(3)卸载MySQL及其组件的顺序

注: 此处需要按依赖顺序逐个移除,否则会出现依赖包丢失或其他异常情况。

使用命令rpm -e --nodeps {-file-name}进行移除操作:

rpm -e-nodeps qt-mysql-4.6.2-26.el6_4.x86_64 
rpm -e-nodeps mysql-server-5.1.71-1.el6.x86_64 
rpm -e-nodeps mysql-libs-5.1.71-1.el6.x86_64 
rpm -e-nodeps mysql-devel-5.1.71-1.el6.x86_64 
rpm -e-nodeps mysql-5.1.71-1.el6.x86_64 

4.安装MySQL

(1)解压源文件
您可以将下载好的源文件(rpm-bundle.tar)解压至一个目录中,从而为安装做准备。

使用以下命令解压源文件到当前目录:

tar -xvf mysql-5.7.16-1.el6.x86_64.rpm-bundle.tar

(2)安装MySQL安装顺序
使用命令rpm -ivh {-file-name}进行安装操作:

rpm -ivh mysql-community-common-5.7.16-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.16-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.16-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-5.7.16-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-5.7.16-1.el6.x86_64.rpm

注: i-install安装;v-verbose进度条;h-hash哈希校验

5.登录并创建MySQL密码

安装完后,使用命令service mysqld start启动MySQL服务。

由于MySQL5.7.4之前的版本中默认是没有密码的,登录后直接回车就可以进入数据库,进而进行设置密码等操作。其后版本对密码等安全相关操作进行了一些改变,在安装过程中,会在安装日志中生成一个随机密码。

使用以下命令:

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

即可查询到类似于如下的一条日志记录:

2017-03-02T14:53:02.179626Z 1 [Note] A temporary password is generated for root@localhost:!(z%ehjw4*PZ

记录中的类似于最后绿色部分的字符串即为生成的随机密码。

此时,使用MySQL生成的随机密码就能够正常登录:
使用如下命名:

mysql -uroot -p !(z%ehjw4*PZ

登录成功后,请立即修改您的密码。

注: 如果没有修改密码,系统将会提示错误:在"ALTER USER"操作前不会执行其他操作;并且确保修改之后的密码的安全程度能够满足MySQL的要求。推荐数字、字母和特殊符号混用。

执行以下操作配置root用户的密码:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'mysql5.7@database.com'; 
Query OK, 0 rows affected (0.00 sec)

到此,基本的安装与密码配置已经结束。


另:如果想要修改密码的话,可以执行以下语句:

update mysql.user set authentication_string=password('mysql5.7@database.com') where user='root';

注: 从MySQL5.7.6开始,mysql.user表中存储密码的字段不再是password,而是authentication_string