MySQL数据库主从复制
MySQL数据库主从复制的工作方式很简单,一台主机作为主服务器,一台或者多台主机作为从服务器。主服务器会把数据库的变化记录到日志,一旦这些变化被记录到日志,就会马上或者以固定的时间间隔被发送从服务器,使得主从服务器得到同步。
下面,总结下主从服务器配置原理,作为笔记,首先说明下测试环境(局域网内):
|
|
MySQL主从复制优点
如果主服务器出现问题,可以快速切换到从服务器提供的服务 可以在从服务器上执行查询操作,降低主服务器的访问压力 可以在从服务器上执行备份,以避免备份期间影响主服务器的服务 注意
一般只有更新不频繁的数据或者对实时性要求不高的数据可以通过从服务器查询,对于实时性要求高的数据仍然要从主服务器上获得。
在正式开始配置前,先看下摘自网上的一个简单完整的 Mysql 主从复制,读写分离的示意图。
主服务器配置
1、登录数据库
|
|
2、给从服务器设置授权用户
|
|
3、修改主服务器配置文件my.cnf:
|
|
4、在主服务器上设置读锁定有效,确保没有数据库操作,以便获得一个一致性的快照。
|
|
5、目前主服务器已经停止了更新操作,生成主数据库的备份方式有两种:
cp全部的数据文件到从服务器 mysqldump备份数据方式 如果数据库的服务可以停止的话,那么直接使用cp复制数据文件应该是最快的生成快照的方法了。
这里使用mysqldump备份数据文件:
|
|
6、主数据库备份完毕后,主数据库要进行解锁操作:
|
|
7、把数据库备份的一致性文件复制到从服务器,并在从数据库导入数据:
|
|
从服务器配置
1、修改从服务器数据库的server-id,注意从数据库的server-id的值必须是唯一的,不能和主数据酷的配置相同,如果有多个从服务器,则每个服务器必须有自己唯一的server-id值。
|
|
2、在从数据库内开启slave进程:
|
|
3、在从数据库进行show slave status\G进行查看从服务器是否配置成功:
4、从数据库常用命令:
|
|
5、现在可以在主数据库进行一些insert、update和delete操作,看看从数据库是不是已经同步完成,答案是肯定的啦。 :)
(end)
- 原文作者:maratrix
- 原文链接:https://maratrix.cn/post/2015/03/20/mysql_and_slave_test/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。