程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 在線設置MySql數據同步

在線設置MySql數據同步

編輯:關於MYSQL數據庫
MySQL從3.23.15版本以後提供數據庫復制功能。利用該功能可以實現兩個數據庫同步,主從模式,互相備份模式的功能。
  
  數據庫同步復制功能的設置都在mysql的設置文件中體現。MySQL的配置文件(一般是my.cnf)
  在unix環境下在/etc/mysql/my.cnf 或者在MySQL用戶的home目錄下面的my.cnf.
window環境中,如果c:根目錄下有my.cnf文件則取該配置文件。當運行mysql\bin\winmysqladmin.exe工具時候,該工具會把c:根目錄下的my.cnf 命名為mycnf.bak。並在winnt目錄下創建my.ini。mysql服務器啟動時候會讀該配置文件。所以可以把my.cnf中的內容拷貝到my.ini文件中,用my.ini文件作為MySQL
  服務器的配置文件。
  
  設置方法:
  設置范例環境:
  操作系統:window2000 professional
  MySQL:4.0.4-beta-max-nt-log
  A ip:10.10.10.22
  B ip:10.10.10.53
  A:設置
  1.增加一個用戶最為同步的用戶帳號:
  GRANT FILE ON *.* TO backup@'10.10.10.53' IDENTIFIED BY ‘1234’
  2.增加一個數據庫作為同步數據庫:
  create database backup
  B:設置
  1.增加一個用戶最為同步的用戶帳號:
  GRANT FILE ON *.* TO backup@'10.10.10.22' IDENTIFIED BY ‘1234’
  2.增加一個數據庫作為同步數據庫:
  create database backup
  
  主從模式:A->B
  A為master
  修改A mysql的my.ini文件。在MySQLd配置項中加入下面配置:
  server-id=1
  log-bin
  #設置需要記錄log 可以設置log-bin=c:\mysqlbak\MySQLlog 設置日志文件的目錄,
  #其中mysqllog是日志文件的名稱,mysql將建立不同擴展名,文件名為MySQLlog的幾個日志文件。
  binlog-do-db=backup #指定需要日志的數據庫
  
  重起數據庫服務 
  用show master status 命令看日志情況。
  
  B為slave
  修改B mysql的my.ini文件。在MySQLd配置項中加入下面配置:
  server-id=2
  master-host=10.10.10.22
  master-user=backup #同步用戶帳號
  master-passWord=1234
  master-port=3306
  master-connect-retry=60 預設重試間隔60秒
  replicate-do-db=backup 告訴slave只做backup數據庫的更新
  
  重起數據庫 
  用show slave status看同步配置情況。
  
  注意:由於設置了slave的配置信息,MySQL在數據庫目錄下生成master.info
  所以如有要修改相關slave的配置要先刪除該文件。否則修改的配置不能生效。
  
  雙機互備模式
  如果在A加入slave設置,在B加入master設置,則可以做B->A的同步。
  在A的配置文件中 MySQLd 配置項加入以下設置:
  master-host=10.10.10.53
  master-user=backup
  master-passWord=1234
  replicate-do-db=backup
  master-connect-retry=10
  
  在B的配置文件中 MySQLd 配置項加入以下設置:
  log-bin=c:\mysqllog\MySQLlog
  binlog-do-db=backup
  
  注意:當有錯誤產生時*.err日志文件。同步的線程退出,當糾正錯誤後要讓同步機制進行工作,運行slave start
  
  重起AB機器,則可以實現雙向的熱備。
  
  測試:
  向B批量插入大數據量表AA(1872000)條
  A數據庫每秒鐘可以更新2500條數據
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved