MySQL主從復制詳細講解(二)快速實現
<span style="font-size:18px;">簡單步驟總結--快速實現:
一:主服務器的配置步驟:
2:給從服務器設置授權用戶
grant all on *.* to [email protected] identified by "pass123"; (all表示所有權限的意思,授權所有的用戶,關於數據庫所有的表(只能是這台服務器192.168.10.2,如果主機是字符串單引號擴著'leyangjunpc'):賬號是user1 密碼是pass123)
GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO repl@'192.168.0.%' IDENTIFIED BY 'p4ssword';
3:修改主數據庫服務器的配置文件my.cnf/ini,開啟bin-log日志,並設置server-id的值
log-bin=mysql-bin
server-id=1 (主從server-id一定要保證唯一,不能相同) --一主多從也一樣
二:從服務器的配置步驟:
1:配置文件中:修改數據庫的server-id,注意server-id的值必須是唯一的,不能和主數據的配置相同,如果有多個
從服務器,每個從服務器必須有自己唯一的server-id值
開啟bin-log
2:Mysql版本從5.1.7以後開始就不支持“master-host”類似的參數
在從庫上執行如下命令;
change master to master_host='masterIP', master_user='slave', master_password='slvaePASS';
slave start;重啟
3:配置完後->檢測是否和主服務器同步方法(數據同步成功不成功就看*):
show slave status\G
看到:* Salve_IO_Running :Yes (表示成功的把主服務器的bin-log日志拿回來了且同步,寫一行我就同步一行)
* Salve_SQL_Running :Yes (拿過來的bin-log日志並成功的執行了sql語句,一主數據一致)
--看到為yes的說明已經和主服務器取得同步
master_Log_File:mysql-bin.00002 (同步過來的bin-log日志)
Read_Master_Log_Pos:106 (位置,show master status主看下就知道)
Connect_Retry:60 (每隔60秒回去主服務器同步bin-log日志)
蹤跡日志:
Relay-Log_File:localhost-relay-bin.00004 (從服務器生成的日志文件,不叫mysql-bin.xxx)
數據同步過來後,我們查詢數據就可以去從服務器上查詢不用去主服務器,減輕負載
能後你就可以盡情的玩你的主從復制啦,注意別在從服務器上亂刪數據哦,要不能主從同步會有問題的,就夠你玩的啦
</span>