MySQL5.7 RPM包安装部署

MySQL5.7 RPM包安装部署

RMP包下载

官网下载MySQL的RPM压缩包:https://downloads.mysql.com/archives/community/

检查是否安装MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
## 检查Linux是否安装MySQL
rpm -qa|grep mysql
mysql-community-libs-5.7.27-1.el7.x86_64
mysql-community-client-5.7.27-1.el7.x86_64
mysql-community-common-5.7.27-1.el7.x86_64
mysql-community-libs-compat-5.7.27-1.el7.x86_64
mysql-community-server-5.7.27-1.el7.x86_64
## 如果存在MySQL版本,卸载所有相关依赖。
rpm -e --nodeps mysql-community-libs-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-client-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-common-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-libs-compat-5.7.27-1.el7.x86_64
rpm -e --nodeps mysql-community-server-5.7.27-1.el7.x86_64
## 注意:如果使用普通删除模式rpm -e mysql报错,可以采用强力删除模式rpm -e --nodeps mysql。
## 同时,如果存在已安装MySQL,这里还需要卸载相关配置文件,保证整个系统环境彻底干净。
[root@hadoop01 opt]# find / -name mysql
/etc/selinux/targeted/active/modules/100/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/share/mysql
## 这里我们直接采用`rm -rf`删除对应文件夹,同时删除MySQL配置文件`/etc/my.cnf`。

检查是否安装MariaDB

1
2
3
4
5
6
7
8
9
10
11
## 检查Linux是否安装MariaDB,如果是CentOS7版本,应该都有自带安装MariaDB。
[root@node01 ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64
## 由于安装MySQL会和MariaDB的文件冲突,为了确保顺利安装,这里我们卸载MariaDB。
[root@node01 ~]# rpm -e mariadb-libs-5.5.56-2.el7.x86_64
错误:依赖检测失败:
libmysqlclient.so.18()(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要
libmysqlclient.so.18(libmysqlclient_18)(64bit) 被 (已安裝) postfix-2:2.10.1-6.el7.x86_64 需要
[root@node01 ~]# rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
## 卸载完成之后再次查看
[root@node01 ~]# rpm -qa|grep mariadb

解压安装

1
2
## 解压到指定目录
[root@node01 tools]# tar -xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar -C /opt/

解压mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar包之后我们会得到相关的rpm包,相关功能如下:

文件名称 说明
mysql-community-client-* 客户端程序和工具*
mysql-community-common-* 公共文件*
mysql-community-devel-* 开发MySQL必备的头文件和库
mysql-community-embedded-* 嵌入式库
mysql-community-embedded-compat-* 嵌入式共享兼容库
mysql-community-embedded-devel-* 嵌入式开发库
mysql-community-libs-* LIB库*
mysql-community-libs-compat-* LIB共享兼容库*
mysql-community-server-* 服务器程序和工具*
mysql-community-test-* 测试套件

依次按照下面的顺序进行安装,上面说明中带 * 的为必安装项。注意:最后安装server的时候可能缺少依赖,根据实际情况下载相关依赖即可。错误见补充说明。

1
2
3
4
5
[root@node01 tools]#   rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
[root@node01 tools]# rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
[root@node01 tools]# rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
[root@node01 tools]# rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
[root@node01 tools]# rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

启动MySQL服务

1
2
3
4
## 查看MySQL服务状态
[root@node01 tools]# systemctl status mysqld
## 启动服务
[root@node01 tools]# systemctl start mysqld

修改密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
## 我们先通过相关命令获取默认初始密码。
[root@node01 opt]# grep 'temporary password' /var/log/mysqld.log
2019-07-24T13:21:36.471365Z 1 [Note] A temporary password is generated for root@localhost: 6eNegsd3U!aC
## 根据临时密码登录MySQL
[root@hadoop01 opt]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.27
## 登录成功之后,我们修改密码。需要注意的是,我们的密码如果太过简单,会被MySQL拒绝。具体如下:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' ;
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
## 设置符合MySQL5.7规范的密码样式
mysql> alter user 'root'@'localhost' identified by 'Root_123456';
Query OK, 0 rows affected (0.00 sec)

设置远程登录

1
2
3
mysql> use mysql;
mysql>update user set host='%' where user ='root' and host like 'localhost%';
mysql>flush privileges;

到这一步,MySQL5.7基本安装成功。我们可以通过以下文件来查看日志信息以及相关配置信息修改。

文件路径 说明
/etc/my.cnf MySQL的主配置文件
/var/lib/mysql MySQL的数据库文件
/var/log MySQL日志输出文件

补充说明

server服务安装报错

1
2
3
4
5
rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

一般情况下,前面四步都可以正常安装,当我们在进行server服务安装的时候,可能会提示依赖检测失败。
这里列出两个常见的问题。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
## 1. perl is needed
[root@node01 opt]# rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm
警告:mysql-community-server-5.7.27-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
错误:依赖检测失败:
/usr/bin/perl 被 mysql-community-server-5.7.27-1.el7.x86_64 需要
perl(Getopt::Long) 被 mysql-community-server-5.7.27-1.el7.x86_64 需要
perl(strict) 被 mysql-community-server-5.7.27-1.el7.x86_64 需要

## 这里我们根据提示,下载对应的依赖即可。
[root@node01 opt]# yum search perl
[root@node01 opt]# yum -y install perl.x86_64
## 安装完成之后再次安装server程序
[root@node01 opt]# rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm
警告:mysql-community-server-5.7.27-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:mysql-community-server-5.7.27-1.e################################# [100%]

## 2. libaio.so.1()(64bit) is needed
[root@node01 opt]# rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm
warning: mysql-community-server-5.7.29-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
libaio.so.1()(64bit) is needed by mysql-community-server-5.7.29-1.el7.x86_64
libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-5.7.29-1.el7.x86_64
libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-5.7.29-1.el7.x86_64

## 这里我们根据提示,下载对应的依赖即可。
[root@node01 opt]# wget http://mirror.centos.org/centos/6/os/x86_64/Packages/libaio-0.3.107-10.el6.x86_64.rpm
[root@node01 opt]# rpm -ivh libaio-0.3.107-10.el6.x86_64.rpm
## 安装完成之后再次安装server程序
[root@node01 opt]# rpm -ivh mysql-community-server-5.7.29-1.el7.x86_64.rpm
打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2015-2023 henrrywan

请我喝杯咖啡吧~

支付宝
微信