【MySQL】之MySQL5.7版本数据库多实例安装部署

it2025-09-16  4

【MySQL】之MySQL5.7版本数据库多实例安装部署

目录

【MySQL】之MySQL5.7版本数据库多实例安装部署

项目需求:

1、多实例数据库环境规划

2、多实例数据库初始化

3、启动数据库

4、查看多实例数据库进程和监听端口

5、实例数据库关闭和启动


项目需求:

  深入学习研究MySQL数据库集群时,因环境原因,没有更多的物理服务器去搭建部署集群环境,可以选择使用多实例方式部署数据库,完成集群环境的部署,实现一台数据库可更好的玩转数据库集群。如MySQL的主从复制和集群环境。


1、多实例数据库环境规划

1.1、多实例端口、数据目录和配置文件。

数据库多实例规划表 物理服务器地址多实例端口数据目录配置文件172.21.209.1253306/data/mysql/3306/data  /data/mysql/conf/my.3306.cnf3307/data/mysql/3307/data  /data/mysql/conf/my.3307.cnf3308/data/mysql/3308/data  /data/mysql/conf/my.3308.cnf3309/data/mysql/3309/data  /data/mysql/conf/my.3309.cnf3310/data/mysql/3310/data  /data/mysql/conf/my.3310.cnf

注:本次创建5个多实例用户后续环境的集群搭建部署。

1.2、创建多实例数据目录

[root@mysql03 data]# mkdir -p /data/mysql/330{6..9} [root@mysql03 data]# mkdir -p /data/mysql/{3310,conf}

1.3、创建多实例配置文件

3306配置文件 cat > /data/mysql/conf/my.3306.cnf << EOF [mysqld] user=mysql basedir=/usr/local/mysql datadir=/data/mysql/3306/data socket=/data/mysql/3306/data/mysql.sock port=3306 [mysql] default-character-set=utf8 collation-server = utf8_unicode_ci init-connect='SET NAMES utf8' character-set-server = utf8 socket=/data/mysql/3306/data/mysql.sock [client] default-character-set=utf8 EOF 3307、3308、3309、3310实例配置文件,通过复制拷贝3306的配置文件并修改对应端口即可。 [root@mysql03 conf]# cp my.3306.cnf my.3307.cnf [root@mysql03 conf]# cp my.3306.cnf my.3308.cnf [root@mysql03 conf]# cp my.3306.cnf my.3309.cnf [root@mysql03 conf]# cp my.3306.cnf my.3310.cnf 修改对应端口 [root@mysql03 conf]# sed -i 's/3306/3307/g' my.3307.cnf [root@mysql03 conf]# sed -i 's/3306/3308/g' my.3308.cnf [root@mysql03 conf]# sed -i 's/3306/3309/g' my.3309.cnf [root@mysql03 conf]# sed -i 's/3306/3310/g' my.3310.cnf

2、多实例数据库初始化

数据初始化 [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3306/data [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3307/data [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3308/data [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3309/data [root@mysql03 conf]# mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/3310/data

3、启动数据库

根据配置文件,后台启动多实例数据库 [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root & [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root & [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root & [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root & [root@mysql03 conf]# mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root &

4、查看多实例数据库进程和监听端口

多实例目录 [root@mysql03 mysql]# pwd /data/mysql [root@mysql03 mysql]# ll total 24 drwxr-xr-x 3 mysql mysql 4096 Oct 21 15:45 3306 drwxr-xr-x 3 root root 4096 Oct 21 16:32 3307 drwxr-xr-x 3 root root 4096 Oct 21 16:38 3308 drwxr-xr-x 3 root root 4096 Oct 21 16:39 3309 drwxr-xr-x 3 root root 4096 Oct 22 10:23 3310 drwxr-xr-x 2 root root 4096 Oct 22 10:23 conf 检查进程 [root@mysql03 mysql]# ps -ef|grep mysql polkitd 12085 12068 0 Oct21 ? 00:00:42 mysqld mysql 12600 10814 0 Oct21 pts/2 00:00:34 mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root mysql 12900 11290 0 Oct21 pts/3 00:00:33 mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root mysql 12930 11290 0 Oct21 pts/3 00:00:33 mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root mysql 15358 11290 0 10:24 pts/3 00:00:02 mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root mysql 15412 11290 0 10:33 pts/3 00:00:01 mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root root 15556 15495 0 11:23 pts/4 00:00:00 grep --color=auto mysql 监听端口 [root@mysql03 mysql]# netstat -lntup|grep 33 tcp6 0 0 :::3307 :::* LISTEN 12600/mysqld tcp6 0 0 :::3308 :::* LISTEN 12900/mysqld tcp6 0 0 :::3309 :::* LISTEN 12930/mysqld tcp6 0 0 :::3310 :::* LISTEN 15358/mysqld tcp6 0 0 :::3306 :::* LISTEN 15412/mysqld

5、实例数据库关闭和启动

多实例关闭服务 [root@mysql03 mysql]# mysqladmin -uroot -p123456 -S /data/mysql/3306/data/mysql.sock shutdown [root@mysql03 mysql]# mysqladmin -uroot -p123456 -S /data/mysql/3307/data/mysql.sock shutdown [root@mysql03 mysql]# mysqladmin -uroot -p123456 -S /data/mysql/3308/data/mysql.sock shutdown [root@mysql03 mysql]# mysqladmin -uroot -p123456 -S /data/mysql/3309/data/mysql.sock shutdown [root@mysql03 mysql]# mysqladmin -uroot -p123456 -S /data/mysql/3310/data/mysql.sock shutdown 跳过权限表后台启动多实例 [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3306.cnf --user=root --skip-grant-tables & [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3307.cnf --user=root --skip-grant-tables & [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3308.cnf --user=root --skip-grant-tables & [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3309.cnf --user=root --skip-grant-tables & [root@mysql03 mysql]# mysqld --defaults-file=/data/mysql/conf/my.3310.cnf --user=root --skip-grant-tables &

至此,多实例数据库部署完成。

最新回复(0)