最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mysql 5.6.14主從復(fù)制(也稱mysql AB復(fù)制)環(huán)境配置方法

 更新時(shí)間:2016年04月17日 13:09:36   投稿:mdxy-dxy  
這篇文章主要介紹了mysql 5.6.14主從復(fù)制(也稱mysql AB復(fù)制)環(huán)境配置方法,需要的朋友可以參考下

一、mysql主(稱master)從(稱slave)復(fù)制的原理:

      (1).master將數(shù)據(jù)改變記錄到二進(jìn)制日志(binary log)中,也即是配置文件log-bin指定的文件(這些記錄叫做二進(jìn)制日志事件,binary log events)
      (2).slave將master的binary log events拷貝到它的中繼日志(relay log)
      (3).slave重做中繼日志中的事件,將改變反映它自己的數(shù)據(jù)(數(shù)據(jù)重演)

附簡(jiǎn)要原理圖:

二、mysql主從復(fù)制支持的類型:

    (1).基于語(yǔ)句的復(fù)制:在主服務(wù)器上執(zhí)行的SQL語(yǔ)句,在從服務(wù)器上執(zhí)行同樣的語(yǔ)句.MySQL默認(rèn)采用基于語(yǔ)句的復(fù)制,效率比較高

word-spacing: 0px">   (2).基于行的復(fù)制:把改變的內(nèi)容直接復(fù)制過(guò)去,而不關(guān)心到底改變?cè)搩?nèi)容是由哪條語(yǔ)句引發(fā)的 . 從mysql5.0開始支持
word-spacing: 0px">   (3).混合類型的復(fù)制: 默認(rèn)采用基于語(yǔ)句的復(fù)制,一旦發(fā)現(xiàn)基于語(yǔ)句的無(wú)法精確的復(fù)制時(shí),就會(huì)采用基于行的復(fù)制.

三、主從配置需要注意的地方:

   (1).主DB server和從DB server數(shù)據(jù)庫(kù)的版本一致
   (2).主DB server和從DB server數(shù)據(jù)庫(kù)數(shù)據(jù)一致[ 這里就會(huì)可以把主的備份在從上還原,也可以直接將主的數(shù)據(jù)目錄拷貝到從的相應(yīng)數(shù)據(jù)目錄](méi)
   (3).主DB server開啟二進(jìn)制日志,主DB server和從DB server的server_id都必須唯一

四、主從配置的簡(jiǎn)要步驟:

附簡(jiǎn)要示意圖:

1.主DB SERVER上的配置

   (1).安裝數(shù)據(jù)庫(kù)
   (2).修改數(shù)據(jù)庫(kù)配置文件,指明server_id,開啟二進(jìn)制日志(log-bin)
   (3).啟動(dòng)數(shù)據(jù)庫(kù),查看當(dāng)前是哪個(gè)日志,position號(hào)是多少
   (4).登陸數(shù)據(jù)庫(kù),授權(quán)用戶[ip地址為從機(jī)IP地址,如果是雙向主從,這里的還需要授權(quán)本機(jī)的IP地址(此時(shí)自己的IP地址就是從IP地址)]
   (5).備份數(shù)據(jù)庫(kù)[記得加鎖和解鎖]
   (6).傳送備份到從DB server上
   (7).啟動(dòng)數(shù)據(jù)庫(kù)

以下步驟,為單向主從搭建成功,想搭建雙向主從需要的步驟:

   (1).登陸數(shù)據(jù)庫(kù),指定主DB server的地址,用戶,密碼等信息[此步僅雙向主從時(shí),需要]

   (2).開啟同步,查看狀態(tài)

2.從DB SERVER上的配置

  (1).安裝數(shù)據(jù)庫(kù)
  (2).修改數(shù)據(jù)庫(kù)配置文件,指明server_id[如果是搭建雙向主從的話,也要開啟二進(jìn)制日志(log-bin)]
  (3).啟動(dòng)數(shù)據(jù)庫(kù),還原備份
  (4).查看當(dāng)前是哪個(gè)日志,position號(hào)是多少[單向主從此步不需要,雙向主從需要]
  (5).指定主DB server的地址,用戶,密碼等信息
  (6).開啟同步,查看狀態(tài)

五、單向主從環(huán)境[也稱 mysql A/B復(fù)制]的搭建案例:

1.主DB server和從DB server都安裝相應(yīng)版本的數(shù)據(jù)庫(kù),我的兩臺(tái)DB server都已經(jīng)安裝好(5.6.14版本),都會(huì)是雙實(shí)例,這里就不演示安裝,可以參考mysql源碼編譯安裝和mysql多實(shí)例配置兩篇文章
注:兩臺(tái)機(jī)器的的selinux都是disable(永久關(guān)閉selinux,請(qǐng)修改/etc/selinux/config,將SELINUX改為disabled),防火墻可以選擇關(guān)閉,開啟的話也行[不行的話,添加防火墻策略]
2.修改主DB server的配置文件(/etc/my.cnf),開啟日志功能,設(shè)置server_id值,保證唯一[client102為主DB server]

[root@client102 scripts]# vim /etc/my.cnf 
# 修改配置文件里,下面兩個(gè)參數(shù): 
# 設(shè)置server_id,一般建議設(shè)置為IP,或者再加一些數(shù)字 
server_id =102
# 開啟二進(jìn)制日志功能,可以隨便取,最好有含義 
log-bin=mysql3306-bin

3.啟動(dòng)數(shù)據(jù)庫(kù)服務(wù)器,并登陸數(shù)據(jù)庫(kù),授予相應(yīng)的用戶用于同步

# 我這里是多實(shí)例mysql,所以啟動(dòng)是這樣的,如果大家是單實(shí)例的,就直接啟動(dòng)就可以[/etc/init.d/mysqld start] 
[root@client102 scripts]# mysqld_multi start 3306 
# 登陸mysql 服務(wù)器 
[root@client102 scripts]# mysql -uroot -S /usr/local/mysql/mysqld3306.sock -p 
# 授予用戶權(quán)限用于主從同步 
mysql> grant replication slave on *.* to 'kongzhong'@'192.168.1.100' identified by 'kongzhong'; 
Query OK, 0 rows affected (0.00 sec) 
# 刷新授權(quán)表信息 
mysql> flush privileges; 
Query OK, 0 rows affected (0.00 sec) 
# 查看position 號(hào),記下position 號(hào)(很重要,從機(jī)上需要這個(gè)position號(hào)和現(xiàn)在的日志文件,我這里是414和mysql3306-bin.000001) 
mysql> show master status; 
+----------------------+----------+--------------+------------------+-------------------+
| File         | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | 
+----------------------+----------+--------------+------------------+-------------------+
| mysql3306-bin.000001 |   414 |       |         |          | 
+----------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

4.為保證主DB server和從DB server的數(shù)據(jù)一致,這里采用主備份,從還原來(lái)實(shí)現(xiàn)初始數(shù)據(jù)一致

復(fù)制代碼 代碼如下:

# 臨時(shí)鎖表
mysql> flush tables with read lock;
# 我這里實(shí)行的全庫(kù)備份,在實(shí)際中,我們可能只同步某一個(gè)庫(kù),可以只備份一個(gè)庫(kù)
# 新開一個(gè)終端,執(zhí)行如下操作
[root@client102 data]# mysqldump  -p3306 -uroot -p  -S /usr/local/mysql/mysqld3306.sock  --all-databases > /tmp/mysql.sql
# 解鎖
mysql> unlock tables;
# 將備份的數(shù)據(jù)傳送到從機(jī)上,用于恢復(fù)
 [root@client102 data]# scp  /tmp/mysql.sql  root@192.168.1.100:/tmp

5.從DB server配置文件只需修改一項(xiàng),其余用命令行做

復(fù)制代碼 代碼如下:

[root@client100 ~]# vim /etc/my.cnf
# 設(shè)置server_id,一般建議設(shè)置為IP,或者再加一些數(shù)字
server_id =100

6.啟動(dòng)數(shù)據(jù)庫(kù),還原備份數(shù)據(jù)

復(fù)制代碼 代碼如下:

# 啟動(dòng)數(shù)據(jù)庫(kù)
[root@client100 ~]# mysqld_multi start 3306
# 還原主DB server備份的數(shù)據(jù)
[root@client100 ~]# mysql -uroot -S /usr/local/mysql/mysqld3306.sock -p < /tmp/mysql.sql

7.登陸數(shù)據(jù)庫(kù),添加相關(guān)參數(shù)(主DBserver的ip/端口/同步用戶/密碼/position號(hào)/讀取哪個(gè)日志文件)

復(fù)制代碼 代碼如下:

[root@client100 ~]# mysql -uroot -S /usr/local/mysql/mysqld3306.sock -p
mysql> change master to
    -> master_host='192.168.1.102',
    -> master_user='kongzhong',
    -> master_password='kongzhong',
    -> master_port=3306,
    -> master_log_file='mysql3306-bin.000001',
    -> master_log_pos=414;
#/*  下面是一部分注解:
#/*  指定主DB server的IP地址
master_host='192.168.1.102'
#/*  指定用于同步的用戶[這個(gè)就是我們?cè)谥鱀B server授權(quán)的用戶]
master_user='kongzhong'
#/* 指定用于同步的用戶的密碼
master_password='kongzhong'
#/* 指定主DB server的端口[下面一個(gè)例子,可以重點(diǎn)看這個(gè)]
master_port=3306
#/*  指定從DB server 從哪個(gè)日志文件開始讀[在主DB server上使用show master status查看到日志]
master_log_file='mysql3306-bin.000001'
#/*  指定 從哪個(gè)POSITION號(hào)開始讀
master_log_pos=414
# 開啟主從同步
mysql> start slave;
# 查看主從同步狀態(tài)
mysql> show slave status\G;
# 主要看以下兩個(gè)參數(shù):[這兩個(gè)參數(shù)如果是yes就表示主從同步正常]
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

8.下面大家就可以在主DB server上新建一個(gè)表,看是否能同步到從DB server上,我這里就不測(cè)試了

[注:千萬(wàn)不要在從DB server手動(dòng)插入數(shù)據(jù),那樣數(shù)據(jù)就不一致,主從就會(huì)斷開,需要重新配置了]

如果有問(wèn)題,可以嘗試關(guān)閉IPTABLES(/etc/init.d/iptables stop)和selinux(setenforce 0:臨時(shí)關(guān)閉selinux,永久關(guān)閉selinux,請(qǐng)修改/etc/selinux/config,將SELINUX改為disabled)

9.上面所搭建的是單向主從,也是用的比較多的,有人想了解雙向主從是如何搭建,其實(shí),就是主DB server和從DB sever都開啟日志功能,然后在主DB SERVER執(zhí)行授權(quán)用戶[這里授權(quán)的是自己作為從服務(wù)器,也就是這里的IP地址是主DB server的IP地址],然后再在主DB server上進(jìn)行chang master操作.有不理解的可以留言詢問(wèn).

相關(guān)文章

  • mysql缺少my.ini文件的最佳解決方法

    mysql缺少my.ini文件的最佳解決方法

    my.ini是MySQL數(shù)據(jù)庫(kù)中使用的配置文件,修改這個(gè)文件可以達(dá)到更新配置的目的,下面這篇文章主要給大家介紹了關(guān)于mysql缺少my.ini文件的最佳解決方法,需要的朋友可以參考下
    2024-01-01
  • MySQL索引使用說(shuō)明(單列索引和多列索引)

    MySQL索引使用說(shuō)明(單列索引和多列索引)

    這篇文章主要討論MySQL選擇索引時(shí)單列單列索引和多列索引使用,以及多列索引的最左前綴原則,需要的朋友可以參考下
    2018-01-01
  • MySQL的備份工具mysqldump的基礎(chǔ)使用命令總結(jié)

    MySQL的備份工具mysqldump的基礎(chǔ)使用命令總結(jié)

    這篇文章主要介紹了MySQL的備份工具mysqldump的基礎(chǔ)使用命令總結(jié),除了基本的導(dǎo)入導(dǎo)出,還介紹了其他一些命令參數(shù)的用法,需要的朋友可以參考下
    2015-12-12
  • MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù)

    MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù)

    實(shí)際項(xiàng)目中我們都會(huì)遇到分布式定時(shí)任務(wù)執(zhí)行的情況,今天通過(guò)本文給大家分享MySQL中查詢當(dāng)前時(shí)間間隔前1天的數(shù)據(jù),查詢sql語(yǔ)句給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧<BR>
    2021-12-12
  • Mysql主從延時(shí)圖解方法

    Mysql主從延時(shí)圖解方法

    我們知道,一個(gè)服務(wù)器開放N個(gè)鏈接給客戶端連接的,就會(huì)有大并發(fā)的更新操作,但是從服務(wù)器的里面讀取binlog線程得僅有一個(gè),當(dāng)某個(gè)SQL在從服務(wù)器上執(zhí)行的時(shí)間稍長(zhǎng)?或由某個(gè)SQL要鎖表就會(huì)導(dǎo)致主服務(wù)器的SQL大量積壓,未被同步到從服務(wù)器,就導(dǎo)致了主從不一致,也就是主從延遲
    2022-01-01
  • MySQL啟動(dòng)方式之systemctl與mysqld的對(duì)比詳解

    MySQL啟動(dòng)方式之systemctl與mysqld的對(duì)比詳解

    MySQL 是當(dāng)今最流行的開源關(guān)系型數(shù)據(jù)庫(kù)之一,其性能、可靠性和易用性讓它廣泛應(yīng)用于各種場(chǎng)景,如何正確啟動(dòng) MySQL 服務(wù)可能并不是一件簡(jiǎn)單的事情,本文將聚焦兩種常用的 MySQL 啟動(dòng)方式:通過(guò) systemctl 啟動(dòng)和直接使用 mysqld 啟動(dòng),需要的朋友可以參考下
    2024-11-11
  • mysql分區(qū)功能詳解,以及實(shí)例分析

    mysql分區(qū)功能詳解,以及實(shí)例分析

    下面小編就為大家?guī)?lái)一篇mysql分區(qū)功能詳解,以及實(shí)例分析。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • MySQL中的MVCC底層原理解讀

    MySQL中的MVCC底層原理解讀

    本文詳細(xì)介紹了MySQL中的多版本并發(fā)控制(MVCC)機(jī)制,包括版本鏈、ReadView以及在不同事務(wù)隔離級(jí)別下MVCC的工作原理,通過(guò)一個(gè)具體的示例演示了在可重復(fù)讀隔離級(jí)別下的MVCC執(zhí)行過(guò)程
    2025-02-02
  • MySQL數(shù)據(jù)庫(kù)查看日志操作指南

    MySQL數(shù)據(jù)庫(kù)查看日志操作指南

    這篇文章主要介紹了MySQL數(shù)據(jù)庫(kù)查看日志操作的相關(guān)資料,文中講了MySQL中的四種日志,分別是錯(cuò)誤日志、二進(jìn)制日志、查詢?nèi)罩竞吐樵內(nèi)罩?需要的朋友可以參考下
    2025-02-02
  • Linux下二進(jìn)制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟

    Linux下二進(jìn)制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟

    這篇文章主要介紹了Linux下二進(jìn)制方式安裝mysql5.7版本和系統(tǒng)優(yōu)化的步驟,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01

最新評(píng)論

金山区| 长阳| 太保市| 保靖县| 英超| 和田县| 社旗县| 太保市| 叙永县| 高邮市| 灵山县| 红原县| 凤山市| 宁武县| 海兴县| 宣武区| 兴化市| 长乐市| 分宜县| 张家口市| 龙州县| 成武县| 高州市| 万盛区| 瑞丽市| 临桂县| 江陵县| 云龙县| 松潘县| 南丰县| 永仁县| 沁阳市| 云南省| 胶州市| 泸定县| 新巴尔虎左旗| 夏河县| 巩义市| 庄浪县| 正阳县| 丹棱县|