MYSQL数据库主从双向同步
说明mySQL数据库主从同步可实现读写分离,并且在网上找了一些资源,感觉不是那么简明扼要,所以操作之后以我的感受整理成一个流程文章,只要按照操作一步一步操作即可。环境两个服务器都是使用mysql 5.7,使用宝塔修改数据库配置即可,然后登录终端操作数据库主从配置数据库主从配置 1. 服务器1:152.136.148.205 2服务器2:121.5.203.77 3配置服务器1:[mysqld] 下
说明
mySQL数据库主从同步可实现读写分离,并且在网上找了一些资源,感觉不是那么简明扼要,所以操作之后以我的感受整理成一个流程文章,只要按照操作一步一步操作即可。
环境
两个服务器都是使用mysql 5.7,使用宝塔修改数据库配置即可,然后登录终端操作
数据库主从配置
数据库主从配置 1. 服务器1:152.136.148.205 2
服务器2:121.5.203.77 3
配置服务器1:
[mysqld] 下方增加以下内容,其中:server-id保持唯一性;binlog-do-db和replicate-do-db为主从数据库名称,内容如下:
[mysqld]
log-bin=mysql-bin
binlog_format=mixed
server-id = 89
binlog-do-db = zhu
replicate-do-db = zhu
log-slave-updates
4.配置服务器2:
[mysqld] 下方增加以下内容,其中:server-id保持唯一性;binlog-do-db和replicate-do-db为主从数据库名称,内容如下:
[mysqld]
log-bin=mysql-bin
binlog_format=mixed
server-id = 90 //两个服务器必须不同且保持唯一
binlog-do-db = zhu
replicate-do-db = zhu
log-slave-updates
从终端进入mysql的root账号:
mysql -uroot -p
输入root密码
mysql>
5.打开服务器1:152.136.148.205 的终端面板(121.5.203.77为服务器2的IP):
//为master创建复制用户并赋予权限
mysql>grant replication slave on *.* to 'slave_account'@'121.5.203.77' identified by '123456';
//赋予权限
mysql>FLUSH PRIVILEGES;
6.打开服务器2:121.5.203.77 的终端面板(152.136.148.205为服务器1的IP):
//为master创建复制用户并赋予权限
mysql>grant replication slave on *.* to 'slave_account'@'152.136.148.205' identified by '123456';
//赋予权限
mysql>FLUSH PRIVILEGES;
7.在服务器1:152.136.148.205(主):运行show master status;
mysql> show master status;
在服务器2:121.5.203.77(从)运行:
mysql>change master to master_host='152.136.148.205',master_user='slave_account',master_password='123456',master_log_file='mysql-bin.000019',master_log_pos=154;
其中mysql-bin.000019为上图的参数1;154为上图的参数2;
然后运行以下代码:
//开启
mysql>start slave;
//查看状态
mysql>show slave status\G;
这样主从关系就绑定完成,在主服务器修改数据库,从服务器就跟随修改 8.双向绑定,就是把操作在从服务器上重做一遍
继续操作双向同步
在服务器2:121.5.203.77(主):运行show master status;
mysql> show master status;
在服务器1:152.136.148.205(从)运行:
change master to master_host='121.5.203.77',master_user='slave_account',master_password='123456',master_log_file='mysql-bin.000013',master_log_pos=4459;
其中mysql-bin.000013为上图的参数1;4459为上图的参数2;
然后运行以下代码:
//开启
start slave;
//查看状态
show slave status\G;
这样就双向绑定了已经,需要注意两个服务器的数据库的名称需要保持一致
更多推荐
所有评论(0)