具體參數如下:
1.server-id=ID
服務的唯一ID
2.log_bin=/mydata/binlog/mysql-bin
二進制日志的位置和命名方式
3.binlog_format={ROW|STATEMENT|MIXD}
ROW格式:記錄資料更新的每一行資料的變更.當遇到alter,update整個字段的是值這樣的語句,會使得二進制日志的檔案龐大無比.影響了系統的IO性能.但是會保證資料的一緻性.
STATEMENT格式:記錄的隻是導緻資料變更的更新語句.但是有可能導緻資料不一緻.
MIXD:兩種格式的混合.
4.binlog_cache_size
全局變量
在事務過程中,用來儲存SQL語句的緩存大小.使用二進制日志的緩存前提是MYSQL伺服器采用了支援事務的存儲引擎,并且開啟了log_bin日志.該參數會為每個用戶端連接配接配置設定binlog_cache_size大小得緩存.
若使用者頻繁使用多語句的事務的情況下,可以增大binlog_cache_size的大小.
檢視binlog_cache_size是否合理
mysql> show status like 'binlog%';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| Binlog_cache_disk_use | 1 |
| Binlog_cache_use | 33 |
+----------------------------+-------+
binlog_cache_use:使用二進制日志緩存的事務數量
binlog_cache_disk_use:使用二進制日志緩存但超過binlog_cache_size值并使用臨時檔案來儲存事務中的語句的事務數量
兩種情況:
(1)業務不存在大事務()
binlog_cache_size=1M
(2)業務不存在小事務(2M-4M)
binlog_cache_size=2M
5.sync_binlog={0|n}
0:表示事務送出後,不會立即将binlog_cache中的資料重新整理到磁盤上.重新整理時間是由檔案系統自身更新,或者binlog_cache飽和了,才會将cache中的資料刷到磁盤上.
n:表示事務送出n次後,才會将binlog_cache中的資料重新整理到磁盤上.該值設定為1最安全,因為最壞情況,值會丢一個事務.
6.max_binlog_size
二進制日志檔案的最大容量.一般為512M或者1G.
7.binlog_do_db
設定哪些資料庫需要記錄到binlog.隻在master上配置.
8.binlog_ignore_db
哪些資料庫不需要記錄binlog.隻在master上配置.
9.replicate_do_db
設定哪些資料庫需要同步binlog,若有多個資料庫,請用逗号(,)隔開,隻在slave上配置.
10.replicate_ignore_db
設定哪些資料庫不需要同步binlog,若有多個資料庫,請用逗号(,)隔開.隻在slave上配置.
11.expire_logs_days
二進制日志緩存最長時間