mysql主从数据库同步问题_聊聊MySQL主从数据库同步的那些事儿
在linux服務器下測試:主(master)服務器IP:219.223.5.105(對應內網IP:192.168.1.75)從(slave)服務器IP:219.223.5.104(對應內網IP:192.168.1.74)一、修改主服務器master[mysqld]log-bin=mysql-bin???//[必須]啟用二進制日志server-id=104? ? ? //[必須]服務器唯一ID,默認是1,一般取IP最后一段
二、修改從服務器slave[mysqld]log-bin=mysql-bin???//[必須]啟用二進制日志server-id=105? ? ? //[必須]服務器唯一ID,默認是1,一般取IP最后一段三、重啟兩臺服務器的mysql104: service mysqld restart;105:service mysqld restart;四、賦予MySQL遠程登錄權限在主服務器master(104)上操作:mysql -uroot -proot123mysql >?GRANT REPLICATION SLAVE ON *.* to ‘mysync’@’%’ identified by ‘password’;mysql >?FLUSH privileges;//其中*.*代表所有權限,mysync代表賬號,password代表密碼,’%’代表所有客戶端都可以連接。修改后需要刷新權限。mysql> select user,host,password from mysql.user;
host值為%,代表可以是任何客戶端。mysql> show master status;
這兩個值要記住,在配置slave時,需要使用到。五、配置從服務器mysql > mysql -uroot -proot123;mysql> change master to
-> master_host=’192.168.1.74′, ?#主服務器的IP
-> master_user=’mysync’, ?#主服務器的連接用戶名
-> master_password=’mysync’, ? ?#主服務器的連接密碼
-> master_log_file=’mysql-bin.000001′, ?#對應上面截圖中的File
-> master_log_pos=1743; ? #對應上面截圖中的Position
啟動從服務器同步進程:Mysql>start?slave; ??六、檢查從服務器功能狀態mysql>?show?slave?status\G?如下,Slave_IO_running:Yes? ? ? ? ? Slave_SQL_running:Yes則代表成功,否則任何其他狀態都是失敗
到這里,主從配置完畢。七、驗證主從效果主服務器上的操作
在主服務器上創建數據庫xdmysql>?create?database?xd;Query?Ok,?1?row?affected?(0.01?sec)在主服務器上創建表student?mysql>?create?table?student?(name?varchar(256),age?int,sex?varchar(256));Query?Ok,?1?row?affected?(0.00?sec)在主服務器上的表student?中插入記錄mysql>?insert?into?student?values(‘wangming’,18,’f’);????????insert?into?student?values(‘xiaobai’,20,’m’);Query?Ok,?2?row?affected?(0.00?sec)在從服務器上查看
mysql>?show?databases;
查看student表里的數據:
中間遇到的一些問題:1.如果主從數據庫的表結構不一致,會出現問題。
2.Slave_SQL_Running: No mysql同步故障解決方法具體見下面鏈接:http://kerry.blog.51cto.com/172631/277414/3.單表同步? ? 在slave服務器配置:? ? replicate-do-table=xd.student? ? 多張表則配置多個replicate-do-table? ? 復制某些表(可用匹配符)
replicate-wild-do-table=tablename%
總結
以上是生活随笔為你收集整理的mysql主从数据库同步问题_聊聊MySQL主从数据库同步的那些事儿的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 配置jmstemplate_S
- 下一篇: 为什么机油使用后变红_水泥固化剂的使用原