淘宝 主从mysql_mysql主从同步

本文详细介绍了如何搭建MySQL的异步主从同步,包括环境准备、主服务器配置、从服务器配置及测试步骤。强调了版本匹配、数据一致性、权限设置和日志文件在同步过程中的关键作用。最后通过在主从服务器上创建数据库和表来验证同步成功。
摘要由CSDN通过智能技术生成

一,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主从同步(即不是在一台机器上的)

2,在主机器上操作:

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

vi /etc/my.cnf

[mysqld]

log-bin=mysql-bin   //[必须]启用二进制日志

server-id=1  //[必须]服务器唯一ID,默认是1。

/etc/init.d/mysqld restart

2.2 建立账号并授权给slave。

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

2.3,刷新权限,并锁表。

flush privileges;

flush tables with read lock;

2.4,查看master状态。

show master status;

42be88dd54886a053afa04a18f60a985.png

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

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;

53b88cb0deba3ab5267393b3b80160db.png

注意查看:

Slave_IO_Running: YesSlave_SQL_Running: Yes以上这两个参数的值为Yes,即说明配置成功!

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

unlock tables;

三,测试主从。

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

附上主从同步的原理图:

1b175e6e4a02e41878d6a3fba61600de.png

MASTER: binlog-do-db, binlog-ignore-db //指定同步和不同步那些库

SLAVE: replicate-do-db, and replicate-ignore-db //指定同步和不同步那些库

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值