
基于数据库多实例-配置MySQL双主
- 准备:两个电脑(桥接),各开两台虚拟机(装MySQL数据库)
VMware改为 桥接
配置网络为动态获取
[root@myx05 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
BOOTPROTO="DHCP"
NAME="eth0"
DEVICE="eth0"
#ONBOOT="yes"
#IPADDR=10.0.0.12
#NETMASK=255.255.255.0
#GATEWAY=10.0.0.1
DNS1=8.8.8.8
DNS2=114.114.114.114
重启网络
[root@myx05 ~]# systemctl restart network
[root@myx05 ~]# ifconfig
[root@myx05 ~]# mkdir -p /data/330{7,8}/data
[root@myx05 ~]# cat > /data/3307/my.cnf <<EOF
> [mysqld]
> basedir=/app/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@myx05 ~]# cat > /data/3308/my.cnf <<EOF
> [mysqld]
> basedir=/app/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@myx05 ~]# mv /etc/my.cnf /etc/my.cnf.bak
[root@myx05 ~]# mysqld --initialize-insecure --user=mysql --datadir=/data/3307/data --basedir=/app/mysql
[root@myx05 ~]# mysqld --initialize-insecure --user=mysql --datadir=/data/3308/data --basedir=/app/mysql
[root@myx05 ~]# cd /etc/systemd/system
[root@myx05 system]# \cp mysqld.service mysqld3307.service
[root@myx05 system]# \cp mysqld.service mysqld3308.service
[root@myx05 system]# sed -i "s#/etc/my.cnf#/data/3307/my.cnf#g" mysqld3307.service
[root@myx05 system]# sed -i "s#/etc/my.cnf#/data/3308/my.cnf#g" mysqld3308.service
[root@myx05 system]# grep 'ExecStart' mysqld330{7,8}.service
mysqld3307.service:ExecStart=/usr/local/src/mysql/bin/mysqld --defaults-file=/data/3307/my.cnf
mysqld3308.service:ExecStart=/usr/local/src/mysql/bin/mysqld --defaults-file=/data/3308/my.cnf
[root@myx05 system]# chown -R mysql.mysql /data/*
[root@myx05 system]# systemctl daemon-reload
[root@myx05 system]# systemctl start mysqld3307.service
[root@myx05 system]# systemctl start mysqld3308.service
[root@myx05 system]# netstat -lnp|grep 330
tcp6 0 0 :::3306 :::* LISTEN 3163/mysqld
tcp6 0 0 :::3307 :::* LISTEN 3313/mysqld
tcp6 0 0 :::3308 :::* LISTEN 3347/mysqld
unix 2 [ ACC ] STREAM LISTENING 31102 3347/mysqld /data/3308/mysql.sock
unix 2 [ ACC ] STREAM LISTENING 31850 3313/mysqld /data/3307/mysql.sock
启动mysql3307和3308
mysql -S /data/3307/mysql.sock
mysql -S /data/3308/mysql.sock
修改配置文件:
[root@myx05 3308]# cat /data/3307/my.cnf
[mysqld]
server-id=7
log-bin
basedir=/app/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
[root@myx05 3308]# cat /data/3308/my.cnf
[mysqld]
server-id=8
log-bin
basedir=/app/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
重启:
[root@myx05 ~]# systemctl restart mysqld3307
[root@myx05 ~]# systemctl restart mysqld3308
创建zy用户,并赋予复制权限。
mysql> create user zy@'%' identified by 'szz20021224';
mysql> grant REPLICATION SLAVE on *.* to zy@'%' identified by 'szz20021224';
3307
3308
3310
3312
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 梦缘羲
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果