mysql -p
show slave status\G;
Slave_IO_Running: No
Slave_SQL_Running: No
若IO出現no:
原因:a:虛擬機的火牆沒關;或者selinux不是disabled.
b:複製用戶的密碼不對。
c:制定的master_pos端口不對
d:master上的mysql-bin.xxxxxx被誤刪。
e:主庫磁盤空間滿了。
若SQL出現NO:
原因:則是配置文件有問題,或者數據不一致。
可以通過以下方式排查錯誤:
1.對比主庫和從庫的二進制日誌的情況
2.通過show slave status\G查看錯誤信息
3.通過錯誤日誌查看錯誤信息
主從複製有延遲:
a:有延遲與系統時間有關,查看主從兩臺機器間系統時間
b:有延遲與網絡,機器性能有關,查看從庫的io,cpu,mem等。
c:主從複製發生異常而中斷,過很久之後才發現複製異常/可通過查看master和slave的status估算相差的日誌,若相差太多,考慮重做從庫。mysql出現啓動慢:
在局域網內連接其他機器上的mysql,發現速度慢。
可以在/etc/my.ini裏面添加
[mysqld]
skip-name-resolve
skip-grant-tables
skip-name-resolve 這個是用來禁用DNS解析,這樣連接速度會塊。但是在mysql的授權列表中只能使用ip不能使用主機名。
show variables like '%log_%'; ##查看數據庫日誌bin-log是否打開
slow_query_log on是打開
slow_launch_time 默認超過2s爲慢查詢
slow_query_log_file 慢查詢日誌存放地點
mysql 主從複製可能出現的問題
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.