三、mysql5.7多实例安装

1.多实例配置方案:

  • datadir 目录分开
  • port 端口号分开
  • socket 文件分开
[mysqld_multi]
mysqld=mysqld_safe
log=/usr/local/mysql/mysqld_mulit.log

[mysqld3306]
port=3306
datadir=/data/3306
socket=/data/3306/mysql.sock

[mysqld3307]
port=3307
datadir=/data/3307
socket=/data/3307/mysql.sock

[mysqld3308]
port=3308
datadir=/data/3308
socket=/data/3308/mysql.sock

[mysqld3309]
port=3309
datadir=/data/3309
socket=/data/3309/mysql.sock

 

2.目录规划:

mkdir /data/{3306,3307,3308,3309} -p
chown -R mysql.mysql /data

3.mysql多次初始化

mysqld --initialize --user=mysql --datadir=/data/3306/
mysqld --initialize --user=mysql --datadir=/data/3307/
mysqld --initialize --user=mysql --datadir=/data/3308/
mysqld --initialize --user=mysql --datadir=/data/3309/

4.mysqld_multi管理mysql多实例

mysqld_mulit report查看配置的mysql多实例状态

[root@mysql01 mysql]# mysqld_multi report
Reporting MySQL servers
MySQL server from group: mysqld3306 is not running
MySQL server from group: mysqld3307 is not running
MySQL server from group: mysqld3308 is not running
MySQL server from group: mysqld3309 is not running

mysqld_multi start n 启动指定mysql

mysqld_mulit start 启动所有mysql

[root@mysql01 mysql]# ps -ef|grep mysql |grep -v 'root'
mysql      9025   8812  0 22:00 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/3307 --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=mysql01.err --pid-file=mysql01.pid --socket=/data/3307/mysql.sock --port=3307
mysql      9041   8806  0 22:00 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/3306 --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=mysql01.err --pid-file=mysql01.pid --socket=/data/3306/mysql.sock --port=3306
mysql      9229   9111  0 22:00 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/3308 --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=mysql01.err --pid-file=mysql01.pid --socket=/data/3308/mysql.sock --port=3308
mysql      9375   9272  0 22:00 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/3309 --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=mysql01.err --pid-file=mysql01.pid --socket=/data/3309/mysql.sock --port=3309
[root@mysql01 mysql]# 

 mysqld_multi stop停止mysql 需要在配置文件中配置mysql用户名和密码,或者指定用户名和密码;用户名和密码一样才能停止mysql

5.登陆mysql

1.指定socket登陆

mysql -S /data/3306/mysql.sock -p'123'

 2.指定端口登陆

mysql -h127.0.0.1 -P3307 -uroot -p'123'

6.停止mysql

mysqladmin shutdown -S /data/3306/mysql.sock -p'123'

 通过mysqld_multi stop [n]一次停止所有mysql实例或停止指定实例

1.所有实例用户名密码统一,写在配置文件当中

[mysqld_multi]
mysqld=mysqld_safe
log=/usr/local/mysql/mysqld_mulit.log
user=root
pass=123

运行命令:

[root@mysql01 mysql]# mysqld_multi stop
[root@mysql01 mysql]# ps -ef|grep mysql
root       9506   7499  0 22:15 pts/0    00:00:00 grep --color=auto mysql

 

posted @ 2020-06-01 22:03  天啊空  阅读(197)  评论(0编辑  收藏  举报