成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL binlog日志三種模式選擇及配置

數據庫 MySQL
在認識binlog日志三種模式前,先了解一下解析binlog日志的命令工mysqlbinlog。mysqlbinlog工具的作用是解析mysql的二進制binlog日志內容,把二進制日志解析成可以在MySQL數據庫里執行的SQL語句。

在認識binlog日志三種模式前,先了解一下解析binlog日志的命令工mysqlbinlog。mysqlbinlog工具的作用是解析mysql的二進制binlog日志內容,把二進制日志解析成可以在MySQL數據庫里執行的SQL語句。binlog日志原始數據是以二進制形式存在的,需要使用mysqlbinlog工具轉換成SQL語句形式。

mysql的binlog日志作用是用來記錄mysql內部增刪改等對mysql數據庫有更新內容的記錄(對數據庫進行改動的操作),對數據庫查詢的語句如show,select開頭的語句,不會被binlog日志記錄,主要用于數據庫的主從復制與及增量恢復。

案例:

在對數據庫進行定時備份時,只能備份到某個時間點,假如在凌晨0點進行全備了,但是在中午12點出現故障需要恢復數據,使用0點的全備只能恢復到0點時刻的數據,難道0點到12點的數據只能丟失了嗎?

這時就是體現binlog日志重要性的時候了,需要對binlog日志進行定時推送(一分鐘一次或五分鐘一次,時間頻率視業務場景而定)完成增量備份。當出現故障時,可以使用定時備份和增量備份恢復到故障點時刻的數據。具體的恢復方案,這里不做簡述,后面再寫文章來講解。

binlog日志三種模式

ROW Level

記錄的方式是行,即如果批量修改數據,記錄的不是批量修改的SQL語句事件,而是每條記錄被更改的SQL語句,因此,ROW模式的binlog日志文件會變得很“重”。

優點:row level的binlog日志內容會非常清楚的記錄下每一行數據被修改的細節。而且不會出現某些特定情況下存儲過程或function,以及trigger的調用和觸發器無法被正確復制的問題。

缺點:row level下,所有執行的語句當記錄到日志中的時候,都以每行記錄的修改來記錄,這樣可能會產生大量的日志內容,產生的binlog日志量是驚人的。批量修改幾百萬條數據,那么記錄幾百萬行……

Statement level(默認)

記錄每一條修改數據的SQL語句(批量修改時,記錄的不是單條SQL語句,而是批量修改的SQL語句事件)。看上面的圖解可以很好的理解row level和statement level兩種模式的區別。

優點:statement模式記錄的更改的SQ語句事件,并非每條更改記錄,所以大大減少了binlog日志量,節約磁盤IO,提高性能。

缺點:statement level下對一些特殊功能的復制效果不是很好,比如:函數、存儲過程的復制。由于row level是基于每一行的變化來記錄的,所以不會出現類似問題

Mixed

實際上就是前兩種模式的結合。在Mixed模式下,MySQL會根據執行的每一條具體的sql語句來區分對待記錄的日志形式,也就是在Statement和Row之間選擇一種。

企業場景如何選擇binlog的模式

1、 如果生產中使用MySQL的特殊功能相對少(存儲過程、觸發器、函數)。選擇默認的語句模式,Statement Level。

2、 如果生產中使用MySQL的特殊功能較多的,可以選擇Mixed模式。

3、 如果生產中使用MySQL的特殊功能較多,又希望數據***化一致,此時***Row level模式;但是要注意,該模式的binlog非常“沉重”。

查看binlog模式

 

  1. mysql> show global variables like "%binlog_format%" 
  2. +---------------+-----------+  
  3. | Variable_name | Value    |  
  4. +---------------+-----------+  
  5. | binlog_format | STATEMENT |  
  6. +---------------+-----------+ 

配置binlog日志模式

vim my.cnf(在[mysqld]模塊中配置)

 

  1. log-bin = /data/3306/mysql-bin  
  2. binlog_format="STATEMENT"  
  3. #binlog_format="ROW"  
  4. #binlog_format="MIXED" 

 

不重啟,使配置在msyql中生效

SET global binlog_format='STATEMENT';

責任編輯:龐桂玉 來源: Linux公社
相關推薦

2024-05-28 00:10:00

JavaMySQL數據庫

2023-11-23 13:17:39

MySQL?數據庫

2024-05-30 08:03:17

2022-03-15 11:31:17

MySQL日志格式

2022-04-27 08:01:15

FastAPI配置日志

2015-09-14 09:31:44

結對設計

2009-11-06 13:23:27

WCF模式

2024-01-09 11:38:12

2019-09-02 14:44:15

云計算云安全云取證

2022-05-27 11:33:02

前端代碼設計模式

2010-09-09 10:08:59

2009-08-04 09:09:56

Java常見異常

2021-05-17 07:48:06

MySQL日志系統

2011-11-02 11:06:50

2009-08-01 22:03:23

智能社區線纜

2022-05-30 07:07:35

Java監聽文件Java 8

2010-07-13 15:55:12

FTP數據傳輸模式

2009-12-21 13:37:43

WCF消息交換

2010-06-28 17:43:44

SQL Server

2016-09-13 14:05:24

Spark集群管理模式
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91久久国产综合久久91精品网站 | 国产亚洲网站 | 男人的天堂在线视频 | 操人网| 成人激情视频 | 欧美在线小视频 | 啪视频在线 | 午夜国产一级 | 国产不卡一区 | 久久99精品久久久久久秒播九色 | 国产精品久久久久久久久久99 | 综合色久 | 日韩国产精品一区二区三区 | 波多野结衣一区二区三区在线观看 | 鸡毛片| 精品日韩一区二区三区av动图 | 亚洲欧美日韩精品久久亚洲区 | 日韩国产精品一区二区三区 | 国产一区999 | 很很干很很日 | 97国产精品| 一区二区三区四区在线免费观看 | 一久久久| 久在线| 欧美一级片免费看 | 国产黄色大片 | 一区二区三区免费在线观看 | 欧美一级欧美一级在线播放 | 午夜午夜精品一区二区三区文 | 亚洲精品久久久久久久久久久久久 | 青青草在线视频免费观看 | 欧美午夜精品 | 男人的天堂在线视频 | 紧缚调教一区二区三区视频 | 国产亚洲精品a | 日韩影院在线观看 | 精品国产一区二区三区久久影院 | 欧美在线观看免费观看视频 | 黄色片在线观看网址 | av一区在线观看 | 亚洲欧美中文字幕在线观看 |