1.1环境准备:
两台虚拟机db01和db02
每台机器创建4个MysqL实例:3307 ,3308 ,3309 ,3310
1.2删除db01和db02的历史环境,使用一个全新的环境:
[root@db01 ~]# pkill MysqLd [root@db01 ~]# rm -rf /data/330* [root@db01 ~]# mv /etc/my.cnf /etc/my.cnf.bak
[root@db01 ~]# ls -l /etc/my.cnf
[root@db02 ~]# pkill MysqLd [root@db02 ~]# rm -rf /data/330* [root@db02 ~]# mv /etc/my.cnf /etc/my.cnf.bak
[root@db02 ~]# ls -l /etc/my.cnf
ls: 无法访问/etc/my.cnf: 没有那个文件或目录
[root@db02 ~]# ls -l /etc/my.cnf.bak
-rw-r--r--. 1 root root 534 2月 27 23:41 /etc/my.cnf.bak
1.3分别再db01和db02中创建相关目录初始化MysqL实例:
[root@db01 ~]# mkdir -p /data/33{07..10}/data
[root@db01 ~]# MysqLd --initialize-insecure --user=MysqL --datadir=/data/3307/data --basedir=/application/MysqL [root@db01 ~]# MysqLd --initialize-insecure --user=MysqL --datadir=/data/3308/data --basedir=/application/MysqL [root@db01 ~]# MysqLd --initialize-insecure --user=MysqL --datadir=/data/3309/data --basedir=/application/MysqL [root@db01 ~]# MysqLd --initialize-insecure --user=MysqL --datadir=/data/3310/data --basedir=/application/MysqL
1.4分别在db01和db02准备配置文件:
cat >/data/3307/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3307/data socket=/data/3307/MysqL.sock port=3307 log_error=/data/3307/MysqL.log log_bin=/data/3307/MysqL-bin binlog_format=row skip-name-resolve server_id=7 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3308/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3308/data port=3308 socket=/data/3308/MysqL.sock log_error=/data/3308/MysqL.log log_bin=/data/3308/MysqL-bin binlog_format=row skip-name-resolve server_id=8 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3309/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3309/data socket=/data/3309/MysqL.sock port=3309 log_error=/data/3309/MysqL.log log_bin=/data/3309/MysqL-bin binlog_format=row skip-name-resolve server_id=9 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3310/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3310/data socket=/data/3310/MysqL.sock port=3310 log_error=/data/3310/MysqL.log log_bin=/data/3310/MysqL-bin binlog_format=row skip-name-resolve server_id=10 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF
cat >/data/3307/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3307/data socket=/data/3307/MysqL.sock port=3307 log_error=/data/3307/MysqL.log log_bin=/data/3307/MysqL-bin binlog_format=row skip-name-resolve server_id=17 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3308/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3308/data port=3308 socket=/data/3308/MysqL.sock log_error=/data/3308/MysqL.log log_bin=/data/3308/MysqL-bin binlog_format=row skip-name-resolve server_id=18 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3309/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3309/data socket=/data/3309/MysqL.sock port=3309 log_error=/data/3309/MysqL.log log_bin=/data/3309/MysqL-bin binlog_format=row skip-name-resolve server_id=19 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF cat >/data/3310/my.cnf<<EOF [MysqLd] basedir=/application/MysqL datadir=/data/3310/data socket=/data/3310/MysqL.sock port=3310 log_error=/data/3310/MysqL.log log_bin=/data/3310/MysqL-bin binlog_format=row skip-name-resolve server_id=20 gtid-mode=on enforce-gtid-consistency=true log-slave-updates=1 EOF
1.5分别在db01和db02准备启动脚本(脚本一样):
cat > /etc/systemd/system/MysqLd3307.service <<EOF
[Unit]
Description=MysqL Server
Documentation=man:MysqLd(8)
Documentation=http://dev.MysqL.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=MysqL
Group=MysqL
ExecStart=/application/MysqL/bin/MysqLd --defaults-file=/data/3307/my.cnf
LimitNOFILE = 5000
EOF
cat > /etc/systemd/system/MysqLd3308.service <<EOF
[Unit]
Description=MysqL Server
Documentation=man:MysqLd(8)
Documentation=http://dev.MysqL.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=MysqL
Group=MysqL
ExecStart=/application/MysqL/bin/MysqLd --defaults-file=/data/3308/my.cnf
LimitNOFILE = 5000
EOF cat > /etc/systemd/system/MysqLd3309.service <<EOF
[Unit]
Description=MysqL Server
Documentation=man:MysqLd(8)
Documentation=http://dev.MysqL.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=MysqL
Group=MysqL
ExecStart=/application/MysqL/bin/MysqLd --defaults-file=/data/3309/my.cnf
LimitNOFILE = 5000
EOF cat > /etc/systemd/system/MysqLd3310.service <<EOF
[Unit]
Description=MysqL Server
Documentation=man:MysqLd(8)
Documentation=http://dev.MysqL.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=MysqL
Group=MysqL
ExecStart=/application/MysqL/bin/MysqLd --defaults-file=/data/3310/my.cnf
LimitNOFILE = 5000
EOF
1.6分别给db01和db02的MysqL用户和用户组赋予权限并启动多实例:
[root@db01 system]# chown -R MysqL.MysqL /data/* [root@db01 system]# systemctl start MysqLd3307.service Warning: MysqLd3307.service changed on disk. Run 'systemctl daemon-reload' to reload units. [root@db01 system]# systemctl daemon-reload [root@db01 system]# systemctl start MysqLd3307.service [root@db01 system]# systemctl start MysqLd3308.service [root@db01 system]# systemctl start MysqLd3309.service
[root@db01 system]# systemctl start MysqLd3310.service
[root@db01 system]# netstat -lnp|grep 330
1.7分别验证db01和db02的登录:
[root@db01 system]# MysqL -S /data/3307/MysqL.sock -e "show variables like 'server_id'" +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 7 | +---------------+-------+ [root@db01 system]# MysqL -S /data/3308/MysqL.sock -e "show variables like 'server_id'" +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 8 | +---------------+-------+ [root@db01 system]# MysqL -S /data/3309/MysqL.sock -e "show variables like 'server_id'" +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 9 | +---------------+-------+ [root@db01 system]# MysqL -S /data/3310/MysqL.sock -e "show variables like 'server_id'" +---------------+-------+ | Variable_name | Value | +---------------+-------+ | server_id | 10 | +---------------+-------+ [root@db01 system]#
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。