MYSQL主從庫同步配置過程


MYSQL主從庫同步配置過程

為了實現網站數據庫的異地備份,采用了MySQL數據庫主從同步配置,需要兩台服務器分別作為主從庫,當主庫發生增刪改等操作,會實時反映到從庫,我的個人服務器配置如下:

主庫為centos release 6.7 (final) + mysql 5.5.42,ip為192.168.3.11

從庫為centos release 6.7 (final) + mysql 5.5.42,ip為192.168.3.10

數據庫內均無數據,關閉主從庫的iptables(chkconfig iptables off)。

1、主庫配置

修改主庫MySQL配置文件/ect/my.cnf:

[mysqld]
log-bin=mysql-bin
server-id=1
#skip-networking
#bind-address

server-id用來標識MySQL數據庫,log-bin開啟二進制日志,注釋掉skip-networking和bind-address。 重啟主庫MySQL。

2、賬號配置

在主庫服務器上,新建一個用於同步的賬號。

mysql> create user 'user'@'%.domain.com' identified by 'password';
mysql> grant repliction slave on *.* to 'user'@'%.domain.com';

新建的用戶user@%.domain.com,賦予slave權限。

3、主庫狀態

mysql> show master status;
+------------------+-----------+--------------+------------------+
| File             | Position  | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+-----------+--------------+------------------+
| mysql-bin.000009 |       480 |              |                  |
+------------------+-----------+--------------+------------------+
1 row in set (0.00 sec)

記錄下File和Position的值,之后暫時不要操作主庫,防止主庫狀態發生變化。

4、從庫配置

修改主庫MySQL配置文件/ect/my.cnf:

[mysqld]
log-bin=mysql-bin
server-id=2

注意主從庫的server-id不要相同。

將主庫信息導入到從庫中:

mysql> CHANGE MASTER TO
    ->     MASTER_HOST='192.168.3.11',
    ->     MASTER_USER='usere',
    ->     MASTER_PASSWORD='password',
    ->     MASTER_LOG_FILE='mysql-bin.000009',
    ->     MASTER_LOG_POS=480;

啟動從庫slave同步:

mysql> start slvae;

5、從庫狀態

mysql> show slave status;

查看 Slave_IO_Running | Slave_SQL_Running,如果出現的結果是Yes | Yes,說明mysql主從配置成功完成了。

6、驗證同步

在主庫新建數據庫,導入sql腳本后,查看從庫也做了相應的改變,說明mysql主從同步成功。

參考資料:

Slaves: https://dev.mysql.com/doc/refman/5.5/en/replication-howto-newservers.html

Mysql主從復制實踐手冊: http://www.open-open.com/lib/view/open1365687211734.html

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM