在MySQL的主从复制过程中,出现了1146错误。提示的错误原因是:在默认的数据中找不到指定的表。
show slave status\G;现实的同步状态。
Slave_IO_Running: YES
Slave_SQL_Running: No
Last_Errno: 1146
Last_Error: Error 'Table 'coop.Coop_Data' doesn't exist' on query. Default database: 'gcore'. Query: 'update coop.Coop_Data set State='2',NameLevel='2',CheckedTime=now(),Memo='' where DAID='18601''
Skip_Counter: 0
Last_SQL_Errno: 1146
Last_SQL_Error: Error 'Table 'coop.Coop_Data' doesn't exist' on query. Default database: 'gcore'. Query: 'update coop.Coop_Data set State='2',NameLevel='2',CheckedTime=now(),Memo='' where DAID='18601''
原因是:
先使用的use db_name1,然后执行了 update db_name2.table set这种sql语句。
解决方法:
在从服务器上设置忽略该错,在my.cnf文件中添加“slave-skip-errors = 1146”,
如果少量的这种错误,直接在mysql client里面设置“set global sql_slave_skip_counter=1”;