国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL二進制日志格式對復制的影響

2024-07-24 13:00:04
字體:
來源:轉載
供稿:網友

MySQL二進制日志格式對復制的影響

復制的分類

基于SQL語句的復制 - SBR

主庫二進制日志格式使用STATEMENT

在MySQL 5.1之前僅存在SBR模式, 又稱之為邏輯復制.

主庫記錄CUD操作的SQL語句, 從庫會讀取并重放.

優點

生成的日志量少, 節約網絡傳輸IO

當主從的列的順序不一致時, SBR依然可以正常工作.

如對大表進行結構修改時, 可以先修改從庫, 然后再進行主從切換.

缺點

對不確定性函數無法保證主從數據的一致對于PRocedure, trigger, function有可能在主從上表現不一致(SBR BUG)主庫上要鎖定多少行, 從庫上也需要所以多少行, 所以相對于ROW復制時從庫上需要更多的行鎖

基于行的復制 - RBR

主庫二進制日志格式使用ROW

優點

對不確定性函數友好, 如UUID()

減少從庫上數據庫鎖的使用

insert into t_order_cnt(timestr, total, amount)select date(order_date), count(1), sum(amout)from t_order group by date(order_date);

上面的SQL在主庫執行時會對t_order進行鎖表操作, 對于STATEMENT的復制從庫上也會對同樣的表進行鎖定, 但是基于ROW的復制僅需增加t_order對應的行的數據即可.

缺點

要求主從數據庫的表的結構一致, 否則可能會中斷復制無法在從庫上激活trigger

Github

基于Docker Compose構建的MySQL MHA集群


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阜城县| 西安市| 新丰县| 永州市| 灌云县| 平乡县| 丰城市| 日土县| 宣化县| 齐齐哈尔市| 松桃| 缙云县| 米泉市| 万荣县| 伽师县| 台江县| 武穴市| 峡江县| 辽宁省| 宝清县| 河北区| 云浮市| 桦甸市| 新津县| 南靖县| 普兰县| 合阳县| 绥棱县| 枞阳县| 龙泉市| 合水县| 宝清县| 封开县| 读书| 石泉县| 安陆市| 辛集市| 萝北县| 宁都县| 从化市| 桓台县|