|
導讀數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應... 數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立的數據集合。 mysql從3.23.15版本以后提供數據庫復制功能。利用該功能可以實現兩個數據庫同步,主從模式,互相備份模式的功能。 數據庫同步復制功能的設置都在mysql的設置文件中體現。mysql的配置文件(一般是my.cnf) 在unix環境下在/etc/mysql/my.cnf 或者在mysql用戶的home目錄下面的my.cnf。 window環境中,如果c:根目錄下有my.cnf文件則取該配置文件。當運行mysql的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:mysqlbakmysqllog 設置日志文件的目錄, #其中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:mysqllogmysqllog binlog-do-db=backup 注意:當有錯誤產生時*.err日志文件。同步的線程退出,當糾正錯誤后要讓同步機制進行工作,運行slave start 重起AB機器,則可以實現雙向的熱備。 測試: 向B批量插入大數據量表AA(1872000)條 A數據庫每秒鐘可以更新2500條數據。 全新的路由器不僅讓你更穩定快速地連接無線網絡,更可以讓家中的智能設備連接在一起。 |
溫馨提示:喜歡本站的話,請收藏一下本站!