欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql雙主配置的詳細步驟

 更新時間:2022年06月23日 09:29:19   作者:shaunqing  
雙主可以在一定程度上保證主庫的高可用,在一臺主庫down掉之后,可以在極短的時間內(nèi)切換到另一臺主庫上,減少了主從同步給線上主庫帶來的壓力,這篇文章主要給大家介紹了關(guān)于Mysql雙主配置的詳細步驟,需要的朋友可以參考下

前言

特點:在雙主配置中,兩臺mysql互為主從節(jié)點。節(jié)點A是節(jié)點B的master,同時節(jié)點B也是節(jié)點A的master。

安裝mysql步驟略過

一、mysql配置文件

(1)節(jié)點A配置

# 設(shè)置server-id,兩節(jié)點必須不一樣
server-id = 100
 
 
# 開啟bin_log,模式為ROW,允許最大日志為1G
log_bin = mysql-bin
binlog_format = ROW
max_binlog_size = 1024M
 
 
# mysql5.7的版本不需要配置log-slave-updates=1
# log-slave-updates = 1
 
 
# 實現(xiàn)數(shù)據(jù)庫宕機恢復后,自動同步缺少的數(shù)據(jù)
relay_log = mysql-relay-bin
 
 
# 設(shè)置自增ID初始值為2,每次自增量為2。即都是偶數(shù)2,4,6,8,...
auto_increment_offset = 2
auto_increment_increment = 2
 
 
# 開啟gtid
gtid_mode = ON
enforce_gtid_consistency = 1
 
 
# 忽略不需要同步的schema
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = sys

(2)節(jié)點B配置

只列出了與節(jié)點A不同的配置

# 設(shè)置server-id,兩節(jié)點必須不一樣
server-id = 200
 
# 設(shè)置自增ID初始值為1,每次自增量為2。即都是奇數(shù)1,3,5,7,...
auto_increment_offset = 1
auto_increment_increment = 2

二、配置節(jié)點A為節(jié)點B的master(主從模式)

節(jié)點A為master,節(jié)點B為slave。

(1)登錄節(jié)點A,創(chuàng)建slave(節(jié)點B)使用的賬號。

# 在節(jié)點A上創(chuàng)建賬號repl_user,允許從任意IP訪問,密碼為slave@100,
grant replication slave on *.* to 'repl_user'@'%' identified by 'slave@100';
flush privileges;

(2)查看節(jié)點A的master信息

如下圖所屬,節(jié)點A的bin_log日志為mysql-bin.000001,位置是154

# 清空master信息。初次配置可以使用,若已運行了同步,切記不要使用!
reset master;
 
# 查看master信息
show master status;
 
+------------------+----------+--------------+------------------+---------------------------------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                           |
+------------------+----------+--------------+------------------+---------------------------------------------+
| mysql-bin.000001 |     154 |              |                  | c2cf218e-2317-11ec-a36f-5cf9dd4fd6a8:1-5    |
+------------------+----------+--------------+------------------+---------------------------------------------+

(3)登錄節(jié)點B,設(shè)置節(jié)點B的master為節(jié)點A

# 停止節(jié)點B上的slave
stop slave;
 
# 將節(jié)點B的master設(shè)為節(jié)點A,以下的配置信息均表示節(jié)點A
# MASTER_LOG_FILE和MASTER_LOG_POS,是在第(2)步中查看節(jié)點A的master信息
CHANGE MASTER TO 
       MASTER_HOST='127.0.0.1', 
       MASTER_PORT=3307,
       MASTER_USER='repl_user', 
       MASTER_PASSWORD='slave@100', 
       MASTER_LOG_FILE='mysql-bin.000001', 
       MASTER_LOG_POS=154;
 
# 開啟節(jié)點B上的slave
start slave;

(4)確認節(jié)點B的slave是否運行成功。當返回的結(jié)果中,Slave_IO_Running和Slave_SQL_Running都為YES時,表示成功。如果為NO或Connecting時,請在mysql的data目錄中查看.err結(jié)尾的日志文件,找出[ERROR]級別的日志查看。初次配置時,一般都是my.ini配置問題,或同步賬號創(chuàng)建問題導致的。

# 在節(jié)點B中查看slave狀態(tài)
show slave status\G;
 
*************************** 1. row ***************************
              Slave_IO_State: Waiting for master to send event
                  Master_Host: 127.0.0.1
                  Master_User: repl_user
                  Master_Port: 3307
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000001
          Read_Master_Log_Pos: 2207
               Relay_Log_File: mysql-relay-bin.000002
                Relay_Log_Pos: 1143
        Relay_Master_Log_File: mysql-bin.000001
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
                           ......

(5)若slave配置出現(xiàn)異常,可使用以下語句重置

reset slave all;

三、完成雙主配置

        此時,已成功配置了節(jié)點A與節(jié)點B的主從模式,即節(jié)點A是節(jié)點B的master。接下來重復步驟三的操作,但是節(jié)點A、B的操作要顛倒過來,即在節(jié)點B上創(chuàng)建同步賬號,查看master信息,在節(jié)點A上設(shè)置節(jié)點B為master。配置完成后,同樣查看節(jié)點A的slave狀態(tài),Slave_IO_Running和Slave_SQL_Running是否都為YES。

四、測試

在節(jié)點A添加、刪除schema或表或數(shù)據(jù),在節(jié)點B中查看是否有正確同步。

測試自增主鍵,分別在節(jié)點A、B上添加自增主鍵的數(shù)據(jù),與配置文件是否對應。一個為奇數(shù),一個為偶數(shù)。增加或刪除數(shù)據(jù),主鍵是否會出現(xiàn)沖突的情況。

五、控制同步的庫或表

通過修改my.ini實現(xiàn)

(1)在master端控制

        binlog-do-db            binlog日志記錄的數(shù)據(jù)庫(多數(shù)據(jù)庫用,隔開)

        binlog-ignore-db      binlog日志中忽略數(shù)據(jù)庫(多數(shù)據(jù)庫用,隔開)

只有在binlog中記錄的表,才能同步給從庫

# binlog中記錄這兩個表
binlog-do-db=db_1,db_2      
 
# binlog中不記錄這兩個表 
binlog-ignore-db=db_3,db_4  

  (2)在slave端控制

        replicate-do-db                  設(shè)定需要復制的數(shù)據(jù)庫
        replicate-ignore-db            設(shè)定需要忽略的復制數(shù)據(jù)庫 
        replicate-do-table              設(shè)定需要復制的表
        replicate-ignore-table        設(shè)定需要忽略的復制表 
        replicate-wild-do-table       同replication-do-table功能一樣,可以通配符
        replicate-wild-ignore-table 同replication-ignore-table功能一樣,可以加通配符

        注:忽略的配置里,在從庫的relaylog中仍有信息,只是沒有執(zhí)行同步。

# 執(zhí)行同步的庫
replicate-do-db=db_1
replicate-do-db=db_2
 
# 忽略同步的庫
replicate-ignore-db=db_3
 
# 執(zhí)行同步的表
replicate-do-table=db_1.table_a
replicate-do-table=db_2.table_b
 
# 忽略同步的表
replicate-ignore-table=db_2.table_c
 
# 只復制哪個庫的哪個表
replicate-wild-do-table=db_4.% 
 
# 忽略哪個庫的哪個表
replicate-wild-ignore-table=mysql.%   

第五部分引用自CSDN博主「Mr. Sun_」的原創(chuàng)文章

原文鏈接:http://www.dbjr.com.cn/article/252656.htm

六、一個賬號多個IP

       當一臺mysql作為主節(jié)點,N臺作為從節(jié)點時,如果每個從節(jié)點都添加一個賬號會非常繁瑣。此時可以在主節(jié)點中,創(chuàng)建一個賬號,給此賬號設(shè)置多個IP,從而減少添加的賬號個數(shù)。

具體做法是,將創(chuàng)建賬號的語句執(zhí)行多次,每次的IP不同即可。

# 創(chuàng)建一個賬號名,為此賬號設(shè)置多個ip
grant replication slave on *.* to 'repl_user'@'192.168.5.10' identified by 'slave@100';
grant replication slave on *.* to 'repl_user'@'192.168.5.20' identified by 'slave@100';
FLUSH PRIVILEGES

第六部分引用自CSDN博主「rucypli」的回答

mysql grant 多個ip-CSDN論壇

總結(jié)

到此這篇關(guān)于Mysql雙主配置的文章就介紹到這了,更多相關(guān)Mysql雙主配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Mysql聯(lián)合查詢UNION和UNION ALL的使用介紹

    Mysql聯(lián)合查詢UNION和UNION ALL的使用介紹

    本文詳細介紹了Mysql的聯(lián)合查詢命令UNION和UNION ALL,總結(jié)了使用語法和注意事項,以及學習例子和項目例子,需要的朋友可以參考下
    2014-04-04
  • MySql中表的復合查詢實現(xiàn)示例

    MySql中表的復合查詢實現(xiàn)示例

    在MySQL中,復合查詢是對多張表進行查詢的操作,包括多表查詢、自連接、子查詢等,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-11-11
  • MySQL 如何使用事務(wù)

    MySQL 如何使用事務(wù)

    這篇文章主要介紹了MySQL 如何使用事務(wù),幫助大家更好的理解和學習MySQL數(shù)據(jù)庫,感興趣的朋友可以了解下
    2020-09-09
  • MySQL 5.6 如何更改安全的處理密碼探討

    MySQL 5.6 如何更改安全的處理密碼探討

    MySQL 5.6將會自動的在日志中隱藏密碼信息,接下來為你詳細介紹下MySQL 5.6 如何更安全的處理密碼,感興趣的你可以參考下哈,希望可以幫助到你
    2013-03-03
  • MySQL實現(xiàn)去重的幾種方法小結(jié)

    MySQL實現(xiàn)去重的幾種方法小結(jié)

    在MySQL中,SELECT DISTINCT 和 GROUP BY 可以用來去除重復記錄,二者有相似的功能,但在某些情況下有所不同,本文將通過代碼示例給大家詳細介紹這幾種方法,感興趣的小伙伴跟著小編一起來看看吧
    2024-07-07
  • 清理MySQL Binlog二進制日志的三種方式

    清理MySQL Binlog二進制日志的三種方式

    Binlog日志非常重要,但是占用的磁盤空間也很大,我們也需要定期的去清理二進制日志,在MySQL數(shù)據(jù)庫中,提供了自動清理Binlog日志的參數(shù),本文給大家介紹了清理MySQL Binlog二進制日志的三種方式,文中通過代碼講解非常詳細,需要的朋友可以參考下
    2024-01-01
  • MYSQL必知必會讀書筆記第三章之顯示數(shù)據(jù)庫

    MYSQL必知必會讀書筆記第三章之顯示數(shù)據(jù)庫

    MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),MySQL數(shù)據(jù)庫系統(tǒng)使用最常用的數(shù)據(jù)庫管理語言--結(jié)構(gòu)化查詢語言(SQL)進行數(shù)據(jù)庫管理。接下來通過本文給大家介紹MYSQL必知必會讀書筆記第三章之顯示數(shù)據(jù)庫,感興趣的朋友參考下吧
    2016-05-05
  • mysql插入重復數(shù)據(jù)的處理(DUPLICATE、IGNORE、REPLACE)

    mysql插入重復數(shù)據(jù)的處理(DUPLICATE、IGNORE、REPLACE)

    這篇文章主要介紹了mysql插入重復數(shù)據(jù)的處理方式(DUPLICATE、IGNORE、REPLACE),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • mysql Non-Transactional Database Only(只支持MyISAM)

    mysql Non-Transactional Database Only(只支持MyISAM)

    按照discuz官方的建議,選的都是Non-Transactional Database Only 只支持MyISAM,其實默認都安裝也挺好
    2016-04-04
  • MAC下修改mysql默認字符集為utf8的方法

    MAC下修改mysql默認字符集為utf8的方法

    本文主要介紹了如何修改MAC版mysql默認字符集為utf8,如果你的MAC版mysql字符亂碼,可以參考一下這篇文章
    2018-03-03

最新評論