怀英漫谈7 - Mysql主从复制

你好,上次我们简单地聊了一下Shiro。最近公司在准备项目部署的事情,并使用了Mysql的主从复制,今天就和你聊聊这个过程。

一开始的时候,我也没有想要单独去做主从,当初是打算做集群来着。后来发现集群有点儿困难,为了应对即将的上线,于是就将目标定为了:“先完成主从”。

什么是主从

所谓的主从,简单讲就是有两个数据库,主库提供一般的功能,从库在主库的数据变动的时候,将这些数据的变动同步到自己的身上。举个例子,主库在user表中新添加了一条记录,从库在主库添加完之后就也在自己的user表中添加了相应的记录。

好处

这样一来,如果主库出现了问题,那么可以继续用从库提供服务,如果这样的切换是同时的,且由机器自动完成,那么就仍然能够保证数据的提供。

便于理解的步骤

通常的步骤会有4个,分别是授权,修改配置文件,添加用户,检验,从机配置,连接主机。首先需要授权,即在安装Mysql数据库的服务器上打开3306的端口。如果是在阿里云上部署的话,那么在打开端口之后,还需要去配置安全组,使得3306的端口可以被访问。接下来就是要修改Mysql的配置,主要的一步就是添加bin_log的地址。再接着给主库添加一个用户,该用户是从库同步时与主库联系的用户名和密码,也正是因为如此,所以呢要给这个用户授予完全权限以及从机复制表的权限。这一步完成之后,重启主机的Mysql,查询Master的状态。如果看到了Master的状态是可用的,接下来就可以配置从机,连接主机了。

从机的配置主要是在server-id的添加,并在此之后添加一个relay-log,这一步完成之后就可以在从机上连接主机了。主要会用到change命令,在配置中出现的master_log_file对应show master status显示的File列,master_log_pos对应Position列。如果这个没有对应上的话,就会同步失败。紧接着在从库上创建与主库一样的数据库,用命令启动slave同步。如果看到Salave_IO_Runing与Salave_SQL_Running都是Yes,则表示配置成功。

遇到了坑怎么解决

我在配置的时候就遇到过一个问题:Salave_IO_Runing一直是no,不管从新配置多少次,依旧是这个结果。最终得益于某次的查询,发现是版本库不一样造成的,我的从库用的版本库的版本低于5.6。5.6的版本中加入了replication event checksum,主从复制时间校验功能,所以需要把这个关掉才能正常同步到5.5的slave。

清 单

  1. 配置之前需要检查一下版本号,高于5.6的版本方法上有不同。
  2. 配置中配主,再配从。
  3. 主的配置重点在用户的授权上,从的配置重点在用户的连接Master服务器的语句上。

原文发布于微信公众号 - 怀英的自我修炼(hydzwxl)

原文发表时间:2018-03-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

LAMP及部署wordpress/phpMyadmin

引言 lamp含义:黄金组合。简要介绍一下下面这四个东西吧。linux,不用说了有很多发行版本,主流的三大版本是Debian系列,RedHat系列,slackw...

3497
来自专栏数据和云

数据恢复:如何恢复Linux中意外删除的Oracle和MySQL数据库

张乐奕 云和恩墨副总经理,Oracle ACE总监,ACOUG 联合创始人 没有删除过数据库的DBA职业生涯是不完整的,删除过数据库还能幸存的DBA一定是订阅...

3146
来自专栏Zephery

谈谈个人网站的建立(六)—— 数据库同步

先来回顾一下上一篇的小集群架构,tomcat集群,nginx进行反向代理,服务器异地: ? 由上一篇讲到,部署的时候,将war部署在不同的服务器里,通过spri...

4585
来自专栏惨绿少年

Zabbix 3.0 从入门到精通(zabbix使用详解)

第1章 zabbix监控 1.1 为什么要监控      在需要的时刻,提前提醒我们服务器出问题了      当出问题之后,可以找到问题的根源      网站/...

8901
来自专栏沈唁志

宝塔面板Mysql 5.6版本无法正常启动的解决方法

朋友找我的时候说的是 Mysql 启动不了,看他发的截图是宝塔面板,就要来了面板信息去看了一下

1.4K2
来自专栏芋道源码1024

Redis 从入门到放飞(下)

Redis在实际使用过程中更多的用作缓存,然而缓存的数据一般都是需要设置生存时间的,即:到期后数据销毁。

961
来自专栏北京马哥教育

25个Linux服务器安全小贴士,总有一条用得上!

大家都认为 Linux 默认是安全的,我大体是认可的 (这是个有争议的话题)。Linux默认确实有内置的安全模型。你需要打开它并且对其进行定制,这样才能得到更安...

35712
来自专栏信安之路

从面试题中学安全

根据 Github 上的面经总结的一些安全岗面试的基础知识,这些基础知识不仅要牢记,而且要熟练操作,分享给大家,共勉。

1320
来自专栏数据和云

Oracle 12.2新特性掌上手册 - 第五卷 RAC and Grid

编辑手记:RAC是Oracle最重要的高可用架构之一,具有扩展性良好、实现负载均衡等多维度的优势,Oracle RAC提供了相应的集群软件和存储管理软件,今天我...

2884
来自专栏北京马哥教育

linux安全小贴士

对于系统管理员,让产品的系统更安全,免于骇客和黑客的攻击,一直是一项挑战。这是我们关于“如何让Linux系统更安全” 或者 “加固Linux系统“之类话题的第一...

3168

扫码关注云+社区