centos7 安装 mysql8.0.16 多实例
参考链接
- https://blog.csdn.net/ciqingloveless/article/details/82253710
- https://blog.csdn.net/u013246891/article/details/81747639
- https://blog.csdn.net/u013246891/article/details/81777526
- https://blog.csdn.net/vkingnew/article/details/82765213
- https://blog.csdn.net/ycdyx/article/details/72803947
说明
在同一台服务器上安装多实例的mysql,常规做法是生成多个实例的数据文件,然后配置多个my.cnf,通过指定不同的my.cnf逐个启动,具体可以参考mysql单实例的安装方法。
但是这种做法,随着端口号的增加,管理起来会很繁琐,mysqld_multi正好可以满足我们的需要。
生成实例的数据文件
略。请参考单实例的文章。
创建多实例的配置文件(名字可自定义)
编辑配置文件: vi /app/mysqldata/my_multi.cnf,大致内容如下:
1[mysqld_multi]
2mysqld = /usr/local/mysql/bin/mysqld_safe
3mysqladmin = /usr/local/mysql/bin/mysqladmin
4user = multi_admin
5password = my_password
6
7[mysqld3306]
8user=mysql
9server-id=3306
10port=3306
11mysqlx_port=33060
12basedir=/usr/local/mysql
13datadir=/app/mysqldata/3306/data
14plugin-dir=/usr/local/mysql/lib/plugin
15tmpdir=/app/mysqldata/3306/tmp
16socket=/app/mysqldata/3306/tmp/mysql.sock
17mysqlx_socket=/app/mysqldata/3306/tmp/mysqlx.sock
18pid-file=/app/mysqldata/3306/tmp/mysql.pid
19log-error=/app/mysqldata/3306/tmp/mysql-error.log
20character-set-server=utf8mb4
21collation-server=utf8mb4_unicode_ci
22
23[mysqld3307]
24user=mysql
25server-id=3307
26port=3307
27mysqlx_port=33070
28basedir=/usr/local/mysql
29datadir=/app/mysqldata/3307/data
30plugin-dir=/usr/local/mysql/lib/plugin
31tmpdir=/app/mysqldata/3307/tmp
32socket=/app/mysqldata/3307/tmp/mysql.sock
33mysqlx_socket=/app/mysqldata/3307/tmp/mysqlx.sock
34pid-file=/app/mysqldata/3307/tmp/mysql.pid
35log-error=/app/mysqldata/3307/tmp/mysql-error.log
36character-set-server=utf8mb4
37collation-server=utf8mb4_unicode_ci
启动多个mysql实例
1mysqld_multi --defaults-file=/app/mysqldata/my_multi.cnf start
以上命令会启动配置文件中所有的mysql实例。
如果只想启动3306端口的实例,则:
1mysqld_multi --defaults-file=/app/mysqldata/my_multi.cnf start 3306
停止多个mysql实例
1mysqld_multi --defaults-file=/app/mysqldata/my_multi.cnf --user=root --password=root stop
以上命令会启动配置文件中所有的mysql实例,但有一个前提,就是所有的数据库实例的用户名一致,并且密码完全一致。
如果有不一致的,需要指定具体的实例,如:
1mysqld_multi --defaults-file=/app/mysqldata/my_multi.cnf --user=root --password=root stop 3306
评论