binlog從:-->relaylog主上有一個log dump線程..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL主從配置:主從介紹、配置主和從 、測試主從同步

發(fā)布時間:2020-08-07 01:08:53 來源:網(wǎng)絡(luò) 閱讀:26246 作者:handsome燦生 欄目:MySQL數(shù)據(jù)庫

            MySQL主從介紹

(兩臺機器數(shù)據(jù)同步)

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

主:-->binlog

從:-->relaylog


主上有一個log dump線程,用來和從的I/O線程傳遞binlog

 從上有兩個線程,其中I/O線程用來同步主的binlog并生成relaylog,另外一個SQL線程用來把relaylog里面的sql語句落地(執(zhí)行)

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


主從的應(yīng)用場景:

(1)做數(shù)據(jù)的備份,(主:作讀寫數(shù)據(jù),從:實時同步,當(dāng) 主 宕機時,從 也可以即使提供服務(wù) )

(2)也是做備份。(客戶從 從 這臺機器上讀取數(shù)據(jù)(但是不能再從上寫),減輕主的壓力)


            準備工作

1.兩臺機器都裝上mysql,并且都開啟mysql的服務(wù)



         配置主

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

主:192.1683.136.133      從:192.168.136.134

1.修改my.cnf,增加server-id=133和log_bin=canshenglinux1


MySQL主從配置:主從介紹、配置主和從  、測試主從同步

2.修改完配置文件后,啟動或者重啟mysqld服務(wù)

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


重啟完后,我們可以發(fā)現(xiàn)在/data/mysql下生成了以在配置文件中定義log_bin=canshenglinux1為開頭的文件

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

這些文件很重要,不然不能實現(xiàn)主從


3.

把mysql庫備份并恢復(fù)成cansheng庫,作為測試數(shù)據(jù)(這個庫就是用來做主從)

 mysqldump -uroot -p123456 mysql > /tmp/mysql.sql

 mysql -uroot -p123456 -e “create database cansheng”

 mysql -uroot -p123456 cansheng < /tmp/mysql.sql



4.創(chuàng)建用作同步數(shù)據(jù)的用戶


(1)先進入到mysql

 (2)再創(chuàng)建同步數(shù)據(jù)的用戶

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


MySQL主從配置:主從介紹、配置主和從  、測試主從同步

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

5.鎖定一下表:

flush tables with read lock;

(為了同步前數(shù)據(jù)一致。)


show master status (查看一下position和file)

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

(退出mysql)


此時查看一下/data/mysql又是什么庫

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

(一般同步不要同步mysql庫,因為里面有很多用戶名和密碼)



6.備份一下所需要同步的庫:

mysqldump -uroot -p123456 zrlog > /tmp/zrlog.sql

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


                  配置從


1.查看my.cnf,配置server-id=134,要求和主不一樣

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


2.修改完配置文件后,啟動或者重啟mysqld服務(wù)

/etc/init.d/mysqld restart

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


3.把主上需要同步的庫復(fù)制過來:

scp 192.168.136.133:/tmp/*.sql /tmp/

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


臨時創(chuàng)建alias,方便使用命令:

alias 'mysql=/usr/local/mysql/bin/mysql'

alias 'mysqldump=/usr/local/mysql/bin/mysqldump'


4.進入mysql

創(chuàng)建相對應(yīng)的庫:

create database cansheng;

create database zrlog;

create database mysql2;


5.數(shù)據(jù)恢復(fù):

mysql -uroot cansheng < /tmp/mysql.sql

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


6.進入mysql

(1)stop slave;

(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


MySQL主從配置:主從介紹、配置主和從  、測試主從同步

(3)start slave;


(4)判定主從是否配置成功

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

show slave status\G

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

這樣是表示不成功配置成功的要出現(xiàn)兩個yes才成功。

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

不成功的因素:

(1)防火墻 systemctl  stop firewalld

 (2)selinux   -->關(guān)閉 sentenforce 0

(3)用戶名是否正確


{而我的因素是在配置主的時候指定用戶名和密碼錯誤了,從頭來了一次}


7.回到主,進到mysql解除table(表)的鎖定

unlock tables;

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

至此完成主從配置:




                        測試主從同步

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

(只需要在主或者從,其中一個配置就可以了。這些參數(shù)默認是沒有配置的,沒有手動配置,那默認是同步所有的庫

在從上配置盡量使用最后兩個,可以避免在忽略某個庫或者表時,當(dāng)級聯(lián)查詢的時候避免出現(xiàn)數(shù)據(jù)丟失,不該忽略的也忽略了??!

 



測試主從是否成功,是否同步!

1.兩臺機器都進到mysql下,進到測試的數(shù)據(jù)庫:cansheng2

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

 此時清空主上的comment表;看看從上的comment表數(shù)據(jù)是否也清空,從而同步。

truncate table comment;


MySQL主從配置:主從介紹、配置主和從  、測試主從同步


MySQL主從配置:主從介紹、配置主和從  、測試主從同步


刪除表測試:

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


 我們不能再 從 這臺機器上執(zhí)行mysql操作,不然這時我們的主從就斷開。

(因為此時我們的position已經(jīng)改變)

MySQL主從配置:主從介紹、配置主和從  、測試主從同步

如果此時我們的主從斷開了,應(yīng)該重新執(zhí)行

(1)stop slave;

(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;

MySQL主從配置:主從介紹、配置主和從  、測試主從同步


MySQL主從配置:主從介紹、配置主和從  、測試主從同步

(3)start slave;


(4)判定主從是否配置成功


show slave status\G


這樣是表示不成功配置成功的要出現(xiàn)兩個yes才成功。

MySQL主從配置:主從介紹、配置主和從  、測試主從同步















向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI