一、 環境描述:mysql
主機:192.168.2.201sql
從機:192.168.2.111服務器
Mysql版本:5.7spa
二、 主機my.ini配置:3d
log-bin=C:\mysqlback日誌
expire-logs-days = 30server
max-binlog-size = 1Gblog
server-id = 1事件
skip-name-resolveip
lower_case_table_names=1
binlog-do-db=test1
binlog-do-db=test
三、 從機配置:
log-bin=C:\mysqlback
expire-logs-days = 30
max-binlog-size = 1G
server-id = 1
skip-name-resolve
lower_case_table_names=1
replicate-do-db=test1
replicate-do-db=test
slave-skip-errors =1032,1062,126,1114,1146,1048,1396
# replicate-ignore-db=mysql 指定不備份
注意:若是想作一個複雜點的結構:好比說,A->B->C,其中B是A的從服務器,同時B又是C的主服務器,那麼B服務器除了須要打開log-bin以外,還須要打開log-slave-updates選項,
能夠在B上使用「show variables like 'log%';」來確認是否已經生效。
四、 操做流程:
主機操做流程:
首先保證主機二進制日誌是開啓的,
show variables like 'log_bin';
若是Value 爲 OFF 則未開啓日誌文件,檢查my.ini文件是否配置正確或者徹底 ,my.ini文件修改須要後須要從新啓動 MySQL服務
而後在主機給從機賦權,建立一個帳號
GRANT REPLICATION SLAVE,RELOAD,SUPER,SELECT ON *.* TO "用戶名"@"從機地址" IDENTIFIED BY "密碼";
最後查看一下主機狀態:SHOW MASTER STATUS;
從機操做流程:
自mysql5.1.7以後就不在支持參數去設置關聯的主機,轉用如下模式的命令進行關聯
change master to master_host='主機地址', master_user='以前建立的用戶名', master_password='密碼', master_log_file=' mysqlback.000010', master_log_pos=2731;
說明:日誌名寫錯或pos值與主機對不上,均會致使備份開啓失敗
從機關聯成功以後
運行命令:START slave;開啓複製
show slave status ;查看複製狀況,注意如下兩個字段
Slave_IO_Running =yes
Slave_SQL_Running=yes
均爲yes 則表示主從備份已經開始工做
*********************************************結束********************************************
注意:若是當前主機數據量已經很大,建議先手動備份到從機。
如備份失敗,可經過從機的事件查看器中的事件管理(右擊此電腦>管理>事件查看器)查看相應的失敗緣由,而後針對緣由一一解決。