涉及知识点

mysql 主从同步 ,参考: MySQL数据库设置主从同步

mysqlbin log查看, 参考:MySQL的binlog日志

解决slave报错, 参考:

 Backup stopped working !! Slave_SQL_Running: No

 mysql数据库binlog日志截断报错,导致mysql主从同步失败故障排查

slave库失败原因分析、解决,及根据binlog 修改position 手动同步

问题

客户反映报表缺少近期的数据。

分析解决

master 数据库提供服务,slave数据库作报表服务器,通过mysqlbin log做主从同步。

从报表数据来看,缺少了从10/28到现在(11/18)之前的数据,比对master、slave数据库主要表数据,发现:

10/28之后的slave库数据缺失,一致未同步。

  1. 查看slave mysql同步状态:

Mysql slave 同步错误解决

关注图中黄色字段:

Slave_IO_Running: Yes
Slave_SQL_Running: No --- 表示sql进程未工作,问题就处在这。

图中粉色背景,Last_Error: ....

'Duplicate entry '1169595' for key 'PRIMARY'' on query. Default database: ''. Query: 'insert into  user。。。

这个错误很简单,违反主键唯一约束。

2. mysql 错误日志 通过my.conf 确定出错误日志文件,vi 查看,根据日志151028搜索到以下:

Mysql slave 同步错误解决

从日志中,看到10/28 1:28:55 mysql 非正常关闭; 1:29 重启后,开始recovery。 1:29:16s 后I/O errror; 1:30:19s SQL error, slave SQL thread aborted(停止工作)。

mysql也给出了解决办法:

Fix the problem, and restart the slave SQL thread with "SLAVE START". We stopped at log 'mysql-bin.000274' position 504869752

重启,并告诉sql 执行的binlog 文件设置position, 重启slave. 错误仍存在,如下

mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000274',MASTER_LOG_POS=504873114;
ERROR 1198 (HY000): This operation cannot be performed with a running slave; run STOP SLAVE first
mysql> stop slave;
Query OK, 0 rows affected (0.00 sec)

mysql> CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000274',MASTER_LOG_POS=504873114;
Query OK, 0 rows affected (1.98 sec)

mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 172.17.128.15
                  Master_User: cns
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000281
          Read_Master_Log_Pos: 361947072
               Relay_Log_File: app3-relay-bin.000002
                Relay_Log_Pos: 253
        Relay_Master_Log_File: mysql-bin.000274
             Slave_IO_Running: Yes
            Slave_SQL_Running: No
View Code

相关文章:

  • 2021-11-02
  • 2021-05-29
  • 2021-10-31
  • 2022-12-23
  • 2021-04-19
  • 2022-02-25
  • 2022-01-10
  • 2021-11-02
猜你喜欢
  • 2021-10-07
  • 2021-07-11
  • 2021-07-31
  • 2021-11-07
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案