萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL Replication 主從配置的示例

MySQL Replication 主從配置的示例

MySQL主從配置就是一台主服務器和一台備份從服務器了,從服務器會實時備份主服務器上更新修改或刪除的數據了,下面我們一起來看配置方法。


 mysql replication 主要通過復制二進制日志,在slave上執行master一樣的來SQL來保持master 和slave的數據一致。

    好處不必多說, 第一個 master-slave的結構首先能實現讀寫分離, 對於緩解數據庫Server的鴨梨會起到一定好處, 另外當master宕機的話, 可以馬上切到slave上邊,可以提高系統的可用性。

1. mysql 的主從復制是通過 bin log來實現的, 首先master要開啟二進制日志

 代碼如下 復制代碼

    server-id = 1

    log_bin = /var/log/mysql/mysql-bin.log

    binlog_ignore_db = mysql

2. master 上要開一個專供復制的賬號

   

    grant file,select,replication slave on *.* to slave@'%' identified by '123456'; --我這裡是有問題的,開了權限給所有的庫 所有的機器,而且還設置了弱密碼,不過做為測試機玩玩也未必不可

3. slave 機器 設置一個 server-id

    server-id = 2

4. 設置復制信息

    這裡要先看一下當前 master 的binlog 記到哪裡了, 從哪個文件開始的哪一個位置, 然後設置slave從這個地方開始復制。 所以這個時候要保證 master 和 slave的數據是一樣的,這樣才能保證master和slave數據的一致性。

    先在master端執行 : show master status;

 代碼如下 復制代碼

    mysql> show master status;

    +------------------+----------+--------------+------------------+

    | File                    | Position    | Binlog_Do_DB | Binlog_Ignore_DB |

    +------------------+----------+--------------+------------------+

    | mysql-bin.000015 | 26560211 |                    | mysql                 |

    +------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

得到當前的二進制日志文件和當前的位置

在 slave 端執行:

 代碼如下 復制代碼

    change master to master_host='192.168.57.64',

        master_user='slave',

        master_password='123456',

        master_log_file='mysql-bin.000015',

        master_log_pos=26560211;

    最後 slave端 start slave;

用 show slave status\G; 查看參數 Slave_IO_Running 和 Slave_SQL_Running, 如果兩個參數都是 yes , 說明搞定

copyright © 萬盛學電腦網 all rights reserved