MySQL relay log 詳細引數解釋
root@db 16:12: [(none)]> show variables like '%relay%';
+---------------------------+--------------------------------------+
| Variable_name | Value |
+---------------------------+--------------------------------------+
| max_relay_log_size | 0 |
| relay_log | |
| relay_log_basename | /data/mysql/node2bak-relay-bin |
| relay_log_index | /data/mysql/node2bak-relay-bin.index |
| relay_log_info_file | relay-log.info |
| relay_log_info_repository | TABLE |
| relay_log_purge | ON |
| relay_log_recovery | ON |
| relay_log_space_limit | 0 |
| sync_relay_log | 10000 |
| sync_relay_log_info | 10000 |
+---------------------------+--------------------------------------+
11 rows in set (0.00 sec)
root@db 16:12: [(none)]>
log-slave-updates:
一般情況下slave不會把從master接收到的binlog記錄寫入自己的binlog,這個引數會使slave透過SQL執行緒把從master接受到的binlog寫進自己的binlog,但是前提是slave一定要開啟自己的binlog,此引數一般用於級聯複製,例如需要A複製到B,B複製到C,那麼B就要開啟此引數。
max_relay_log_size:
標記relay log 允許的最大值,如果該值為0,則預設值為max_binlog_size(1G);如果不為0,則max_relay_log_size則為
最大的relay_log檔案大小;
relay_log:
定義relay_log的位置和名稱,如果值為空,則預設位置在資料檔案的目錄(datadir),檔名為host_name-relay-bin.nn
nnnn(By default, relay log file names have the form host_name-relay-bin.nnnnnn in the data directory);
relay_log_basename:
中轉日誌檔案的名稱和路徑。
relay_log_index:
同relay_log,定義relay_log的位置和名稱;一般和relay-log在同一目錄
relay_log_info_file:
設定relay-log.info的位置和名稱(relay-log.info記錄MASTER的binary_log的恢復位置和relay_log的位置)
relay_log_info_repository :
確定 從的 relay_log 位置放在 FILE
(
relay-log.info
)
還是 TABLE (mysql.slave_relay_log_info),保證資料寫入的一致性
relay_log_purge:
開啟或關閉在不需要的時候自動刪除中轉日誌。預設開啟(1),這是個全域性變數,可以透過 SET GLOBAL relay_log_purge =
N 動態設定。
relay_log_recovery:
當slave從庫當機後,假如relay-log損壞了,導致一部分中繼日誌沒有處理,則自動放棄所有未執行的relay-log,並且重新
從master上獲取日誌,這樣就保證了relay-log的完整性。預設情況下該功能是關閉的,將relay_log_recovery的值設定為 1
時,可在slave從庫上開啟該功能,建議開啟。
relay_log_space_limit:
防止中繼日誌寫滿磁碟,這裡設定中繼日誌最大限額。但此設定存在主庫崩潰,從庫中繼日誌不全的情況,不到萬不得
已,不推薦使用;
sync_relay_log:
這個引數和sync_binlog是一樣的,當設定為1時,slave的I/O執行緒每次接收到master傳送過來的binlog日誌都要寫入系統
緩衝區,然後刷入relay log中繼日誌裡,這樣是最安全的,因為在崩潰的時候,你最多會丟失一個事務,但會造成磁碟的
大量I/O。
當設定為0時,並不是馬上就刷入中繼日誌裡,而是由作業系統決定何時來寫入,雖然安全性降低了,但減少了大量的磁
盤I/O操作。這個值預設是0,可動態修改,建議採用預設值。
sync_relay_log_info:
這個引數和sync_relay_log引數一樣,當設定為1時,slave的I/O執行緒每次接收到master傳送過來的binlog日誌都要寫入
系統緩衝區,然後刷入relay-log.info裡,這樣是最安全的,因為在崩潰的時候,你最多會丟失一個事務,但會造成磁碟
的大量I/O。當設定為0時,並不是馬上就刷入relay-log.info裡,而是由作業系統決定何時來寫入,雖然安全性降低了,但
減少了大量的磁碟I/O操作。這個值預設是0,可動態修改,建議採用預設值。
推薦從庫線上環境使用以下配置
#relay log
max_relay_log_size = 0;
relay_log=$datadir/relay-bin
relay_log_purge = 1;
relay_log_recovery = 1;
sync_relay_log =0;
sync_relay_log_info = 0;
如果是mha環境,則relay_log_purge 不要開啟,設定為0,可以使用 purge_relay_logs 來定期清除。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31397003/viewspace-2654677/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql relay log引數彙總MySql
- mysql relay log相關引數說明MySql
- mysqldump匯出引數詳細解釋MySql
- MySQL slow log相關引數解釋MySql
- UDEV規則引數詳細解釋使用dev
- mysql之 binlog維護詳細解析(開啟、binlog引數作用、mysqlbinlog解讀、binlog刪除)MySql
- 引數session_cached_cursors的詳細解釋(zt)Session
- MongoDB啟動命令mongod引數的詳細解釋MongoDB
- LVM管理常用命令引數詳細解釋LVM
- mysql之 binlog維護詳細解析(開啟、binlog相關引數作用、mysqlbinlog解讀、binlog刪除)MySql
- mysql relay log和binlog 小結MySql
- Mysql配置引數詳解(一)MySql
- MySQL mysqldump命令的引數詳細說明MySql
- 刪除mysql relay-log 的解決辦法MySql
- MySQL InnoDB常見引數詳解MySql
- 【MYSQL】my.cnf引數詳解MySql
- 《Kafka實戰》之生產者API使用(引數解釋超詳細)KafkaAPI
- MySQL explain執行計劃詳細解釋MySqlAI
- mysql 5.7配置項最詳細的解釋MySql
- mysql binlog詳細介紹MySql
- MySQL引數DELAY_KEY_WRITE的詳細說明MySql
- MySQL查詢快取引數詳解MySql快取
- mysql5.6主從引數詳解MySql
- mysqldump 引數詳解(基於MySQL 5.6)MySql
- MySQL配置檔案mysql.ini引數詳解MySql
- ES6中rest引數詳細講解REST
- 監聽配置細節引數詳解兩則
- mysqldump引數詳細說明MySql
- MySQL:Innodb Handler_read_*引數解釋MySql
- MySQL handler相關狀態引數解釋MySql
- MySQL8.0新增配置引數詳解MySql
- mysql編譯引數詳解(./configure)MySql編譯
- mysqlbinlog工具基於日誌恢復詳細解釋MySql
- MySQL slow log相關引數MySql
- docker 命令詳細解釋Docker
- top命令詳細解釋
- Servlet、HTTP詳細解釋!ServletHTTP
- MySQL效能引數詳解 - max_connect_errorsMySqlError