本文实践的是多进程的方式做MYSQL单机多实例,一个实例一个进程,各实例有自己的配置文件,总结起来有以下几点:
端口port分开
配置文件分开
socket分开
日志分开
多serverid
都可以使用mysql用户
1.源代码编译安装&配置MYSQL环境变量(略)
2.配置多实例
MYSQL版本:5.7.28
2.1.创建多个数据目录
mkdir /data/{3307,3306,3308} -p
2.2.准备多个配置文件
root@lzr-K401LB:/etc/systemd/system# cat /data/3306/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3306/data
port=3306socket=/data/3306/mysql.sock
log-error=/data/3306/data/mysql.err
log-bin=/data/3306/data/mysql-bin
server_id=6explicit_defaults_for_timestamp=true#skip-grant-tables
root@lzr-K401LB:/etc/systemd/system#
3306
root@lzr-K401LB:/etc/systemd/system# cat /data/3307/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3307/data
port=3307socket=/data/3307/mysql.sock
log-error=/data/3307/data/mysql.err
log-bin=/data/3307/data/mysql-bin
server_id=7explicit_defaults_for_timestamp=true#skip-grant-tables
root@lzr-K401LB:/etc/systemd/system#
3307
root@lzr-K401LB:/etc/systemd/system# cat /data/3308/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/data/3308/data
port=3308socket=/data/3308/mysql.sock
log-error=/data/3308/data/mysql.err
log-bin=/data/3308/data/mysql-bin
server_id=8explicit_defaults_for_timestamp=true#skip-grant-tables
root@lzr-K401LB:/etc/systemd/system#
3308
2.3 初始化多套数据目录
cd /usr/mysql/bin
./mysql_install_db --defaults-file=/data/330