MySQL迁移方案(后续再补充)
出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。
1 Master - 1 Slave 结构迁移Slave

- 查看监控在业务低访问量时Master 压力大还是Slave压力大, 使用xtrabackup 备份 , 如果是从Slave备份带上 " --slave-info " 参数 , SCP 传输到 C-Slave ( 后备从库 ) , 然后在 C-Slave 进行恢复操作并且Change Master 到 Master , 停Slave ,
- 使用pt-table-sync , pt-table-checksum 数据校验 ,最后把读业务的应用切换到C-Slave ,
- 这样做主从库受影响少,对Slave进行备份读库操作和流备份写盘操作,流备份只对网络有影响 ,一般服务器都有多个网卡, 有划分为业务端口,管理端口,其他用途端口
解决 rsync 从库前要把应用切换读操作到Master , 增加Master访问压力,没有人能够预计在低访问量时候会不会突然增加.
1 Master - 1 Slave 结构完整迁移1 Master - 1 Slave

- 查看监控在业务低访问量时Master 压力大还是Slave压力大, 使用xtrabackup 备份 , 如果是从Slave备份 带上 " --slave-info " 参数 , SCP 传输到 C-Master ( 后备主库 ) 和 C-Slave ( 后备从库 )
- 然后在 C-Master 进行恢复操作并且Change Master 到 Master 、 C-Slave 进行恢复操作并且reset master 和 Change Master 到 C-Master , 这时候 C-Master 和 C-Slave 数据是一样的 ,待C-Master跟Master数据同步完成把业务应用切换到C-Master 和C-Slave
- 这样做主从库受影响少,对Slave进行备份读库操作和流备份写盘操作,流备份只对网络有影响 ,一般服务器都有多个网卡, 有划分为业务端口,管理端口,其他用途端口
为什么不使用mydumper 或者mysqldump 导出库呢?
针对水平和垂直分库分表进行指定库或者指定表迁移

原Master – Slave 已经进行对库垂直拆分和水平拆分 , 由于业务访问量增长过多,服务器硬件限制,再对库和表进行垂直拆分和水平拆分也不能解决访问压力,从而进行物理上水平拆分,也需要应用上进行跨库跨节点进行join
- 查看监控在业务低访问量时Master 压力大还是Slave压力大, 使用xtrabackup 备份 , 如果是Slave 带上 " --slave-info " 参数 , 另外使用 ‘ --databases="database1.mytable1 .... mysql" ‘ 参数进行指定库和指定表进行备份但不能进行流备份,两个功能暂时有冲突,只能文件级别备份再用rsync或者scp 进行复制,此时C-Master-1和C-Slave-1备份数据是一样的, C-Master-2和C-Slave-2备份数据一样。
- 分别对表和库进行备份传输到C-Master-*和C-Slave-*后进行恢复,C-Slave-* 要reset master , C-Master-1和C-Master-2要change master 到 Master , C-Slave-* 要change master 到所连接的C-Master
- 待C-Master-*跟Master数据同步完成把业务应用切换
- 这样做影响业务最少, 还是那句话 没有人能够预计在低访问量时候会不会突然增加.
注意事项:
每台机器的 server_id 必须保证不一致,否则会出现同步异常的情况 , 配置 replicate-ignore-db 和 replicate-wild-do-table , 从库记得把 read_only = 1 加上
MySQL迁移方案(后续再补充)的更多相关文章
- Appium Capabilities 详解(Android适配/IOS后续再补充)
Appium 关键字 关键字 描述 实例 automationName 你想使用的自动化测试引擎 Appium (默认) 或 Selendroid platformName 你要测试的手机操作系统 i ...
- 不同场景下 MySQL 的迁移方案
一 目录 一 目录 二 为什么要迁移 三 MySQL 迁移方案概览 四 MySQL 迁移实战 4.1 场景一 一主一从结构迁移从库 4.2 场景二 一主一从结构迁移指定库 4.3 场景三 一主一从结构 ...
- MySQL迁移[转]
http://dbarobin.com/2015/09/15/migration-of-mysql-on-different-scenes/ MySQL 迁移方案概览 MySQL 迁移无非是围绕着数据 ...
- mysql迁移之巨大数据量快速迁移方案
mysql迁移之巨大数据量快速迁移方案-增量备份及恢复 --chenjianwen 一.前言: 当mysql库的大小达到几十个G或者上百G,迁移起来是一件非常费事的事情,业务中断,导出导入耗费大量的时 ...
- 数据从mysql迁移至oracle时知识点记录(一)
最近在做数据的迁移,再将数据从mysql迁移至oracle时,部分sql语句进行了修改,在此对部分知识点进行记录: 参考资料:https://dev.mysql.com/doc/refman/5.5/ ...
- 蚂蚁金服 Service Mesh 渐进式迁移方案|Service Mesh Meetup 实录
小蚂蚁说: 本文是基于在 Service Mesher Meetup 上海站的主题分享<蚂蚁金服 Service Mesh 渐进式迁移方案>内容整理,完整的分享 PPT 获取方式见文章底部 ...
- Ceph 集群整体迁移方案(转)
场景介绍:在我们的IDC中,存在着运行了3-6年的Ceph集群的服务器,这些服务器性能和容量等都已经无法满足当前业务的需求,在购入一批高性能机器后,希望将旧机器上的集群整体迁移到新机器上,当然,是保证 ...
- mysql迁移mpp数据库Greenplum
1. 场景描述 因兄弟项目中mysql有点扛不住了,要做sql优化,但是业务有点小复杂,优化起来有点麻烦(sql嵌套有点多),便想着用Mpp数据库Greenplum测试下,看性能和复杂度怎么样,趟趟水 ...
- 将数据从MySQL迁移到Oracle的注意事项
将数据从MySQL迁移到Oracle的注意事项1.自动增长的数据类型处理MYSQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值.ORACLE没有自动增长的数据类型,需要建立一个自动 ...
随机推荐
- 初识java这个小姑娘(二)
妙解垃圾回收机制 周一,早高峰. 一段考验一个人耐力.智力.开车技术以及脾气的路. 我把车开进了一个没有红绿灯的丁字路口,然后就没有然后了. 来自三个方向的大车小车开始在不大的一块空间里开始互相斗智斗 ...
- JavaScript tips ——搞定闰年
前言 处理时间时,常常要考虑用户的输入是否合法,其中一个很典型的场景就是平闰年的判断,网上其实有很多类似的算法,但是其实不必那么麻烦,下面我讲讲的我的思路. 规则 公元年数可被4整除为闰年,但是整百( ...
- 鼠标悬停,图片放大 CSS实现
因为最近做的项目刚好用到了这个实现,分享出来 class=enlarge 为div标签的class div img 为标签 .enlarge div img:hover{ transform: s ...
- 使用Python提取中文字符
#功能:国际化测试,用于提取应用设计包中的中文字符,并输出report#解压---筛选---整理路径---提取中文---输出报告 ################################### ...
- LeetCode :My solution N-Queens
N-Queens Total Accepted: 15603 Total Submissions: 60198My Submissions The n-queens puzzle is the pro ...
- 【C语言】统计数组中出现次数超过一半的数字
//统计数组中出现次数超过一半的数字 #include <stdio.h> int Find(int *arr, int len) { int num = 0; //当前数字 int ti ...
- Jenkins具体安装与构建部署使用教程
Jenkins是一个开源软件项目.旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. Jenkins是基于Java开发的一种持续集成工具,用于监控持续反复的工作,功能包含:1.持续的软件版本号 ...
- 为 NativeScript 项目添加 iOS / Android 平台 API 的智能感知
使用 NativeScript ,我们可以很容易的调用平台的原生 API,在开发过程中,我们可以添加这些 API 的 d.ts 文件来提供智能感知,帮助我们更方便的构建媲美原生的 APP. 首先通过 ...
- Python datatime 格式转换,插入MySQL数据库
Python datatime 格式转换,插入MySQL数据库 zoerywzhou@163.com http://www.cnblogs.com/swje/ 作者:Zhouwan 2017-11-2 ...
- TypeScript学习笔记之类
TypeScript的类,简单地定义如下: class Person { x: number; // 默认为public类型 y: number; constructor(x1: number, y1 ...