mysql主從介紹、 配置主、配置從

mysql主從介紹

MySQL主從又叫作Replication、AB複製。簡單講就是A和B兩臺機器作主從後,在A上寫數據,另一臺B也會跟着寫數據,二者數據實時同步的mysql

MySQL主從是基於binlog的,主上須開啓binlog才能進行主從。 主從過程大體有3個步驟 
1)主將更改操做記錄到binlog裏 
2)從將主的binlog事件(sql語句)同步到從本機上並記錄在relaylog裏 
3)從根據relaylog裏面的sql語句按順序執行
主上有一個log dump線程,用來和從的I/O線程傳遞binlog

從上有兩個線程,其中I/O線程用來同步主的binlog並生成relaylog,另一個SQL線程用來把relaylog裏面的sql語句執行一遍

兩種狀況:一種是作備份用,一種是做爲讀用
配置主

下面配置一主一從:
一臺機器(192.168.37.130)做爲主,安裝mysqlsql

 
 

修改my.cnf,增長server-id=130和log_bin=zenwen1(隨意定義)vim

#vim /etc/my.cnf                                           //編輯配置文件

mysql主從介紹、 配置主、配置從

修改完配置文件後,啓動或者重啓mysqld服務 
#/etc/init.d/mysqld restart
建立用做同步數據的用戶 

#mysql -uroot -p5650895              //登陸mysql

#grant replication slave on *.* to 'repl'@slave_ip identified by '5650895'; 

#flush tables with read lock;                        //將mysql鎖住不寫數據
#show master status;

mysql主從介紹、 配置主、配置從

配置從
首先安裝mysql 

查看my.cnf,配置server-id=132,要求和主不同 

修改完配置文件後,啓動或者重啓mysqld服務 
#/etc/init.d/mysqld restart              //重啓服務
#mysql -uroot 

stop slave; 

change master to master_host='192.168.37.130', master_user='repl', master_password='5650895', master_log_file='zenwen1.000024',master_log_pos=753715;
start slave;

mysql主從介紹、 配置主、配置從
查看報錯日誌,找緣由,以下繼續操做
mysql主從介紹、 配置主、配置從
還要到主上執行 unlock tables,解鎖ide

從上執行 mysql -uroot 

show slave stauts\G

mysql主從介紹、 配置主、配置從
查看報錯日誌,發現緣由線程

2018-01-10 14:55:18 4470 [ERROR] Slave I/O: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work. Error_code: 1593
找到緣由,是由於使用的克隆的緣由,執行操做
#cd /data/mysql/
#mv auto.cnf  auto.cnf.bak
#/etc/init.d/mysqld restart

mysql主從介紹、 配置主、配置從
看是否有
Slave_IO_Running: Yes
Slave_SQL_Running: Yes rest

相關文章
相關標籤/搜索