码迷,mamicode.com
首页 > 数据库 > 详细

mysql主从同步

时间:2016-07-21 00:51:23      阅读:269      评论:0      收藏:0      [点我收藏+]

标签:

一,mysql主从同步的原理

主机器开启bin-log日志,将bin-log日志同步到从机器上,从机器根据bin-log日志转换为relay-log,从机器的sql线程根据relay-log进行数据的更新。

 

二,搭建mysql主从同步前的环境说明:

1,建议2台机器的mysql版本一致,或者从的版本要高于主的版本。

2,关闭selinux。

3,保证2台机器的数据一致性,如果不一致建议使用rsync进行数据的同步。

4,192.168.2.66为主mysql  192.168.2.69为从mysql。

三,搭建异步的mysql主从同步(即不是在一台机器上的)

1,分别在2台机器上安装mysql,具体安装方法如链接:http://www.cnblogs.com/lin1/p/5645761.html

2,在主机器上操作:

2.1  开启binlog日志,设置server-id,重启mysqld服务。 具体如下:

     vi /etc/my.cnf
       [mysqld]
       log-bin=mysql-bin   //[必须]启用二进制日志
       server-id=222      //[必须]服务器唯一ID,默认是1。

/etc/init.d/mysqld restart

2.2 建立账号并授权给slave。

grant replication slave on *.* to ‘192.168.2.69‘@‘repl‘ identified by ‘lin‘;

2.3,刷新权限,并锁表。

flush privileges;

flush tables with read lock;

2.4,查看master状态。

show master status;

技术分享

这里标记的后面需要用到,所以,请记住。

3,在从机器上操作;

3.1 修改server_id ,但这里的server_id一定不能和主的mysql一致,这里我写的是2。这里的bin-log日志可以不用开启,重启服务。

3.2 停止slave。 stop slave

3.3 连接主mysql.

change master to master_host=‘192.168.2.66‘, master_port=3306, master_user=‘repl‘, master_password=‘lin‘, master_log_file=‘mysql-bin.000001‘, master_log_pos=624;   这里就用到show master status的值。

3.4,启动slave。start slave.

3.5,  查看从的状态。

 show slave status\G;

技术分享

注意查看:
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上这两个参数的值为Yes,即说明配置成功!

3.6 配置成功后们不要忘记回到主上取消锁表。

unlock tables;

 

 三,测试主从。

在主上创建一个库,库里面创建一个表,然后在从上面查看是否多出一个库和表。如果从上也多出相对应的库和表,说明主从测试OK。

 

mysql主从同步

标签:

原文地址:http://www.cnblogs.com/lin1/p/5690141.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!