婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MySQL binlog_ignore_db 參數的具體使用

MySQL binlog_ignore_db 參數的具體使用

熱門標簽:沃克斯電梯外呼線路圖 福州呼叫中心外呼系統哪家好 常州電銷外呼系統一般多少錢 400電話鄭州申請 云南語音外呼系統平臺 天智外呼系統 房產智能外呼系統品牌 地圖標注被騙三百怎么辦 北京人工外呼系統價錢

前言: 

經過前面文章學習,我們知道 binlog 會記錄數據庫所有執行的 DDL 和 DML 語句(除了數據查詢語句select、show等)。注意默認情況下會記錄所有庫的操作,那么如果我們有另類需求,比如說只讓某個庫記錄 binglog 或排除某個庫記錄 binlog ,是否支持此類需求呢?本篇文章我們一起來看下。

1. binlog_do_db 與 binlog_ignore_db

當數據庫實例開啟 binlog 時,我們執行 show master status 命令,會看到有 Binlog_Do_DB 與 Binlog_Ignore_DB 選項。

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000009 |   282838 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+

默認情況下,這兩個選項為空,那么這兩個參數有何作用?是否如同其字面意思一個只讓某個庫記錄 binglog 一個排除某個庫記錄 binlog 呢?筆者查閱官方文檔,簡單說明下這兩個參數的作用:

  • binlog_do_db:此參數表示只記錄指定數據庫的二進制日志,默認全部記錄。
  • binlog_ignore_db:此參數表示不記錄指定的數據庫的二進制日志。

這兩個參數為互斥關系,一般只選擇其一設置,只能在啟動命令行中或配置文件中加入。指定多個數據庫要分行寫入,舉例如下:

# 指定 db1 db2 記錄binlog
[mysqld]
binlog_do_db = db1
binlog_do_db = db2

# 不讓 db3 db4 記錄binlog
[mysqld]
binlog_ignore_db = db3
binlog_ignore_db = db4

此外,這二者參數具體作用與否還與 binlog 格式有關系,在某些情況下 binlog 格式設置為 STATEMENT 或 ROW 會有不同的效果。在實際應用中 binlog_ignore_db 用途更廣泛些,比如說某個庫的數據不太重要,為了減輕服務器寫入壓力,我們可能不讓該庫記錄 binlog 。網上也有文章說設置 binlog_ignore_db 會導致從庫同步錯誤,那么設置該參數到底有什么效果呢,下面我們來具體實驗下。

2. binlog_ignore_db 具體效果

首先說明下,我的測試數據庫實例是 5.7.23 社區版本,共有 testdb、logdb 兩個業務庫,我們設置 logdb 不記錄 binlog ,下面來具體實驗下:

# binlog 為 ROW 格式 

# 1.不使用 use db
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |      154 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
mysql> select database();
+------------+
| database() |
+------------+
| NULL       |
+------------+
1 row in set (0.00 sec)
mysql> CREATE TABLE testdb.`test_tb1` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.06 sec)

mysql> insert into testdb.test_tb1 values (1001,'sdfde');
Query OK, 1 row affected (0.01 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |      653 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE logdb.`log_tb1` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.05 sec)

mysql> insert into logdb.log_tb1 values (1001,'sdfde');
Query OK, 1 row affected (0.00 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |      883 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
mysql> insert into logdb.log_tb1 values (1002,'sdsdfde'); 
Query OK, 1 row affected (0.01 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |      883 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+

mysql> alter table logdb.log_tb1 add column c3 varchar(20);   
Query OK, 0 rows affected (0.12 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1070 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
# 結論:其他庫記錄正常 logdb庫會記錄DDL 不記錄DML

# 2.使用 use testdb跨庫
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select database();
+------------+
| database() |
+------------+
| testdb     |
+------------+
1 row in set (0.00 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1070 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE `test_tb2` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.05 sec)

mysql> insert into test_tb2 values (1001,'sdfde');
Query OK, 1 row affected (0.04 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1574 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE logdb.`log_tb2` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.05 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1810 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> insert into logdb.log_tb2 values (1001,'sdfde');
Query OK, 1 row affected (0.01 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1810 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
# 結論:同樣logdb庫會記錄DDL 不記錄DML 

# 3.使用 use logdb跨庫
mysql> use logdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select database();
+------------+
| database() |
+------------+
| logdb      |
+------------+
1 row in set (0.00 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1810 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE testdb.`test_tb3` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.23 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     1810 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> insert into testdb.test_tb3 values (1001,'sdfde');
Query OK, 1 row affected (0.02 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2081 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE `log_tb3` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.05 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2081 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> insert into log_tb3 values (1001,'sdfde');
Query OK, 1 row affected (0.02 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2081 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
# 結論:logdb都不記錄 同時不記錄其他庫的DDL

# 4.每次操作都進入此庫 不跨庫
mysql> use testdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2081 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> CREATE TABLE `test_tb4` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.05 sec)

mysql> insert into test_tb4 values (1001,'sdfde');
Query OK, 1 row affected (0.01 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2585 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> use logdb;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> CREATE TABLE `log_tb4` ( id int , name varchar(30) ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.04 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2585 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

mysql> insert into log_tb4 values (1001,'sdfde');
Query OK, 1 row affected (0.01 sec)

mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| binlog.000011 |     2585 |              | logdb            |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
# 結論:其他庫全部記錄 logdb全不記錄

同樣的,將 binlog 格式設置為 STATEMENT ,再次進行測試,這里不再贅述測試過程,總結下 STATEMENT 格式下的實驗結果:

  • 未選擇任何數據庫進行操作,所有都會記錄。
  • 選擇testdb,對testdb和logdb分別進行操作,所有庫都會記錄。
  • 選擇logdb,對testdb和logdb分別進行操作,所有庫都不會記錄。
  • 選擇某個庫并只對當前庫進行操作,則記錄正常,不會記錄logdb。

看了這么多實驗數據,你是否眼花繚亂了呢,下面我們以思維導圖的形式總結如下:

這么看來 binlog_ignore_db 參數的效果確實和諸多因素有關,特別是有從庫的情況下,主庫要特別小心使用此參數,很容易產生主從同步錯誤。不過,按照嚴格標準只對當前數據庫進行操作,則不會產生問題。這也告訴我們要嚴格按照標準來,只賦予業務賬號某個單庫的權限,也能避免各種問題發生。

總結: 

不清楚各位讀者是否對這種介紹參數的文章感興趣呢?可能這些是數據庫運維人員比較關注的吧。本篇文章主要介紹關于 binlog 的 binlog_ignore_db 參數的具體作用,可能本篇文章實驗環境還不夠考慮周全,有興趣的同學可以參考下官方文檔,有助于對該參數有更深入的了解。

以上就是MySQL binlog參數的使用的詳細內容,更多關于MySQL binlog參數的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • MySQL系列之redo log、undo log和binlog詳解
  • MySQL中使用binlog時格式該如何選擇
  • 詳解監聽MySQL的binlog日志工具分析:Canal
  • MySQL8.0中binlog的深入講解
  • MYSQL中binlog優化的一些思考匯總
  • Mysql數據庫清理binlog日志命令詳解
  • Mysql數據庫監聽binlog的開啟步驟
  • 如何區分MySQL的innodb_flush_log_at_trx_commit和sync_binlog

標簽:徐州 黔東 移動 沈陽 鹽城 拉薩 珠海 沈陽

巨人網絡通訊聲明:本文標題《MySQL binlog_ignore_db 參數的具體使用》,本文關鍵詞  MySQL,binlog,ignore,參數,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MySQL binlog_ignore_db 參數的具體使用》相關的同類信息!
  • 本頁收集關于MySQL binlog_ignore_db 參數的具體使用的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国内一区二区视频| 欧美一级黄色录像| 亚洲美女在线国产| 亚洲欧美日韩小说| 91麻豆精品国产91| 91国偷自产一区二区开放时间 | 亚洲第一精品在线| 欧美精品在线观看播放| 在线观看国产91| 欧美精品在线一区二区| 日本色综合中文字幕| 日韩欧美高清dvd碟片| 洋洋成人永久网站入口| 91电影在线观看| 欧美亚洲国产一区二区三区va| 日韩一区二区三区免费看| 91在线免费视频观看| 99综合影院在线| 色爱区综合激月婷婷| 色哟哟亚洲精品| 在线电影一区二区三区| 久久久美女艺术照精彩视频福利播放 | 欧美日韩一区二区在线视频| 另类小说一区二区三区| 一区二区三区四区不卡在线 | 欧美一区二区三区喷汁尤物| 久久婷婷一区二区三区| 欧美日韩黄色影视| 国产午夜三级一区二区三| 1000部国产精品成人观看| 免费欧美高清视频| 国产精品国产三级国产a| 国产不卡免费视频| 不卡一区在线观看| 99视频在线精品| 午夜精品久久久久久久| 顶级嫩模精品视频在线看| 国产一区二区三区四区五区美女| av电影在线观看完整版一区二区| 在线欧美小视频| 欧美一区二区三区在线观看视频| 亚洲欧美怡红院| 自拍偷拍欧美精品| 夫妻av一区二区| 高清国产一区二区三区| 色香蕉成人二区免费| 国产婷婷精品av在线| 高清不卡在线观看| 欧美精品一区二区三区蜜臀| 污片在线观看一区二区| 欧美中文一区二区三区| 午夜久久福利影院| 欧美日韩激情一区二区三区| 午夜国产精品一区| 午夜av一区二区| 亚洲男人的天堂在线aⅴ视频| 99免费精品视频| 久久亚洲二区三区| 成人午夜视频网站| 亚洲精品中文在线| 日韩美一区二区三区| 成人精品国产一区二区4080| 国产精品国产成人国产三级| 欧美电影影音先锋| 成人福利视频在线看| 久久精品国产精品亚洲红杏| 亚洲欧美日韩国产手机在线| 精品电影一区二区三区| 欧美欧美午夜aⅴ在线观看| 91美女片黄在线观看91美女| 国产麻豆视频一区| 国内成+人亚洲+欧美+综合在线| 亚洲三级理论片| 久久国产综合精品| 欧美美女一区二区在线观看| 欧美大胆人体bbbb| 国产乱码字幕精品高清av| 56国语精品自产拍在线观看| 亚洲女性喷水在线观看一区| 久久99精品久久久久久国产越南 | 国产精品人人做人人爽人人添| 中文字幕永久在线不卡| 精品国产乱码久久久久久久| 国产欧美日韩激情| 亚洲嫩草精品久久| 亚洲黄色小说网站| 亚洲一区二区在线观看视频| av午夜精品一区二区三区| 欧美理论片在线| 亚洲精品一区二区三区精华液| 琪琪久久久久日韩精品| 亚洲日本va午夜在线影院| 免费成人你懂的| 日韩三级中文字幕| 欧美色爱综合网| 麻豆成人久久精品二区三区小说| 91在线视频官网| 亚洲精品美国一| 在线播放91灌醉迷j高跟美女| 轻轻草成人在线| 99热国产精品| 国产一区二区三区最好精华液| 中文字幕亚洲不卡| 欧美人妖巨大在线| 久久伊人蜜桃av一区二区| 欧美日韩在线播放一区| 午夜精品久久久| 欧美一区二区美女| 亚洲国产成人tv| 精品成人一区二区| 欧美一级淫片007| 在线精品视频免费观看| 中文字幕制服丝袜一区二区三区| 国产香蕉久久精品综合网| 欧美精品一区视频| 91黄色在线观看| 在线视频你懂得一区二区三区| 日韩av中文字幕一区二区| 欧美视频一区二区三区在线观看 | 日韩精品一二三四| 亚洲激情自拍偷拍| 日本一区二区三区免费乱视频| 色婷婷国产精品| 国模大尺度一区二区三区| 夜夜嗨av一区二区三区| 国产精品污污网站在线观看| 欧美老年两性高潮| 在线免费亚洲电影| 亚洲国产一区二区a毛片| 91精品一区二区三区久久久久久| 成人免费视频一区二区| 美日韩一级片在线观看| 午夜不卡av免费| 国产98色在线|日韩| 青青国产91久久久久久| 亚洲国产精品一区二区久久| 怡红院av一区二区三区| 国产.精品.日韩.另类.中文.在线.播放| 久久国产乱子精品免费女| 精品一区二区国语对白| 亚洲欧美日韩人成在线播放| 韩国精品一区二区| 欧美日本韩国一区二区三区视频| 精品少妇一区二区三区| 国产精品69久久久久水密桃| 婷婷夜色潮精品综合在线| 久久99精品一区二区三区| 国产精品中文欧美| 国产精品热久久久久夜色精品三区| 椎名由奈av一区二区三区| 一区二区三区国产| 久久99最新地址| 麻豆精品久久精品色综合| 久久久久久久av麻豆果冻| 亚洲一区在线播放| 91在线免费看| 久久综合九色综合久久久精品综合 | 亚洲手机成人高清视频| 婷婷国产在线综合| 欧美日韩免费电影| 成人短视频下载| 久久日一线二线三线suv| 激情综合亚洲精品| 麻豆国产精品一区二区三区| 国产偷国产偷精品高清尤物| 国产在线精品免费av| 欧美日韩在线观看一区二区| 韩国午夜理伦三级不卡影院| 欧美三级韩国三级日本一级| 亚洲午夜久久久久久久久电影院 | 91国产福利在线| 国产真实乱子伦精品视频| 欧美一级视频精品观看| 日韩电影在线观看电影| 一区二区三区在线影院| 7777精品伊人久久久大香线蕉最新版| 亚洲精品va在线观看| 欧美一卡二卡三卡| 久久精品视频网| 欧美高清视频在线高清观看mv色露露十八| 午夜精品123| 欧美日本一道本在线视频| 国产亚洲美州欧州综合国| 欧美日韩国产综合久久 | 豆国产96在线|亚洲| 91丨porny丨在线| 国产精品亲子伦对白| 不卡一二三区首页| 午夜电影一区二区三区| 日韩理论在线观看| 久久亚洲一区二区三区明星换脸| 麻豆精品久久久| 久久久久国产成人精品亚洲午夜| 亚洲夂夂婷婷色拍ww47| 亚洲国产视频网站| 午夜日韩在线电影| 成人午夜av电影| 中文字幕不卡在线播放| 亚洲天堂2014| 欧美大片在线观看|