MySQL 5.6.38在RedHat 6.5上通过RPM包安装

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

一、安装环境

1、操作系统版本:Red Hat Enterprise Linux Server release 6.5 (Santiago)

2、Mysql版本:MySQL-5.6.38-1.el6.x86_64.rpm-bundle.tar


二、安装说明

网上不少资料在使用rpm包安装Mysql 5.6之前,都会先卸载系统自带的mysql-libs,但有的资料是用yum remove mysql,但这样会把依赖mysql-libs的8个包也一同卸载,其中就包括postfix、crontab等软件包,造成了非预期目的的卸载,有的资料就使用rpm -e --nodeps mysql-libs来避免卸载其他依赖mysql-libs的软件包,但是也并非完全正确的做法,Mysql官方提供的Mysql-shared-compat正是替代mysql-libs的rpm包,应先安装此包,再单独卸载mysql-libs,官方说明如下:

f3b003a7cf32a4cdf9cb2a89a1a2817f.png

解压MySQL-5.6.38-1.el6.x86_64.rpm-bundle.tar后,可以看到包含了多个rpm包文件

07036aad7144c4bf1fc42f13a67b9daf.png

网上不少资料都选择了安装Mysql-server、Mysql-client和Mysql-devel三个包,但实际上Mysql-devel的作用是如果需要编译其他mysql客户端例如perl mysql模块或者打算编译C API应用程序,实际上大多数情况下标准安装并不需要安装Mysql-devel,只需要按照Mysql-server和Mysql-client就行,本文就是这样安装。官网的介绍如下:

7dbc5d5b73127fe3cc0d923926c4b9b1.png

d7e8cc8b5a2664defc421a5b9af8939f.png


三、安装过程

1、首先安装一下Mysql-shared-compat,再单独卸载mysql-libs。

16039d52549b128ae129974674943802.png

2、安装mysql-server,根据提示安装完成后的随机密码在/root/.mysql_secret,并且可以运行安全配置向导/usr/bin/mysql_secure_installation,还有配置文件在/usr/my.cnf(按习惯一般拷贝到/etc/my.cnf)

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
[root@node01
mysqlrpm] # rpm -ivh MySQL-server-5.6.38-1.el6.x86_64.rpm
warning:
MySQL-server-5.6.38-1.el6.x86_64.rpm: Header V3 DSA /SHA1  Signature, key ID
5072e1f5: NOKEY
Preparing...               
########################################### [100%]
    1:MySQL-server          
########################################### [100%]
warning: user mysql
does not exist - using root
warning: group mysql
does not exist - using root
warning: user mysql
does not exist - using root
warning: group mysql
does not exist - using root
2017-10-28 20:57:24
0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use
--explicit_defaults_for_timestamp server option (see documentation  for  more
details).
2017-10-28 20:57:24
0 [Note] Ignoring --secure- file -priv value as server is running with --bootstrap.
2017-10-28 20:57:24
0 [Note]  /usr/sbin/mysqld  (mysqld 5.6.38) starting as process 8869 ...
2017-10-28 20:57:24
8869 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-10-28 20:57:24
8869 [Note] InnoDB: The InnoDB memory heap is disabled
2017-10-28 20:57:24
8869 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-10-28 20:57:24
8869 [Note] InnoDB: Memory barrier is not used
2017-10-28 20:57:24
8869 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-10-28 20:57:24
8869 [Note] InnoDB: Using Linux native AIO
2017-10-28 20:57:24
8869 [Note] InnoDB: Using CPU crc32 instructions
2017-10-28 20:57:24
8869 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-10-28 20:57:24
8869 [Note] InnoDB: Completed initialization of buffer pool
2017-10-28 20:57:24
8869 [Note] InnoDB: The first specified data  file  . /ibdata1  did not exist: a
new database to be created!
2017-10-28 20:57:24
8869 [Note] InnoDB: Setting  file  . /ibdata1  size to 12 MB
2017-10-28 20:57:24
8869 [Note] InnoDB: Database physically writes the  file  full: wait...
2017-10-28 20:57:25
8869 [Note] InnoDB: Setting log  file  . /ib_logfile101  size to 48 MB
2017-10-28 20:57:26
8869 [Note] InnoDB: Setting log  file  . /ib_logfile1  size to 48 MB
2017-10-28 20:57:27
8869 [Note] InnoDB: Renaming log  file  . /ib_logfile101  to . /ib_logfile0
2017-10-28 20:57:27
8869 [Warning] InnoDB: New log files created, LSN=45781
2017-10-28 20:57:27
8869 [Note] InnoDB: Doublewrite buffer not found: creating new
2017-10-28 20:57:27
8869 [Note] InnoDB: Doublewrite buffer created
2017-10-28 20:57:27
8869 [Note] InnoDB: 128 rollback segment(s) are active.
2017-10-28 20:57:27
8869 [Warning] InnoDB: Creating foreign key constraint system tables.
2017-10-28 20:57:27
8869 [Note] InnoDB: Foreign key constraint system tables created
2017-10-28 20:57:27
8869 [Note] InnoDB: Creating tablespace and datafile system tables.
2017-10-28 20:57:27
8869 [Note] InnoDB: Tablespace and datafile system tables created.
2017-10-28 20:57:27
8869 [Note] InnoDB: Waiting  for  purge to start
2017-10-28 20:57:27
8869 [Note] InnoDB: 5.6.38 started; log sequence number 0
A random root password has been  set . You will  find  it  in  '/root/.mysql_secret' .
2017-10-28 20:57:28
8869 [Note] Binlog end
2017-10-28 20:57:28
8869 [Note] InnoDB: FTS optimize thread exiting.
2017-10-28 20:57:28
8869 [Note] InnoDB: Starting  shutdown ...
2017-10-28 20:57:29
8869 [Note] InnoDB: Shutdown completed; log sequence number 1625977
2017-10-28 20:57:29
0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use
--explicit_defaults_for_timestamp server option (see documentation  for  more
details).
2017-10-28 20:57:29
0 [Note] Ignoring --secure- file -priv value as server is running with
--bootstrap.
2017-10-28 20:57:29
0 [Note]  /usr/sbin/mysqld  (mysqld 5.6.38) starting as process 8891 ...
2017-10-28 20:57:29
8891 [Note] InnoDB: Using atomics to ref count buffer pool pages
2017-10-28 20:57:29
8891 [Note] InnoDB: The InnoDB memory heap is disabled
2017-10-28 20:57:29
8891 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2017-10-28 20:57:29
8891 [Note] InnoDB: Memory barrier is not used
2017-10-28 20:57:29
8891 [Note] InnoDB: Compressed tables use zlib 1.2.3
2017-10-28 20:57:29
8891 [Note] InnoDB: Using Linux native AIO
2017-10-28 20:57:29
8891 [Note] InnoDB: Using CPU crc32 instructions
2017-10-28 20:57:29
8891 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2017-10-28 20:57:29
8891 [Note] InnoDB: Completed initialization of buffer pool
2017-10-28 20:57:29
8891 [Note] InnoDB: Highest supported  file  format  is Barracuda.
2017-10-28 20:57:29
8891 [Note] InnoDB: 128 rollback segment(s) are active.
2017-10-28 20:57:29
8891 [Note] InnoDB: Waiting  for  purge to start
2017-10-28 20:57:29
8891 [Note] InnoDB: 5.6.38 started; log sequence number 1625977
2017-10-28 20:57:29
8891 [Note] Binlog end
2017-10-28 20:57:29
8891 [Note] InnoDB: FTS optimize thread exiting.
2017-10-28 20:57:29
8891 [Note] InnoDB: Starting  shutdown ...
2017-10-28 20:57:31
8891 [Note] InnoDB: Shutdown completed; log sequence number 1625987
 
A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !
You will  find  that password  in  '/root/.mysql_secret' .
  
You must change that password on your first connect,
no other statement but  'SET PASSWORD'  will be accepted.
See the manual  for  the semantics of the  'password expired'  flag.
  
Also, the account  for  the anonymous user has been removed.
  
In addition, you can run:    /usr/bin/mysql_secure_installation
  
which  will also give you the option of removing the  test  database.This is strongly
recommended  for  production servers.
  
See the manual  for  more  instructions.
  
Please report any problems at http: //bugs .mysql.com/
  
The latest information about MySQL is available on the web at http: //www .mysql.com
  
Support MySQL by buying support /licenses  at http: //shop .mysql.com
  
New default config  file  was created as  /usr/my .cnf and will be used by
default by the server when you start it.
You may edit this  file  to change server settings

3、安装Mysql-client

16e559dbea61ab087649fed37703d4cb.png

4、复制my.conf并启动服务

 [root@node01 mysqlrpm]# cp /usr/my.cnf /etc/my.cnf

689adb252f0b4a87256a47d7ea391e91.png

5、RPM包安装后的目录结构如下:

2c373c325cf40ea4d0448f0dcf87b58a.png



四、初始化配置Mysql并登录数据库

1、网上很多资料在RPM安装完Mysql 5.6后还执行了/usr/bin/mysql_install_db进行初始化安装但安全配置向导却没运行,实际上在Mysql 5.6.8开始,用RPM包全新安装时会调用/usr/bin/mysql_install_db并带上随机密码参数,因此并不需要再执行mysql_install_db,反而运行安全配置向导很有必要。官网说明如下:

58cee0d88844ef48c3735509206d2a96.png

2、运行安全配置向导,由于需要输入root密码,因此先查看一下随机生成的密码文件。

1
2
3
[root@node01 ~] # cat /root/.mysql_secret
# The random password set for the root user at Sat Oct 28 20:57:28 2017 (local time):
LyE_R5rVp7p1vLMe

  安全配置向导主要执行以下操作:

  a)是否为root用户设置密码
  b)是否删除匿名账号
  c)是否取消root用户远程登录
  d)是否删除test库和对test库的访问权限
  e)是否刷新授权表使修改生效

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
[root@node01 ~] # cat /root/.mysql_secret
# The random password set for the root user at Sat Oct 28 20:57:28 2017 (local time):
LyE_R5rVp7p1vLMe
 
[root@node01 ~] # /usr/bin/mysql_secure_installation
  
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL SERVERS IN PRODUCTION 
USE! PLEASE READ EACH STEP CAREFULLY!
  
In order to log into MySQL to secure it, we'll need the current password  for  the
root user.  If you 've just installed MySQL, andyou haven' set  the root password yet, the
password will be blank,so you should just press enter here.
  
Enter current password  for  root (enter  for  none):
OK, successfully
used password, moving on...
  
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
  
You already have a root password  set , so you can safely answer  'n' .
  
Change the root password? [Y /n ] y
New password:
Re-enter new
password:
Password updated
successfully!
Reloading privilege tables..
  ... Success!
  
  
By default, a MySQL installation has an anonymous user, allowing anyone to log into MySQL
without having to have a user account created  for  them.  This is intended only  for  testing, and to
make  the installation go a bit smoother.  You should remove them before moving into a
production environment.
  
Remove anonymous  users ? [Y /n ] y
  ... Success!
  
Normally, root should only be allowed to connect from  'localhost' .  This ensures that 
someone cannot guess at the root password from the network.
  
Disallow root login remotely? [Y /n ] n
  ... skipping.
  
By default, MySQL comes with a database named  'test'  that anyone can access.  
This is also intended only  for  testing, and should be removed before moving into a
production environment.
  
Remove  test  database and access to it? [Y /n ] n
  ... skipping.
  
Reloading the privilege tables will ensure that all changes made so far will take effect
immediately.
  
Reload privilege tables now? [Y /n ] y
  ... Success!
  
All  done !  If you've completed all of the above steps,your MySQL installation should
now be secure.
  
Thanks  for  using MySQL!
  
Cleaning up...


3、登录数据库,确认安装成功完成

18277f3d2e04c42af9a649978a6054f2.png


本文转自Mr大表哥jianlong1990 博客,原文链接: http://blog.51cto.com/jiangjianlong/1978721      如需转载请自行联系原作者



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
10天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
81 42
|
1月前
|
安全 关系型数据库 MySQL
CentOS7仅安装部署MySQL80客户端
通过上述步骤,你可以在CentOS 7上成功安装并配置MySQL 8.0客户端。这个过程确保你能够使用MySQL客户端工具连接和管理远程的MySQL数据库,而不需要在本地安装MySQL服务器。定期更新MySQL客户端可以确保你使用的是最新的功能和安全修复。
155 16
|
2月前
|
关系型数据库 MySQL 数据库
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
|
2月前
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
123 14
|
2月前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
128 24
|
1月前
|
关系型数据库 MySQL 应用服务中间件
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
120 7
|
2月前
|
安全 关系型数据库 MySQL
Windows Server 安装 MySQL 8.0 详细指南
安装 MySQL 需要谨慎,特别注意安全配置和权限管理。根据实际业务需求调整配置,确保数据库的性能和安全。
233 9
|
2月前
|
NoSQL 关系型数据库 MySQL
Linux安装jdk、mysql、redis
Linux安装jdk、mysql、redis
216 7
|
3月前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
127 4
|
3月前
|
运维 关系型数据库 MySQL
安装MySQL8数据库
本文介绍了MySQL的不同版本及其特点,并详细描述了如何通过Yum源安装MySQL 8.4社区版,包括配置Yum源、安装MySQL、启动服务、设置开机自启动、修改root用户密码以及设置远程登录等步骤。最后还提供了测试连接的方法。适用于初学者和运维人员。
282 0

推荐镜像

更多