zoukankan      html  css  js  c++  java
  • 主从复制未在从服务器上添加read-only 导致从服务器数据和主服务器冲突

    如手误在从节点上建立个数据库了,主节点上没有这个数据库,是不允许发生这种事情的,
    如先在从节点上创建create database a1;,然后在主节点上创建create database a1;一模一样的库的时候
    查询服务器状态:show slave statusG
     1 show slave statusG
     2 *************************** 1. row ***************************
     3                Slave_IO_State: Waiting for master to send event
     4                   Master_Host: 192.168.1.7
     5                   Master_User: alex
     6                   Master_Port: 3306
     7                 Connect_Retry: 60
     8               Master_Log_File: mysql-bin.000008
     9           Read_Master_Log_Pos: 671
    10                Relay_Log_File: mariadb-relay-bin.000003
    11                 Relay_Log_Pos: 876
    12         Relay_Master_Log_File: mysql-bin.000008
    13              Slave_IO_Running: Yes
    14             Slave_SQL_Running: No
    15               Replicate_Do_DB: 
    16           Replicate_Ignore_DB: 
    17            Replicate_Do_Table: 
    18        Replicate_Ignore_Table: 
    19       Replicate_Wild_Do_Table: 
    20   Replicate_Wild_Ignore_Table: 
    21                    Last_Errno: 1007
    22                    Last_Error: Error 'Can't create database 'a1'; database exists' on query. Default database: 'a1'. Query: 'create database a1'
    23                  Skip_Counter: 0
    24           Exec_Master_Log_Pos: 592
    25               Relay_Log_Space: 1535
    26               Until_Condition: None
    27                Until_Log_File: 
    28                 Until_Log_Pos: 0
    29            Master_SSL_Allowed: No
    30            Master_SSL_CA_File: 
    31            Master_SSL_CA_Path: 
    32               Master_SSL_Cert: 
    33             Master_SSL_Cipher: 
    34                Master_SSL_Key: 
    35         Seconds_Behind_Master: NULL
    36 Master_SSL_Verify_Server_Cert: No
    37                 Last_IO_Errno: 0
    38                 Last_IO_Error: 
    39                Last_SQL_Errno: 1007
    40                Last_SQL_Error: Error 'Can't create database 'a1'; database exists' on query. Default database: 'a1'. Query: 'create database a1'
    41   Replicate_Ignore_Server_Ids: 
    42              Master_Server_Id: 1
    会在从服务器上报错
    而此时在主服务上在做如MariaDB [(none)]> create database f1;,在从服务上就开始不复制了,两边数据不成功同步了。
    如果只是这么简单的错误的话,可以通过drop database a1 ,关闭线程,stop slave ,然后重新启动线程start slave
    如果不知道是什么原因导致的,如是一条命令的冲突,可以直接把这条记录删掉,先忽悠掉这个数据
    sql_slave_skip_counter = N 从服务器忽略几个主服务器的复制事件,global变量
    先停止复制
    stop slave;
    忽略一个错误
    set global sql_slave_skip_counter = 1;

    启动线程

    start slave;
    临时跳过了这个问题,记录少的话,手工更改,记录多的话,在其他电脑上做从节点,重新来
    也可以忽略故障号:如这个1007
    show slave statusG
    *************************** 1. row ***************************
                   Slave_IO_State: Waiting for master to send event
                      Master_Host: 192.168.1.7
                      Master_User: alex
                      Master_Port: 3306
                    Connect_Retry: 60
                  Master_Log_File: mysql-bin.000008
              Read_Master_Log_Pos: 1221
                   Relay_Log_File: mariadb-relay-bin.000003
                    Relay_Log_Pos: 876
            Relay_Master_Log_File: mysql-bin.000008
                 Slave_IO_Running: Yes
                Slave_SQL_Running: No
                  Replicate_Do_DB: 
              Replicate_Ignore_DB: 
               Replicate_Do_Table: 
           Replicate_Ignore_Table: 
          Replicate_Wild_Do_Table: 
      Replicate_Wild_Ignore_Table: 
                       Last_Errno: 1007
                       Last_Error: Error 'Can't create database 'a1'; database exists' on query. Default database: 'a1'. Query: 'create database a1'

    修改配置文件

    vim /etc/my.cnf
    slave-skip-errors=1007
    ----------多个可以用逗号隔开
    slave-skip-errors=1007,1062

    systemctl restart mariadb 重启服务器,重启服务器也会重启线程,除了第一次不会自动重启线程

  • 相关阅读:
    周六,晴转雨
    时间概念
    2014-7-24-早
    2014-7-22
    [SPM_LAB]持续集成实验
    [软件测试_LAB2]使用Selenium进行自动化测试
    [软件测试_hw3]路径覆盖测试
    [软件测试_LAB1]安装junit和hamcrest及其使用
    [软件测试_hw2]Failure&Error
    [SPM_hw1]记一次项目经历
  • 原文地址:https://www.cnblogs.com/alexlv/p/14293725.html
Copyright © 2011-2022 走看看