mysql主从复制简单实现

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

在mysql的复制中,相对于主主复制,主从架构的稳定性更好,而主主总是会有些问题存在,故不推荐。在大型架构中建议使用基于读写分离的主从复制

本文不涉及读写分离的内容,只是简单实现mysql的主从复制的实现。整个过程在理解复制的原理后就非常的简单,所以先简单介绍下原理。

 

mysql的主从复制的基本原理:

在主服务器上传送二进制日志到从服务器,在从服务器上读取收到的中继日志,执行日志中的sql语句,实现数据同步。

 

整个实现过程如下图所示,通过图片能很容易的看出整个流程

 

 

对于主从之间使用异步传输还是同步传输,具体看网络情况和整体架构而定

要注意,为了兼容性问题,主从服务器之间,master的mysql的版本要比slave版本低或者相同

如果在一个已存在数据的主服务器上部署备服务器,要先备份主服务器的数据,备份的时候做好二进制日志位置记录 ,然后恢复到从服务器上,并指定从服务器的从主服务器二进制日志的复制位置,从时间点开始复制

 

实现过程

首先在2台服务器上安装好mysql。安装步骤不再列出,我用的是绿色版安装,双方的mysql配置最好一样

 

修改my.cnf,master上修改server-id为1,slaver修改server-id为大于1的数字

master:

%9I~M)_YX0{4_8$55ZZ[I0A

slave:

37N{_Z6734`CVRL52M%6G(I

 

在从服务器上关闭二进制日志,避免从服务器上IO过高,并开启relay-log

RHB5R9)8[`MC)]$~$F49$KI

 

而且要在slave上限制写入

image

 

在master上创建复制用的帐号,此帐号只授予复制相关的权限

image

在slave上进入mysql命令行,设定master相关参数

{@8)V9JHSC2B%K4G1(~Q$H5

然后打开slave复制

J4EJ0V)X8[KV`08[GGARD31

查看slave状态

VI9H3Y_[%Q5J7WXFZMSK8}S

发现连接到master时出现错误

清空master和slave的iptables规则后重新启动slave,OK

image

试着在master上创建一个数据库

3NI{X6[HPC0726CJWAX6A8E

在slave上查看,已经成功复制过来

17VHGRO125F~]}ECGGFP$(W

 

如果在部署slave时master已经存有数据了,需要在master上备份数据,然后在slave上导入数据

在用mysqldump备份数据的时候,加上--master-data=2参数记录正在使用二进制日志文件和的POS位置

然后在slave上指定master服务器时,加上master_logfile=’xxx’,master_log_pos=xxx 指定起始的二进制文件和文件的pos位置开始复制

 

要让slave开启时暂时停止从服务器线程,在my.cnf中的mysqld段中加入以下参数

skip-slave-start=1

 

为了让服务器更加安全,防止断电产生事物已经提交,数据还未写入磁盘的问题,在master的my.cnf中的mysql段加入

sync_binlog=1

innodb_flush_logs_at_trx_commit=1



本文转自lustlost 51CTO博客,原文链接:http://blog.51cto.com/lustlost/979517,如需转载请自行联系原作者

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
SQL 存储 关系型数据库
MySQL的主从复制&主从同步
MySQL的主从复制&主从同步
30 0
|
4月前
|
SQL 关系型数据库 MySQL
面试官:说一下MySQL主从复制的原理?
面试官:说一下MySQL主从复制的原理?
94 0
面试官:说一下MySQL主从复制的原理?
|
4月前
|
SQL 关系型数据库 MySQL
MySQL主从复制
MySQL主从复制
|
16天前
|
负载均衡 容灾 关系型数据库
mysql主从复制
mysql主从复制
31 1
|
1月前
|
SQL 存储 运维
MySQL高可用性:主从复制和集群
MySQL高可用性:主从复制和集群
36 0
|
15天前
|
SQL 关系型数据库 MySQL
mysql主从复制
mysql主从复制
|
4月前
|
关系型数据库 MySQL Linux
Linux下搭建MySQL主从复制之一主一从架构
Linux下搭建MySQL主从复制之一主一从架构
59 0
|
1月前
|
SQL 网络协议 关系型数据库
【怒怼大厂面试官】听说你精通MySQL?来说说MySQL主从复制
面试官:MySQL主从复制了解吧?嗯嗯了解的。主要是利用了MySQL的Binary Log二进制文件。那我把二进制文件丢给从库,从库复制整个文件吗。噢噢不是的。
48 1
【怒怼大厂面试官】听说你精通MySQL?来说说MySQL主从复制
|
1月前
|
监控 负载均衡 关系型数据库
|
3月前
|
SQL 负载均衡 关系型数据库
MySQL(六)主从复制
MySQL(六)主从复制
27 0