由于机房迁移ip地址变了,导致原来的主动无法同步,于是需要重新建立主从关系。
主 192.168.1.23 从 192.168.1.22创建授权用户(主)
创建用户,赋予权限用来给从库做主从同步。
1
2
|
<code class= "hljs sql" > GRANT REPLICATION SLAVE ON *.* TO 'slave' @ '192.168.1.22' IDENTIFIED BY 'slavepassword' ; flush privileges ;</code> |
查看主库当前的偏移量
1
2
3
4
5
6
7
8
|
<code class= "hljs sql" ><code class= "hljs markdown" >mysql> show master status G *************************** 1. row *************************** File: mysql-bin.000017 Position: 233602883 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: 1 row in set (0.00 sec)</code></code> |
从库操作
在从库mysql客户端中操作
1
2
3
4
5
|
<code class= "hljs sql" ><code class= "hljs markdown" ><code class= "hljs ocaml" >stop slave; change master to master_host= '192.168.1.23' ,master_user= 'slave' ,master_password= 'slavepassword' ,master_log_file= 'mysql-bin.000017' ,master_log_pos=233602883; ? start slave;</code></code></code> |
检查从库状态
1
|
<code class= "hljs sql" ><code class= "hljs markdown" ><code class= "hljs ocaml" ><code class= "hljs tex" >mysql>show slave status G;</code></code></code></code> |
小结
这样做虽然断开的主从复制又链接上了,但是由于从库复制开始的偏移量丢失了(应该在重新设置主动连接的时候,先观察下从库断开时的偏移量,在断开的偏移量继续连接可能会减少一些数据不一致的情况,而不是直接从新的位置复制),所以有一段时间的数据可能丢失了,也就是数据不一致的情况,需要检查和修复这个问题。
以后会说这个问题解决的过程,一次主从数据不一致的问题解决过程
转自
https://www.2cto.com/database/201506/409002.html