1、mysql主從同步(爲後面實現讀寫分離,MMM高可用集羣作基礎)
mysql
主庫配置:主庫的IP地址:192.168.4.111sql
一、首先給用戶受權,用來實現同步時,從庫鏈接主庫的用戶名:數據庫
grant replication slave on *.* to tongbu@"%" identified by "123456";vim
//受權tongbu這個用戶在全部的從庫上都有複製權限,並設置密碼服務器
二、啓用binlog日誌:vim /etc/my.cnfide
server_id=111 //指定編號測試
log-bin=master111 //指定日誌文件名,啓用binlog日誌spa
binlog-format="mixed" //日誌類型命令行
三、重啓數據庫服務:線程
四、查看正在使用binlog日誌文件:show master status\G;
從庫配置:從庫的IP地址:192.168.4.112
一、查看本身是不是主從數據庫
show master status; show slave status;
二、測試主數據庫的受權用戶是否有效,看可否登錄
三、在配置文件裏面添加server_id=112,並重啓服務
四、在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; //偏移量
五、啓動從服務:start slave;
六、show slave status\G //查看從的狀態,確認下面的兩行都是yes
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
七、測試同步效果:
在主服務器上,建立庫,表,插入記錄,查看從服務器上是否數據同樣。
2、關於日誌文件的一些信息
一、幾個常見的日誌文件
112-relay-bin.000006 //中繼日誌文件
112-relay-bin.index //中繼日誌文件索引
relay-log.info //中繼日誌
master.info //主庫信息
二、如何把從庫恢復成獨立的服務器:
stop slave; reset slave all;
三、關於線程和程序的一些信息
IO線程:把master庫的binlog日誌內容記錄到本機的relay-binlog日誌裏
sql線程:把relay-binlog日誌裏的sql命令寫到本機的庫
show processlist; Binlog Dump //查看主上運行的程序,而後能夠看到binlog dump程序
show processlist; Connect //能夠查看從庫上運行的程序
3、主從同步經常使用參數(/etc/my.cnf)
一、主庫:binlog_do_db=數據庫名 //只容許同步的庫
binlog_ignore_db=數據庫名 //不一樣步的庫
二、從庫:開啓級聯複製(log_slave_updates)主從從結構的第一臺從庫上配置
同步個別的數據庫(replicate_do_db=數據庫名)
不一樣步的庫(replicate_ignore_db=數據庫名)