您好,登錄后才能下訂單哦!
0.準備
A.安裝數據庫: 主從mysql數據庫 (mysql server)都安裝好:
版本上,mysql 允許 低版本master 配 高版本slave
https://dev.mysql.com/doc/refman/5.7/en/replication-compatibility.html
當然版本一致是最好了。
B.表同步和數據同步:在從數據庫(slave),對 主數據庫(master)的表進行數據同步和結構同步(如果只主從復制特定表格,則只針對特定表格同步就行,之后會講如何配置)
用個navicat一類的工具可以很輕松地做 數據同步和結構同步
1.配置主從模式:
可以參照這位大神的文章:
itwork 的BLOG
原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://369369.blog.51cto.com/319630/790921
2.一些小細節:
配置文件怎么找:
windows: 以5.7為例,配置文件位置為:ProgramData\MySQL\MySQL Server 5.7\my.ini
ubuntu: vi /etc/mysql/my.cnf
mysql如何重啟:
Ubuntu: /etc/init.d/mysql restart
windows: 可以從任務管理器服務里,找到mysql,或者用cmd:"net stop mysql57" "net start mysql57"
如果僅僅同步幾個table:
在slave數據庫配置里,使用replicate-do-table 配置,有幾個table寫幾條:
replicate-do-table=db_name.table_name
replicate-do-table=db_name.table_name
修改后記得重啟mysql
請注意:db_name 和 table_name 都是 slave數據庫本地的db和table名字,不要用master的名字!!
(卡了我好久都沒發現錯誤。。。雙方已經聯通,然而表的修改監控被filter掉了。。)
如果master數據庫的名字 和 slave的不一樣:
比如master 叫 db123 , slave的叫 db456。
在slave數據庫配置里,使用replicate-rewrite-db 配置:
replicate-rewrite-db=db123->db456
做一個簡單的名字重寫就好。
修改后記得重啟mysql。
如果你是VMWare虛擬機做為slave:
編輯slave的另一配置文件,
vi /etc/mysql/mysql.conf.d/mysqld.cnf
將 “bind-address = 127.0.0.1 ” 這一行 注釋掉
如何debug:
a.多查看 server Logs(如果在用 mysql workbench, 點擊management,在“instance”欄下找到 server Logs), 里面會提示很多 warning 和 errors,根據錯誤搜索答案。
b. mysql 官方教學,一步一步查,一些常用指令就可以找到問題所在:
https://dev.mysql.com/doc/refman/5.7/en/replication-problems.html
3.資料參考:
這是mysql配置文件的配置項手冊:
https://dev.mysql.com/doc/refman/5.7/en/replication-options-slave.html
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。