1. 程式人生 > >3. MariaDB設定主從複製

3. MariaDB設定主從複製

翻譯人員: 鐵錨

翻譯日期: 2013年12月25日

主從複製包含兩個步驟: 在 master 主伺服器(組)上的設定,以及在 slave 從屬伺服器(組)上的設定.

配置主伺服器 master
  1. 如果沒有啟用,則需要 啟用二進位制日誌.
  2. 給 master 設定唯一的  server_id ,所有的 slave 從屬伺服器也要設定  server_id; server_id值可以是整數型的數字(1 ~ 2^31-1), 在同一個複製組(replicating group)中的每臺伺服器的server_id都必須是唯一的.
  3. slave 從屬伺服器需要有連線並從master複製的許可權. 通常是為每一臺slave 建立一個單獨的使用者(user),並且只授予複製的許可權(REPLICATION SLAVE 許可權).
示例
GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'slave_host' IDENTIFIED BY 'bigs3cret'; 
FLUSH PRIVILEGES;
需要注意,有一些系統配置選項可能會影響主從複製,檢視下面的變數以避免發生問題:
skip-networking,如果 "skip-networking=1",則伺服器將限制只能由localhost連線,阻止其他機器遠端連到此伺服器上。
bind_address,類似地,如果 伺服器只監聽 127.0.0.1(localhost)的TCP/IP連線,則遠端的 slave也不能連線到此伺服器.
配置從屬伺服器 slave

  1. 給 slave 指定唯一的 server_id. 所有伺服器,不管是主伺服器,還是從伺服器,都要設定 server_id. server_id值可以是整數型的數字(1 ~ 2^31-1), 在同一個複製組(replicating group)中的每臺(/個)伺服器的server_id都必須是唯一的.
要讓此配置項生效,需要重新啟動服務.
獲取 master 的二進位制日誌座標
當檢視當前 二進位制日誌 的position(位置)時,需要阻止任何資料庫的提交.可以通過此座標點告訴slave伺服器從哪一個特定的點開始複製。
  1. 在 master上執行命令 "FLUSH TABLES WITH READ LOCK",以強制寫入日誌,並鎖定所有的表 —— 在此期間不能關閉會話,一關閉會話就會釋放鎖.
  2. 通過執行 "SHOW MASTER STATUS" 來獲取二進位制日誌的當前位置資訊.
  3. 記下 File 以及 Position 資訊. 如果剛剛才開啟了二進位制日誌功能,則為空.
  4. 將資料從master拷貝到slave以後,可以執行"UNLOCK TABLES;"釋放master上的鎖。
示例如下:
--
SHOW MASTER STATUS;
+--------------------+----------+--------------+------------------+
| File               | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+--------------------+----------+--------------+------------------+
| mariadb-bin.000096 |      568 |              |                  |
+--------------------+----------+--------------+------------------+
--
啟動從屬伺服器 Slave
資料匯入以後,就可以啟動複製功能了。 通過執行 "CHANGE MASTER TO" 來開始.
確保 "MASTER_LOG_FILE",以及 "MASTER_LOG_POS" 與master早時候記下的資訊一致.
示例如下:
CHANGE MASTER TO
  MASTER_HOST='master.domain.com',
  MASTER_USER='replication_user',
  MASTER_PASSWORD='bigs3cret',
  MASTER_PORT=3306,
  MASTER_LOG_FILE='mariadb-bin.000096',
  MASTER_LOG_POS=568,
  MASTER_CONNECT_RETRY=10;
然後,啟動slave
START SLAVE;
檢視 slave狀態:
SHOW SLAVE STATUS;

如果需要暫停 slave 複製,則可使用SQL :

stop slave;
說明: 假如停止 MYSQL(MariaDB),然後重新啟動,則 Slave會隨mysqld 自動啟動.所以不需要擔心日常的重啟等操作.
[[email protected] mysql]# service mysql stop
Shutting down MySQL. SUCCESS! 
[[email protected] mysql]# service mysql start
Starting MySQL.. SUCCESS! 
更多問題,歡迎加入QQ群 《指令碼娃娃-桃花島》進行討論,口令: Ext

相關推薦

3. MariaDB設定主從複製

翻譯人員: 鐵錨 翻譯日期: 2013年12月25日 主從複製包含兩個步驟: 在 master 主伺服器(組)上的設定,以及在 slave 從屬伺服器(組)上的設定. 配置主伺服器 master如果沒有啟用,則需要 啟用二進位制日誌.給 master 設定唯一的  se

如何在MySQL中設定主從複製

原作者:Etel Sverdlov 轉載&翻譯:https://www.digitalocean.com/community/tutorials/how-to-set-up-master-slave-replication-in-mysql   如何在MySQL中

mariadb配置主從複製

本文章是通過docker建立了兩個mariadb的容器,主要是記錄,方便以後使用..... 1、master配置 a、修改/etc/my.cnf檔案 [mysqld] server-id=1 log_bin=master-bin binlog-ignore-db=mys

mariadb叢集,主從複製,主從切換,資料告警

1.mariadb叢集是基於wsrep的配置,目的是為了一個機器掛了,其它機器還是正常動作的,配置好後,如果先關閉了第一個節點,或者第一個節點掛掉,就必須要更改gcomm://地址了,將該地址指向叢集中資料為最新的ip地址。非第一節點的,如果掛掉,再次啟動會同步最新的資料。

MariaDB實現主從複製

MySQL之父Widenius先生離開了Sun之後,覺得依靠Sun/Oracle來發展MySQL,實在很不靠譜,於是決定另開分支,這個分支的名字叫做MariaDB。 MariaDB跟MySQL在絕大多數方面是相容的,對於開發者來說,幾乎感覺不到任何不同。目前Ma

MariaDB用法——主從複製高可用

主從 在主節點實現 vim /etc/my.cnf server_id=1 log_bin innodb_file_per_table 重啟服務後生成新的二進位制日誌,舊的可以刪掉

Mariadb主從複製的讀寫分離

  首先我們來回顧下代理的概念,所謂代理就是指的是一端面向客戶端,另外一端面向服務端,代理客戶端訪問服務端,我們把這種代理叫正向代理;代理服務端響應客戶端我們叫做反向代理,這個我們在之前nginx系列部落格中闡述過這樣的概念;不管是正向代理還是反向代理他們都是代理,他們都有一個共同點就是代表一端(客戶端/服務

Linux 第73天 mariadb主從複製

Linux 第73天 mariadb主從複製 時間: 20181015         個人小站: www.winthcloud.top 歡迎大家訪問留言      &n

MySQL 主從複製 主主複製(3)

一.主從複製 1.描述 mysql主從複製實現的原理就是binlog日誌,主節點負責資料庫寫操作,從節點負責讀操作,從節點上不需要使用事務,能夠大大提高資料庫的效能. 準備三臺節點: 192.168.100.193  master 192.168.100.194&nbs

mysql5.1.73 主從複製設定套路

2、修改主伺服器master:    #vi /etc/my.cnf   [client] #password       = your_password port    

3.2redis主從複製配置

redis主從複製配置(2.2) 1.1強制讀寫分離 基於主從複製架構,實現讀寫分離 slave配置 開啟了只讀的redis slave node,會拒絕所有的寫操作,這樣可以強制搭建成讀寫分離的架構

[mysql終極優化]之主從複製與讀寫分離詳細設定教程

記下File及Position下的值。以備在配置從伺服器時使用。 注:File:當前binlog的檔名,每重啟一次mysql,就會生成一個新binlog檔案       Position:當前binlog的指標位置 三、從伺服器配置 1、配置mysql.cnf # vi /etc/my.cnf (1)修改

Linux下Mysql主從複製(從庫是MariaDB

排版不易,希望能幫助到大家 一、準備2臺伺服器 ip:120.168.0.1(主)、120.168.0.2(從) 二、配置檔案         1. Linux中的MySQL配置檔案都在/etc/my.cnf(windows中的配置檔案為mysql.ini)    

Linux mariadb(Mysql)的主從複製架構

mysql的主從複製架構,需要準備兩臺機器,並且可以通訊,安裝好2個mysql,保持版本一致性 mysql -v 檢視資料庫版本1.準備主庫的配置檔案  /etc/my.cnf 寫入開啟主庫的引數[mysqld]# 標註 主庫的身份idserver-id=1# 那個binlog的檔名log-bin=

centos7上mariadb10.3多例項安裝部署及主從複製

    mariaDB是開源的資料庫,是mysql的衍生版。    Mariadb官方: https://mariadb.com/   os:centos7  mariadb:10.3 yum安裝實現。

mysql高可用之MHA(補充3)--管理多組主從複製

前面我們瞭解了mha管理一組主從,然而在實際生產環境中不同的應用會使用不同的資料庫,因此會有多組主從複製,我們可以使用一個mha manager 來管理多組主從複製資料庫。我們只需要建立一個全域性配置檔案,你可以將這幾組中相同的配置資訊寫到全域性配置檔案中,如使用者名稱、密

mariadb資料庫主從設定

主庫伺服器: 192.168.112.131,debian8,MariaDB 10已安裝 從庫伺服器1: 192.168.112.130,debian,MariaDB 10已安裝 以下操作在各個資料庫伺服器配置檔案的[mysqld]部分下執行,資料庫配置

Mysql(Mariadb)資料庫主從複製

開發十年,就只剩下這套架構體系了! >>>   

mariadb cluster主從

mariadb mariadb主從 1、在主節點上/etc/my.cnfservice-id=1在主庫mysql授權backup用戶的權限grant replication slave on *.* to [email protected]‘%‘ identified by ‘passwor