1. 程式人生 > >Mysql主從複製的配置(雙機互為主從)

Mysql主從複製的配置(雙機互為主從)

author: selfimpr

blog: http://blog.csdn.net/lgg201

mail: [email protected]

announce: 轉載請保留出處

目的: 讓兩臺mysql伺服器可以互為主從提供同步服務.

優點:

1. mysql的主從複製的主要優點是同步"備份", 在從機上的資料庫就相當於一個(基本實時)備份庫.

2. 在主從複製基礎上, 通過mysqlproxy可以做到讀寫分離, 由從機分擔一些查詢壓力.

3. 做一個雙向的主從複製, 兩臺機器互相為主機從機, 這樣, 在任何一個機器的庫中寫入, 都會"實時"同步到另一臺機器, 雙向的優點在於當一臺主機發生故障時, 另一臺主機可以快速的切換過來繼續服務.

步驟:

1. 在兩臺機器上新增一個用於從機訪問的帳號, 賦予REPLICATION SLAVE許可權.

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave';

為slave使用者賦予任何資料庫中任何表上的REPLICATION SLAVE許可權, 此使用者可以在網路任意位置訪問, 訪問時以密碼slave標記.

當使用的是ubuntu的時候, 需要注意一點, /etc/mysql/my.cnf配置檔案下的bind-address = 127.0.0.1這一行需要註釋, 不然從機在請求時是連線不到的.(我的是ubuntu, 其他版linux不知道會不會一樣)

為了保證工作的步驟明細, 可以採用在配置完使用者相關資訊之後, 在另一臺機器上以分配的使用者密碼連線一次, 能成功則能保證當前步驟是正確的.

2. 配置伺服器編號, 開啟bin-log

編輯mysql配置檔案, linux: /etc/mysql/my.cnf,    windows: c:/program files/mysql/mysql 5.0/my.ini

找到[mysqld]這個標籤,

在它的下面有兩行

#server-id               = 1
#log_bin                 = /var/log/mysql/mysql-bin.log

開啟這兩行的註釋, 注意這裡的server-id是伺服器編號, 所以, 兩臺伺服器上的值要設定的不一樣. 比如1和2

3. 使server-id和log-bin的配置修改生效:

sudo /etc/init.d/mysql restart

或者windows下在服務裡重啟mysql服務

4. 將兩臺資料庫伺服器的mysql都鎖定

在mysql命令模式下:

FLUSH TABLES WITH READ LOCK;

SHOW MASTER STATUS;

此時請保證執行這兩條命令的mysql控制檯不要退出.

5. 分別重新開啟一個mysql控臺臺, 配置主機

CHANGE MASTER TO

MASTER_HOST = 'host', #另一臺機器的地址

MASTER_PORT = 3306, #另一臺機器的埠

MASTER_USER = 'slave',#另一臺機器上第一步分配的使用者名稱

MASTER_PASSWORD = 'slave', #另一臺機器上第一步分配的密碼

MASTER_LOG_FILE = 'mysql-bin.000001',#另一臺機器上執行SHOW MASTER STATUS得到的檔名

MASTER_LOG_POS = 192; #另一臺機器上執行SHOW MASTER STATUS得到的偏移量

6. 開啟同步

START SLAVE;

7. 驗證正確性

SHOW SLAVE STATUS;

如果返回的結果第一列是Waiting for master to send event或者Queueing就說明配置是正確的, 當然, 還可能會有其他的資訊也是正確的, 只不過我這裡沒有收集到...呵呵

如果有說的不合適的地方, 請拍磚.

相關推薦

Mysql主從複製配置(互為主從)

author: selfimpr blog: http://blog.csdn.net/lgg201 mail: [email protected] announce: 轉載請保留出處 目的: 讓兩臺mysql伺服器可以互為主從提供同步服務. 優點: 1.

MySQL主從複製熱備實戰

雙機熱備的概念簡單說一下,就是要保持兩個資料庫的狀態自動同步。對任何一個數據庫的操作都自動應用到另外一個數據庫,始終保持兩個資料庫資料一致。 這樣做的好處多。 1. 可以做災備,其中一個壞了可以切換到另一個。 2. 可以做負載均衡,可以將請求分攤到其中任何一臺上,提高網站吞

MySQLMySQL From主從複製To熱備

        安裝完mysql之後,有了新的需求,就是需要有一臺伺服器用來做資料備份使用,以達到容災的目的,這樣需要怎麼做呢?還有我們需要進行多點訪問來減小單點壓力的時候又要怎麼辦呢?這個時候我們就引入了主從複製和雙機熱備的概念了。         其實從實現上來講,雙機

mysql主從複製配置!轉!最簡!親測可用!18年11月21日

轉發地址:https://blog.csdn.net/deeplearnings/article/details/78398526   1、主從伺服器分別作以下操作:   1.1、版本一致   1.2、初始化表,並在後臺啟動mysql   1.3、修改

Linux-centos之mysql讀寫分離的主從複製配置

Linux-centos之mysql讀寫分離的主從複製配置 一:概念 二:為什麼使用讀寫分離 三:操作步驟 一:概念 基本的原理:讓主資料庫處理事務性增、改、刪操作(INSERT、UPDATE、DELETE),而從

MySQL 5.7.22 主從複製配置

一、主從複製原理 MySQL 主從複製是一個非同步的複製過程,主庫傳送更新事件到從庫,從庫讀取更新記錄,並執行更新記錄,使得從庫的內容與主庫保持一致。每一個主從複製的連線,都有三個執行緒。擁有多個從庫的主庫為每一個連線到主庫的從庫建立一個 log dump 輸出執行緒,每一

mysql 主從複製 配置記錄

兩臺伺服器mysql實現主從複製 準備步驟: 兩臺已經安裝好mysql資料庫的伺服器 上一篇有提到安裝mysql5.7.24 主伺服器配置: 建立mysql遠端登入角色和許可權: mysql> create user 'realfake'@'106.12.203.18'

Linux下mysql主從複製配置(CentOS7)

主從複製需要注意: 1、資料庫版本必須一致 2、資料庫名稱必須一致   例如db888 3、配置主資料庫開啟二進位制日誌 4、主資料庫、從資料庫必須具有一個唯一的server-id 配置主從資料庫複製: 一:操作主庫 1、修改主庫的配置檔案     vi /e

mysql主從複製配置方法

Mysql主從配置原理: 一.主伺服器開啟二進位制日誌 bin log,從伺服器開啟從伺服器relavlog   二.從伺服器負責讀取主伺服器二進位制日誌然後方然自己的relavlog裡面執行同步 三.操作順序:     &nb

mysql主從複製配置 & 工作原理

目錄 MySQL主從複製的基本工作原理 複製模式 複製如何工作 主從複製配置 建立賬號 配置主庫和從庫 啟動複製 擴充套件-配置GTID主從複製 參考 MySQL主從複製的基本工作原理 MySQL支援兩種複製方法:

mysql複製--主從複製配置

當單臺MYSQL伺服器無法滿足當前網站流量時的優化方案。需要搭建mysql叢集技術。 複製功能: 資料分佈 負載均衡(讀) 備份 高可用和故障切換 MySQL升級測試 複製方式: 主–從複製 主–主複製 半同步複製 複製原理: Mysql中有一種日誌叫做

mysql主從備份和互備實現

雙機互備和熱備的區別:        互備所指的是backup,保證資料的完整性而做的備份。主要目的是防止資料丟失。       熱備是為了保證應用的連續性。利用故障轉移的方法實現。     Linux下實現的雙機互備:  主從備份: 1、設定同步Master 修改

mysql主從複製配置與問題解決

    主從複製是為了加強系統資料庫的可用性,當主庫掛掉時,從資料庫儲存資料,資料不會丟失,將從庫切換為主庫,等主庫弄好之後再替換回來,提高了專案的可用性。當然我們也可以讀寫分離等操作,提高系統的併發性。本博文只記錄了如何進行主從複製的配置和過程中的一些問題的解決方法。  

mysql主從複製配置記錄

主庫配置檔案修改 #唯一。主從的server_id值不一樣 server-id = 1 log_bin = /var/log/mysql/my

搭建MySql資料庫的主從及實現熱備(資料庫的高可用)

1. 用的CentOS7,因為CentOS7自帶mariadb,所以首先解除安裝mariadb.不解除安裝安裝mysql會有衝突,以前安裝過mysql也要解除安裝 2. 解除安裝mariadb                     執行命令(會列出所有的mariad

mysql 主從複製配置

寫下自己搭建的過程。主伺服器是一臺雲伺服器,系統是centos 7, MySQL版本是 5.7  master : 112.162.178.200從資料庫是我本機,沒外網ip(最開始是想用本機做主庫,因為vps網路有點卡,猜想vps的mysql可能連不上我本機的MySQL,就

MySQL學習筆記--簡單主從複製配置

一. 配置Master伺服器 1.配置master的my.cnf檔案 # vi /etc/my.cnf [mysqld] user=mysql pid_file               = /var/lib/mysql/mysqld.pid socket       

Centos7安裝MySQL5.7和主從複製配置

一:MySQL安裝 1、下載tar包,這裡使用wget從官網下載 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz 2、將mysql安裝

mysql主從複製,基於gtid的主從複製

MySQL複製原理,其通過三個執行緒來完成,在master節點上執行的binlogdump執行緒以及在slave節點上執行的I/O執行緒和SQL執行緒。 1. master節點上的binlogdump執行緒,在slave與其正常連線的情況下,將binlog傳送到slave上。

3.2redis主從複製配置

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