第一步 准备目录
[root@localhost /]# mkdir -p /data/330{7,8,9}/data
第二步 准备配置文件
[root@localhost /]#cat > /data/3307/my.cnf <<EOF
[mysqld]
basedir=/application/mysql
datadir=/data/3307/data
socket=/data/3307/mysql.sock
log_error=/data/3307/mysql.log
port=3307
server_id=7
log_bin=/data/3307/mysql-bin
EOF
[root@localhost /]#cat > /data/3308/my.cnf <<EOF
[mysqld]
basedir=/application/mysql
datadir=/data/3308/data
socket=/data/3308/mysql.sock
log_error=/data/3308/mysql.log
port=3308
server_id=8
log_bin=/data/3308/mysql-bin
EOF
[root@localhost /]#cat > /data/3309/my.cnf <<EOF
[mysqld]
basedir=/application/mysql
datadir=/data/3309/data
socket=/data/3309/mysql.sock
log_error=/data/3309/mysql.log
port=3309
server_id=9
log_bin=/data/3309/mysql-bin
EOF
第三步 初始化三套数据
[root@localhost /]# mv /etc/my.cnf /etc/my.cnf.bak
[root@localhost /]#mysqld --initialize-insecure --user=mysql --datadir=/data/3307/data --basedir=/application/mysql
[root@localhost /]#mysqld --initialize-insecure --user=mysql --datadir=/data/3308/data --basedir=/application/mysql
[root@localhost /]#mysqld --initialize-insecure --user=mysql --datadir=/data/3309/data --basedir=/application/mysql
第四步 systemd管理多实例
[root@localhost /]#cd /etc/systemd/system
[root@localhost system]#cp mysqld.service mysqld3307.service
[root@localhost system]#cp mysqld.service mysqld3308.service
[root@localhost system]#cp mysqld.service mysqld3309.service
分别改以下三个文件里的内容:
[root@localhost system]#vim mysqld3307.service
[root@localhost system]#vim mysqld3308.service
[root@localhost system]#vim mysqld3309.service
修改的选项为:
ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
ExecStart=/app/mysql/bin/mysqld --defaults-file=/data/3309/my.cnf
第五步 授权数据文件
[root@localhost /]# chown -R mysql.mysql /data/*
第六步 启动多实例
[root@localhost /]#netstat -lnp|grep 330
[root@localhost /]#mysql -S /data/3307/mysql.sock -e "select @@server_id"
[root@localhost /]#mysql -S /data/3308/mysql.sock -e "select @@server_id"
[root@localhost /]#mysql -S /data/3309/mysql.sock -e "select @@server_id"