Mysql实战:主从同步
在兩臺機器上安裝MySQL.主機地址分別為:
Master:192.168.11.104
Slave:192.168.11.103
啟動mysql服務:/etc/init.d/mysql? start
修改主庫的配置文件 my.cnf? (屬性說明自行百度)
修改從庫的配置文件 my.cnf?
進入從庫,配置主庫,執行:
change master to master_host="192.168.11.104", master_user = 'root',master_password = '123456', master_port = 3306,master_log_file='mysql-bin.000003', master_log_pos = 107,master_connect_retry = 30;可能出現錯誤:解決方案?。
slave_io_running = yes
slave_sql_running = yes
則成功!
此時可以愉快的主從同步了。寫的比較簡單,請大家看看就行。
關閉running中的從庫:在從庫,使用命令 stop slave
如果 slave這邊的IO_Running為NO的話;
刷新master的log: flush logs;
重新獲取
stop slave;
填入最新的數值,再次執行
change master to master_host="192.168.11.104",
master_user = 'root',master_password = '123456',
master_port = 3306,master_log_file='mysql-bin.000003',
master_log_pos = 107,master_connect_retry = 30;
start slave;
至此解決!
如何將主庫在同步之前的數據加載到新開的從庫里呢?
首先將主庫上read lock,
flush tables with read lock;將數據庫數據導出到sql文件,
mysqldump -p3306 -uroot -p --add-drop-table test > /home/nginx--/chen/sql_tmp/user.sql;解鎖
unlock tables;?在從庫創建相應的database,然后將sql文件注入到mysql中;
mysql -uroot -p test < /home/nginx--/chen/sql_tmp/user.sql注意:這里的主從同步是單向主從,還可以配置雙向主從,會有少許問題。一般情況下,單向主從就已經能夠滿足業務需求了。
下一篇將寫寫讀寫分離,需要使用到數據庫中間件MyCat .
?
總結
以上是生活随笔為你收集整理的Mysql实战:主从同步的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络:TCP/UDP
- 下一篇: 数据库:MySQL索引总结