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 .

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值