binlog_ignore_db陷阱之備庫無法同步
問題描述:
新上線的主備從庫(5.5 + statement),自從備庫建立並且change master指向主庫後,就無法接受主庫新產生的資料;
備庫執行show slave status,IO和SQL thread都是running並且exec_master_postion和主庫的show master status輸出一致;
手工在主庫新建一個庫,新建表並插入然後提交,備庫可以同步;
解決思路:
檢視主庫的binlog,發現該專案上線10天左右,總共只產生一個binlog且只有不到1M的大小;
檢視binlog內容,myslqbinlog binlog >> /tmp/binlog.txt,發現記錄內容少的可憐,只有剛剛手工執行的建庫建表sql被記錄下來,再往前就是10天前搭建slave時執行的測試sql;
檢視主庫的my.cnf,發現有binlog_ignore_db=mysql,information_schema, performance_schema;
發現問題,當使用binlog_ignore_db選項時,必須採用use db; sql;的書寫方式,而類似insert into schema.table的語句則不會被記錄到binlog;
我們手工測試的時候採用了use db;sql的方式,所以備庫可以同步此資訊,而應用大部分採用schema.table的方式,故備庫無法同步主庫資料,因為主庫根本沒有記錄進binlog;
解決方法:
去除主庫的binlog_ingore_db;重新搭建備庫;
制定sql規範,禁止採用schema.table語法;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15480802/viewspace-1720066/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle adg備庫歸檔滿了無法同步Oracle
- 主備域之間無法同步截圖及解決說明
- 物理備庫無法接受archivelogHive
- DG主備日誌缺失,資料無法同步修復
- Oracle備庫無法連線主庫的問題分析Oracle
- TSM單個資料庫無法備份故障一則資料庫
- Data Guard 主庫建立表空間,備庫MRP無法啟動
- 11g備庫無法開啟ADG的原因分析
- shutdown immediate物理備庫長時間無法關閉案列
- 用rman建立dataguard備用資料庫繼續(無法找到備份檔案)資料庫
- DM8配置非同步備庫非同步
- Mysql 資料庫主庫,備庫實時同步配置MySql資料庫
- 故障分析 | redis cluster 從庫無法自動恢復同步案例一則Redis
- steam雲狀態無法同步怎麼辦 steam雲狀態無法同步會有什麼影響
- 資料庫shutdown之後無法啟動的問題資料庫
- MySQL案例之——生產slave庫無法應用日誌MySql應用日誌
- dbca刪庫的陷阱
- 資料庫無法update資料庫
- 無法找到指令碼庫指令碼
- 堅果雲無法同步SVN資料夾
- GoldenGate無法同步壓縮表問題Go
- dataguard主備資料同步與時鐘無關
- NBU備份windows系統資料庫無法產生備份日誌情況解決Windows資料庫
- ORACLE DSG資料同步軟體程式導致資料庫無法正常關閉Oracle資料庫
- TSM無法備份故障解決(續)
- shutdown immediate 持久無法關閉資料庫之解決方案資料庫
- win10剪下板無法同步如何解決_win10剪下板無法跨平臺同步怎麼修復Win10
- db_file_name_convert設定出錯導致備庫無法recovery
- dg主庫建立檔案備庫未同步解決方法
- mysqld_multi 無法停庫MySql
- Mysq無法建立資料庫資料庫
- C#執行緒間同步無法關閉C#執行緒
- Data Guard無法同步報ORA-16047錯
- ORACLE DG之備庫角色Oracle
- ntpq無法查詢同步資訊,顯示The specified class was not found
- 個人中心釋出狀態無法同步到QQ
- dbca無法刪除資料庫資料庫
- IIS 之 無法找到該頁 解決辦法