mysql主從備份、主從切換

來源:互聯網
上載者:User

 本文實現兩個資料庫同步,分為主從模式和相互備份模式。

實施環境:

兩台Linux機器

SerA ip:10.0.0.232

SerB ip:10.0.0.234

Demo1:主從模式

Master:SerA    Slave:SerB

在SerA和SerB上分別建立用於同步的帳號(也可以不建立帳號,直接給其他帳號分配存取權限)

use mysql;

delete from user;

grant all privileges on *.* to '$username'@'%' identified by '$password' with grant option;

flush privileges; 

上面是為了安全,刪除了一些使用者(一般都要把預設的沒有密碼的使用者刪除)

StepA:

SerA配置為Master,在SerA上在my.cnf中添加:

replicate-do-db=$database

server-id=1

指定binlog(因為時通過binlog實現資料同步的)

配置完後重啟資料庫服務,用show master status可以看到Master資訊。

StepB:

在SerB的my.cnf中指定

replicate-do-db=$database

server-id=2

指定binlog

配置完後重啟資料庫服務,用show slave status可以看到Slave資訊。

(在MySQL5.1以後,my.cnf中已經去除了master-host等參數,應該在啟動服務之後通過change master to ...命令來實現配置,也可以在啟動的時候添加這些參數。下面是change master to ...樣本)

bin/mysql -u$username -p$password -e "stop slave;change master to master_host='$mysqlMasterHost',master_port=3306,master_user=$username,master_password=$password;start slave;" 

mysqlMasterHost是Master的IP,

master_port是Master的連接埠,

master_user和master_password是用於同步的帳號和密碼

還有master_log_file和master_log_pos參數指定同步資料的位置。

可以在mysql命令模式下執行change master,之後start slave

注意:由於設定了slave的配置資訊,mysql在資料庫目錄下產生master.info

所以如有要修改相關slave的配置要先刪除該檔案。否則修改的配置不能生效。

這樣就可以實現主從配置,此時在SerA指定資料庫中加入資料,SerB中相應的資料庫也會添加資料。

 類比主從切換:

假設SerA現在無法提供服務,只需在SerB上執行show master status記錄master_log_file和master_log_pos,停止ServB的slave。

在SerA上執行change master 到SerB,並且指定master_log_file和master_log_pos,這樣就可以恢複在SerA宕機期間存到SerB上的資料。

 

看一些配置和查看命令的結果:

注意Slave_IO_Running和Slave_SQL_Running的狀態都必須是YES

 

Demo2:雙機互備

雙機互備只是兩台機器同時做Master和Slave,

即在SerA上使它的Master指向SerB,SerB的Maser指向SerA,

配置其實和主從模式是一樣的。

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.