zoukankan      html  css  js  c++  java
  • MySql主从同步问题解决

    先查看从服务器的状态

    1 mysql>SHOW SLAVE STATUS;

    如果发现以下两个字段

    1 Slave_IO_Running: No
    2 Slave_SQL_Running: NO

    其中有一个为No,则同步出错,需要恢复。出错信息可以参考Last_Error字段。

    一般情况下,在从服务器上执行

    1 mysql>stop slave;
    2 mysql>start slave;

    即可恢复。

    如果运行这个之后,依然不能恢复,则可尝试以下方法。

    先锁定表,在主服务器上执行

    1 mysql>FLUSH TABLES WITH READ LOCK;
    2 mysql>SHOW MASTER STATUS;

    第一句锁定表,第二句显示主服务器的状态,记下

    1 File:
    2 Position:

    这两个字段的值,再把需要同步的数据库的目录,在主服务器上操作,复制到从服务器

    1 scp -r db_1 db_2 root@192.168.1.200:/var/lib/mysql/

    这里,把db_1,db_2两个数据库目录,复制到从服务器的MySql数据目录下,复制后,注意权限问题。

    完成复制之后,在主服务器上操作,解锁表

    1 UNLOCK TABLES;

    在从服务器上操作

    1 STOP SLAVE;
    2 
    3 CHANGE MASTER TO
    4 MASTER_LOG_FILE='mysql-bin.000098',
    5 MASTER_LOG_POS=22926865;
    6 
    7 START SLAVE;
    8 
    9 SHOW SLAVE STATUS;

    这里,LOG_FILE与LOG_POS分别对应之前在主服务器上查询出来的File与Position字段。

    完成。

    其中的CHANGE MASTER TO语句,通常还有以下值,按需选择设置

    1 CHANGE MASTER TO
    2 MASTER_HOST='192.168.1.199', 
    3 MASTER_USER='repl', 
    4 MASTER_PASSWORD='repl', 
    5 MASTER_PORT=3306 
    6 MASTER_LOG_FILE='MYSQL-BIN.000098', 
    7 MASTER_LOG_POS=22926865, 
    8 MASTER_CONNECT_RETRY=30; 
  • 相关阅读:
    VMWare:vSphere6 企业版参考序列号
    nginx1.14的安装
    nginx 编译安装时的编译参数说明(不建议看)
    yum 私有仓库
    linux 修改时区
    FreeFileSync 文件同步软件(windows)
    ansible 碎记录
    vsftp配置
    centos中,tomcat项目创建文件的权限
    EXI6.0的安装(找不到网卡、找不到磁盘)
  • 原文地址:https://www.cnblogs.com/heiing/p/2688504.html
Copyright © 2011-2022 走看看