1.环境要求

操作系统:centOS6.5或以上

Mysql版本:mysql5.5

主机配置:4核CPU、4G内存

2.主从复制的方式

mysql5.6开始主从复制有两种方式:基于日志(binlog)、基于GTID(全局十事务标示符),下面主要介绍基于日志(binlog)的复制。

主从复制的原理

master将数据改变记录到二进制文件(binary log)中,也就是配置文件log-bin指定的文件,这些记录叫做二进制事件(binary log events);

slave通过I/O线程读取master中的binary log events并写入到它的中继日志(relay log);

slave重做中继日志中的事件,把中继日志中的事件信息一条一条的在本地执行一次完成数据在本地的存储,进而实现将改变反映到自己的数据;

3.主从复制注意的点

主从服务器操作系统版本和位数一致

master和slave数据库的版本要一致

master和slave数据库中的数据要一致

master开启二进制日志,master和slave的server_id在局域网内必须唯一

4.主从配置简要步骤

master上面的配置:

1.安装数据库

2.修改数据库配置文件,指明server_id,开启二进制日志(log-bin)

3.启动数据库,查看当前是哪个日志,position号是多少

4.登录数据库,授权数据复制用户

5.备份数据库(记得加锁和解锁)

6.传送备份数据到slave上

7.启动数据库

slave上面的配置:

1.安装数据库

2.修改数据库配置文件,指明server_id

3.启动数据库,还原备份

4.查看当前是哪个日志,position号是多少

5.指明master的地址、用户、密码等信息

6.开启同步,查看状态

5.单向主从环境的搭建

两台数据库服务器的selinux都要disable(永久关闭selinux,请修改/etc/selinux/config,将SELINUX改为disabled)

修改master的配置文件/etc/my.cnf,增加以下配置项:

server_id = 100  #一般设置为ip的最后一部分

binlog-do-db = admin  #需要备份的数据库

binlog-ignore-db = mysql #不需要复制的数据库

log-bin = edu-mysql-bin #开启二进制日志功能,可以随便定义但是建议有含义

6.重新启动master数据库服务,创建数据库,创建数据库同步用户并授予相应的权限

创建数据库同步用户并授予相应的权限:

grant replication slave, replication client on *.* to 'repl'@'192.168.1.206' identified by 'admin.123';

flush privileges;

show master status; #查看position号,记下position号(从机上需要用到这个position和现在的日志文件)

7.创建admin库、表,并写入一定量的数据,用于模拟现有的业务系统数据库

8.修改slave的配置文件/etc/my.cnf,增加以下配置项:

server_id = 206    #一般设置为ip的最后一部分

binlog-do-db = admin  #需要备份的数据库

binlog-ignore-db = mysql #不需要复制的数据库

log-bin = edu-mysql-bin #开启二进制日志功能,以备 Slave 作为其它 Slave 的 Master 时使用

9.重启slave数据库服务,将数据复制到从数据库中

10.slave中添加master相关信息

change master to master_host='121.199.168.20', master_user='repl', master_password='admin.123', master_port=3306,      master_log_file='edu-mysql-bin.000008' , master_log_pos=513, master_connect_retry=30;

上述参数说明:

master_log_file、master_log_pos是通过上述master的状态获取的

master_connect_retry   #当重新建立主从连接时,如果连接建立失败,间隔多久后重试。 单位为秒,默认设置为 60 秒,同步延迟调优参数。

11.slave执行主从同步:start slave;

12.show slave status\G;

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

这两个参数为Yes显示主从状态正常

13.主从配置完成,可以在master上面修改数据库验证slave数据库是否发生了改变

14.注意:如果再slave没做只读控制的情况下,千万不要在slave中手动插入数据,那样数据就会不一致,主从就会断开,就需要重新配置了

15.如果同步过程中出现错误,可以在slave上重置主从复制数据

reset slave

change master to master_host='121.199.168.20', master_user='repl', master_password='admin.123', master_port=3306,      master_log_file='edu-mysql-bin.000008' , master_log_pos=513, master_connect_retry=30;

master_log_file、master_log_pos根据最新的master状态获取

mysql cluster 设置单向复制_mysql单向主从配置相关推荐

  1. mysql cluster 设置单向复制_MySQL replication 单向复制实验配置(chn)

    一. 安装环境 RedHat AS4.0 MySQL 5.1.42 :MySQL-server-community-5.1.42-0.rhel4.i386.rpm MySQL-client-commu ...

  2. mysql字符集设置方案_MySQL的字符集配置

    utf8的锅: 场景 : 之前在给客户做微商城时,需要保存微信的授权信息,此时就有一个nickname字段,在设计数据表时,潜意识的将表的存储格式设置为utf8,生产上线一段时间后偶尔出现保存异常.经 ...

  3. mysql cluster 设置单向复制_mysql5.6做单向主从复制Replication

    原理场景:MySQL从3.23版本开始提供复制功能.指的是将主数据库的DDL和DML操作通过二进制日志传到从服务器(也叫从库),然后在从库上对这些日志重新执行, 从而使得从库和主库的数据保持同步. 优 ...

  4. mysql 从库_mysql数据库主从配置

    在一篇文章<离线安装mysql数据库>,讲解了离线安装mysql数据库的过程,本文将讲解mysql数据库的主从配置方法.mysql数据库进行主从配置后,可以实现数据库的备份.同时应用也可以 ...

  5. mysql 主从配置指定数据库_Mysql数据库主从配置

    Mysql主从同步 Mysql数据库进行主从配置后,可以实现数据库的备份.同时应用也可以实现读写分离,提高应用的并发量. 主从同步原理 主从原理大致有三个步骤: 在主库上把数据更改记录到二进制日志中( ...

  6. mysql cluster自动安装_MySQL Cluster 安装

    下载软件包: [root@mysql1 paul]# wget http://cdn.mysql.com/Downloads/MySQL-Cluster-7.2/mysql-cluster-gpl-7 ...

  7. cent os 7 mysql_cent os + MySQL Cluster 7.3.7 集群配置

    一.环境: CentOS6.3(64位) + MySQL Cluster 7.3.7,规划5台虚拟机器,1G内存,分工如下: MGM:10.10.10.41(管理节点) NDBD1:10.10.10. ...

  8. mysql cluster cge (commercial)_Mysql 产品分类和版本说明

    MySQL Community Server是开源免费的,这也是我们通常用的MySQL的版本. 根据不同的操作系统平台细分为多个产品分类,具体分类如下: 1. MySQL Community Serv ...

  9. mysql cluster常见问题访问_MySQL Cluster的常见问题

    MySQL Cluster是MySQL适合于分布式计算环境的高实用.高冗余版本.它采用了NDB Cluster存储引擎,允许在1个Cluster中运行多个MySQL服务器. MySQL Cluster ...

最新文章

  1. l-logger命令基本介绍
  2. 图书馆自动化系统 Evergreen 3.3 发布,迁移到 Angular
  3. shell脚本编程《linux下kvm虚拟机的创建、开启、显示、停止、重置》
  4. 使用sed,awk将love转换成LOVE,将CHINA转换成china
  5. Linux软件包管理的知识点,Linux基础知识之软件包管理(二)
  6. 高德地图的标志放大_点标记-覆盖物-教程-地图 JS API | 高德地图API
  7. mysql统计每个科目平均成绩_No.03 数据库经典面试之如何取出每科成绩的前三名...
  8. 重磅发布|蚂蚁金服与电子标准院达成战略合作 共同推进数据安全行业的标准化...
  9. 软工网络15团队作业4-DAY5
  10. android通过WebView的evaluateJavascript()调用JS
  11. winform界面嵌入dwg图纸_完美解决窗体中预览DWG图形(C#版)
  12. unity3d的uGUI基本操作
  13. 史上最强三千六百道脑筋急转弯(5)
  14. hp 官方没有针对 mac 的显示器驱动
  15. 安卓电子书格式_(干货)mobi电子书,没有Kindle也能读?
  16. 鸟哥的linux私房菜中推荐的linux学习网站
  17. autocad r14 win7补丁_AutoCAD R14几个实用补丁
  18. 深入理解CatBoost
  19. java工作愿景_2018年年终总结以及来年目标愿景
  20. jQuery 利用 :even 和 :odd偶数奇数 进行变色

热门文章

  1. 如何处理班级过多的问题
  2. nosql的数据服务_使用NoSQL实现实体服务–第3部分:CouchDB
  3. 异步EJB只是一个Gi头吗?
  4. Spring Stateless State Security第3部分:JWT +社会认证
  5. 使用Gradle构建和应用AST转换
  6. JPA 2.1实体图–第1部分:命名实体图
  7. Spring面向方面的编程
  8. 用于J2EE开发的Cloud IDE
  9. MOXy的对象图– XML和JSON的输入/输出局部模型
  10. 您是否应该信任JVM中的默认设置?