数据库的主从复制

原理:
mysql要做到主从复制,其实依靠的是二进制日志,即:假设主服务器叫A,从服务器叫B;主从复制就是B跟着A学,A做什么,B就做什么。那么B怎么同步A的动作呢?现在A有一个日志功能,把自己所做的增删改查的动作全都记录在日志中,B只需要拿到这份日志,照着日志上面的动作施加到自己身上就可以了。这样就实现了主从复制。
实现步骤:
1、首先修改mysql的配置文件,使其支持二进制日志功能
打开主服务器的mysql配置文件:
命令:# vi /etc/mysql/my.cnf
加上如下三行代码
在这里插入图片描述
参数解释:
log-bin=mysql-bin //将mysql二进制日志取名为mysql-bin
binlog_format=mixed //二进制日志的格式,有三种:statement/row/mixed
server-id=101 //为服务器设置一个独一无二的id便于区分,这里使用ip地址的最后一位充当server-id
配置完成保存重启mysql,同样的,进入从服务器的my.cnf重复步骤1即可,唯一区别是server-id=105
2、在主服务器上为从服务器分配一个账号
命令:# mysql -u root -p 123456
在mysql操作界面下,输入下面一行命令:
GRANT replication slave ON . TO ‘slave’@’%’ IDENTIFIED BY ‘123456’;
在这里插入图片描述
3、查看主服务器BIN日志的信息(执行完之后记录下这两值,然后在配置完从服务器之前不要对主服务器进行任何操作,因为每次操作数据库时这两值会发生改变)
在这里插入图片描述
4、设置从服务器
进入从服务器mysql
命令:# mysql -u root -p123456
关闭slave(如果你以前配置过主从的话,一定要先关闭)
命令:stop slave;
开始配置:
在这里插入图片描述
参数解释:
MASTER_HOST : 设置要连接的主服务器的ip地址
MASTER_USER : 设置要连接的主服务器的用户名
MASTER_PASSWORD : 设置要连接的主服务器的密码
MASTER_LOG_FILE : 设置要连接的主服务器的bin日志的日志名称,即第3步得到的信息
MASTER_LOG_POS : 设置要连接的主服务器的bin日志的记录位置,即第3步得到的信息,(这里注意,最后一项不需要加引号。否则配置失败)
从服务器配置完成,启动从服务器:
命令:start slave;
在这里插入图片描述
5、查看是否配置成功:
命令:show slave status
在这里插入图片描述
上面两项均为yes,说明配置成功,否则,请重复前面的步骤。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值