標籤:編號 使用者名稱 串連 地址 star 主伺服器 指定 list 線程
一、mysql主從同步(為後面實現讀寫分離,MMM高可用叢集做基礎)
主庫配置:主庫的IP地址:192.168.4.111
1、首先給使用者授權,用來實現同步時,從庫串連主庫的使用者名稱:
grant replication slave on *.* to [email protected]"%" identified by "123456";
//授權tongbu這個使用者在所有的從庫上都有複製許可權,並設定密碼
2、啟用binlog日誌:vim /etc/my.cnf
server_id=111 //指定編號
log-bin=master111 //指定記錄檔名,啟用binlog日誌
binlog-format="mixed" //日誌類型
3、重啟資料庫服務:
4、查看正在使用binlog記錄檔:show master status\G;
從庫配置:從庫的IP地址:192.168.4.112
1、查看自己是否是主從資料庫
show master status; show slave status;
2、測試主要資料庫的授權使用者是否有效,看能否登陸
3、在設定檔裡面添加server_id=112,並重啟服務
4、在mysql命令列下,更改配置,配置主庫相關資訊
change master to
-> master_host='192.168.4.111', //主庫的地址
-> master_user='tongbu', //串連的使用者名稱
-> master_password='123456', //密碼
-> master_log_file='111-bin.000001', //記錄檔名稱
-> master_log_pos=154; //位移量
5、啟動從服務:start slave;
6、show slave status\G //查看從的狀態,確認下面的兩行都是yes
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
7、測試同步效果:
在主伺服器上,建立庫,表,插入記錄,查看從伺服器上是否資料一樣。
二、關於記錄檔的一些資訊
1、幾個常見的記錄檔
112-relay-bin.000006 //中繼記錄檔
112-relay-bin.index //中繼記錄檔索引
relay-log.info //中繼日誌
master.info //主庫資訊
2、如何把從庫恢複成獨立的伺服器:
stop slave; reset slave all;
3、關於線程和程式的一些資訊
IO線程:把master庫的binlog日誌內容記錄到原生relay-binlog日誌裡
sql線程:把relay-binlog日誌裡的sql命令寫到原生庫
show processlist; Binlog Dump //查看主上啟動並執行程式,然後可以看到binlog dump程式
show processlist; Connect //可以查看從庫上啟動並執行程式
三、主從同步常用參數(/etc/my.cnf)
1、主庫:binlog_do_db=資料庫名 //只允許同步的庫
binlog_ignore_db=資料庫名 //不同步的庫
2、從庫:開啟級聯複製(log_slave_updates)主從從結構的第一台從庫上配置
同步個別的資料庫(replicate_do_db=資料庫名)
不同步的庫(replicate_ignore_db=資料庫名)
mysql系列之7----主從的設定