阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 7.5下安装单实例MySQL 5.7

175次阅读
没有评论

共计 2760 个字符,预计需要花费 7 分钟才能阅读完成。

一、安装环境
1、Linux 操作系统版本:CentOS 7.5

2、MySQL 版本:5.7.22(社区版)

3、MySQL 安装包:mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

二、安装步骤
1、检查系统中是否安装了其他版本的 MySQL(root 用户)
首先检查系统中是否安装了其他版本的 MySQL,使用以下命令进行检查:

yum list installed | grep mysql

yum list installed | grep mariadb

MariaDB 数据库是 MySQL 数据库的一个分支,一般 CentOS 7 系统中会默认安装该数据库,将其删除:

yum remove mariadb-libs.x86_64

并且删除 /etc/ 目录下的 my.cnf 文件:

rm –r /etc/my.cnf

2、安装依赖包(root 用户)
在 Linux 环境下安装 MySQL 需要先安装 libaio 依赖包,如果没有安装该依赖包会导致数据目录初始化和服务启动失败。

先检查系统中是否已经安装了 libaio 依赖包:

yum list installed | grep libaio

如果没有安装该依赖包,则进行安装:

yum install libaio

对于 MySQL 5.7.19 及以上版本还需要安装 libnuma 依赖包,使用以下命令检查系统中是否已经安装该依赖包:

yum list installed | grep numactl

如没有安装,可使用以下命令进行安装:

yum install numactl

3、创建 mysql 用户组和 mysql 用户(root 用户)
初始化 MySQL 以及启动 MySQL 服务时需要指定用户,此处使用 mysql 用户(也可使用其他用户和组)。

先创建 mysql 用户组:

groupadd mysql

再创建 mysql 用户,并指定该用户的所属组为 mysql 用户组:

useradd -g mysql mysql

最后为 mysql 用户设置登录密码:

passwd mysql

4、解压缩 MySQL 安装包(mysql 用户)
将 MySQL 安装包拷贝至安装目录下(这里为 /app):

cp mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz /app/

解压缩:

tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

备注:

以上两个步骤执行成功的前提是 MySQL 安装包的属主为 mysql 用户,并且 mysql 用户对 /app/ 目录有操作权限。

可使用以下命令将 MySQL 安装的属主设置为 mysql 用户(root 用户操作):

chown mysql:mysql mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

使用以下命令对 /app/ 目录单独为 mysql 用户赋予操作权限(root 用户操作):

setfacl -m u:mysql:rwx /app/

5、重命名(mysql 用户)
将解压后的目录重命名为 mysql:

mv mysql-5.7.22-linux-glibc2.12-x86_64/ mysql

6、创建数据目录(mysql 用户)
MySQL 5.7 版本没有自带 data 目录,需要自行创建,进入 mysql 目录下创建 data 目录:

mkdir data

7、创建 my.cnf 配置文件(mysql 用户)
MySQL 从 5.7.18 版本开始不再自带 my.cnf,可自行创建该配置文件。在 mysql 目录下创建 my.cnf 文件:

touch my.cnf

编辑 my.cnf 文件:

vi my.cnf

在该文件中输入以下内容:

[mysqld]
basedir=/app/mysql/
datadir=/app/mysql/data/
port=3307
user=mysql
character-set-server=utf8
collation-server=utf8_general_ci

其中,basedir 表示 MySQL 根目录;datadir 表示数据存放目录;port 为端口号,MySQL 默认的端口号为 3306,为了安全起见,一般不使用默认端口号;user 指定启动 MySQL 服务的用户;character-set-server 表示使用的字符集;collation-server 表示该字符集使用的排序规则。

备注:

MySQL 初始化时默认的根目录为 /usr/local/mysql/,所以如果不在初始化时指定根目录和数据目录,则需要将 /app/mysql/ 链接到 /usr/local/mysql/ 下。进入 /usr/local/ 目录下:

cd /usr/local/

创建软链接映射到 /app/mysql/ 目录:

ln –s /app/mysql/ mysql

这里不采用这种方式,而是采用配置文件方式指定 MySQL 根目录和数据目录。

8、初始化 MySQL(mysql 用户)
进入到 bin 目录下:

cd /app/mysql/bin/

初始化 MySQL:

./mysqld –defaults-file=/app/mysql/my.cnf –initialize

此时,MySQL 会随机生成一个 root 用户的密码,需要将该密码记住:

CentOS 7.5 下安装单实例 MySQL 5.7

9、生成 ssl 连接密钥文件(mysql 用户)
使用以下命令生成加密连接的密钥文件:

./mysql_ssl_rsa_setup –defaults-file=/app/mysql/my.cnf

执行结果如下:

CentOS 7.5 下安装单实例 MySQL 5.7

10、启动 MySQL 服务(mysql 用户)
最后启动 MySQL 服务:

./mysqld_safe –defaults-file=/app/mysql/my.cnf &

三、修改 root 用户密码
登录 MySQL,密码为上文中随机生成的密码:

/app/mysql/bin/mysql -u root -p -P 3307

修改 root 用户的登录密码,改为“root123”:

set password for root@localhost = password(‘root123’);

MySQL 多实例安装 https://www.linuxidc.com/Linux/2018-07/153254.htm
CentOS7.4 上快速安装 MySQL5.6  https://www.linuxidc.com/Linux/2018-08/153390.htm
CentOS 7 源码编译安装 MySQL 8.0 https://www.linuxidc.com/Linux/2018-06/152859.htm
SUSE Linux 11 安装 MySQL5.7.22:二进制安装方式、单实例 https://www.linuxidc.com/Linux/2018-08/153351.htm
在 CentOS Linux 7.5 上安装 MySQL https://www.linuxidc.com/Linux/2018-05/152574.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计2760字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中