返回列表 發帖

主從複製(主從同步)

一、編輯主伺服器mysql 配置檔案 vim /etc/my.conf
  1. server-id=1 #伺服器id (主從必須不一樣)

  2. log-bin=mysql-bin #開啟日誌(主機需要開啟),這個mysql-bin也可以自定義,這裡也可以加上路徑作為主機的配置

  3. binlog-do-db=ifast-new2 #要給從機同步的庫

  4. #binlog-do-db=

  5. binlog-ignore-db=mysql #不給從機同步的庫(多個寫多行)

  6. binlog-ignore-db=information_schema

  7. binlog-ignore-db=performance_schema

  8. binlog-ignore-db=sys

  9. expire_logs_days=7 #自動清理 7 天前的log檔案,可根據需要修改
複製代碼
二、設定成功 重啟Mysql 服務

service mysqld restart
三、建立備份賬號與測試log_bin是否成功開啟 1.登入主資料庫

show variables like '%log_bin%';
2.設定備份賬戶資訊

grant replication slave on *.* to 'backup'@'%' identified by '123456';
3.檢視快照

show master status\G
關閉主資料庫的讀取鎖定
unlock tables;


定從伺服器 Mysql 配置 vim /etc/my.conf
  1. [mysqld]

  2. basedir=/usr/local/mysql #mysql路徑

  3. datadir=/data/mysqldata #mysql資料目錄

  4. socket=/tmp/mysql.sock

  5. user=mysql

  6. server_id=2 #MySQLid 後面2個從伺服器需設定不同

  7. port=3306

  8. #加上以下引數可以避免更新不及時,SLAVE 重啟後導致的主從複製出錯。

  9. read_only = 1

  10. master_info_repository=TABLE

  11. relay_log_info_repository=TABLE

  12. #relay_log_recovery=1 #從機禁止寫

  13. #super_read_only=1 #從機禁止寫
複製代碼
五、重啟 從資料庫

service mysqld restart
5.1登入slave資料庫,並做如下設定

mysql> stop slave;

mysql> change master to
-> master_host='192.168.1.201', #master的ip
-> master_user='backup', #備份使用者名稱
-> master_password='123456', #密碼
-> master_log_file='mysql-bin.000003', #上面截圖,且要與master的引數一致
-> master_log_pos=431; #上面截圖,且要與master的引數一致

返回列表