目前暂时还没有哪款数据库产品是专门针对跨IDC进行的优化,在理论上被业界认为最优的方案是采用基于Paxos协议(暂时只有google做出了实现,google f1),今天只讨论MySQL在这方面的注意事项:

对于跨IDC的情况基本都会设计到以下问题:

1、MySQL多IDC的数据同步,数据一致性

2、多IDC之间的高可用

3、多IDC的多点写入问题
4、运维监控

对于MySQL多IDC数据之间的同步问题:

1、MySQL的复制是异步的(对于5.5的半同步来说,还是属于“异步的”),MySQL同步依赖的因素很多,同步的网络环境,硬件配置,SQL语句是否高效,以及数据量的大小。

在数据量较大的情况下在master和slave端启用slave-compressed-protocol = 1压缩模式,网络环境采用专线。可以利用blackhole存储引擎的MySQL作为relay server实现级联复制,这个最好控制在三层内,减少同步的延迟,减少机房之间传输的数据量。关于SQL语句,索引不要太多,影响插入速度,注意更新和删除的问题,如果采用row模式进行复制,数据量是个问题,建议采用mixed模式进行复制。对于实时性要求较高的应用可以允许第一次读的时候从主库上读取。或者在应用端给出等待时间来缓解同步延迟对用户的影响。

2、对于多IDC中的高可用问题。

对于采用relay server的方式,可以采用两台server,每隔relay下面都是一个slave集群。当某个出现问题的时候,可以只访问另一个slave集群。

对于采用双主模式的情况下,这个容灾方式比较明显,每个master下都接一个slave集群。但对于多IDC部署的话缺点也很明显,只能使用两个IDC。
3、多点写入问题

双主复制,环状复制,通过federated引擎都可以实现多点写入。这个时候对于多点写入需要考虑自增问题,可通过auto_increment_increment=N(增量值,且N是节点数)和auto_increment_offset=1,2,3,。。。N (初始值)来解决。更新丢失问题。每个master只写本地数据,slave拥有全部数据,这个时候数据是以一定次序出现的。利用消息队列,数据写入本地数据库时也写入消息队列中(本人为涉及到)

4、运维监控问题

监控系统对整个维护过程中起着很重要的作用。为防止在多IDC之间网络环境的影响,最好采用分布式监控,并且每个IDC的监控系统都能独立工作,可以参考zabbix,ganglia(两个开源企业级监控系统)

参考:http://www.4090.cn/arc-19415-1.html

http://wenku.baidu.com/view/d28f5fc20c22590102029d94.html

转载于:https://blog.51cto.com/weipengfei/979672

MySQL多IDC部署注意事项相关推荐

  1. 4步搞定MySQL安装部署(附MySQL一键式部署脚本)

    墨墨导读:良好的开端是成功的一半,从MySQL安装开始. 学习数据库技术,实际动手的第一步是安装自己的MySQL.MySQL方面也提供多样式的安装方式rpm ,tar ,源码包.当安装完投入使用之后, ...

  2. 基于java二次元信息分享平台计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署

    基于java二次元信息分享平台计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java二次元信息分享平台计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 项目架构:B ...

  3. 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署

    基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库 ...

  4. 网站服务器部署注意事项,服务器部署改云部署注意事项

    服务器部署改云部署注意事项 内容精选 换一换 使用华为云提供的公共镜像制作私有镜像时,您需先购买云主机等云资源时镜像选择公共镜像.云服务器类型建议统一选择"s3 (通用计算型)", ...

  5. wp7 关于真机调试,部署注意事项

    关于真机调试,部署注意事项 1.真机调试机器需要解锁或者越狱 .(推荐越狱,解锁需要app hub账户,需要提交微软审核,步骤麻烦) 2.真机调试 机器不能锁屏 3.真机调试必须安装启动zune so ...

  6. 【MySQL】MHA部署与MasterFailover代码分析

    [MySQL]MHA部署与MasterFailover代码分析 官网:https://code.google.com/p/mysql-master-ha/ 参考:http://blog.csdn.ne ...

  7. mysql高可靠部署_可能是我见过最好的 MySQL 高可用解决方案 MySQL InnoDB Cluster 中文教程!...

    公众号关注 「运维之美」设为「星标」,每天带你玩转 Linux ! 这篇文章将详细地介绍 MySQL 的高可用解决方案-- MySQL InnoDB Cluster. 说到高可用性,首先要了解一下什么 ...

  8. ssh项目同时使用mysql跟sqlserver数据库_MSSQL_如何把sqlserver数据迁移到mysql数据库及需要注意事项,在项目开发中,有时由于项目 - phpStudy...

    如何把sqlserver数据迁移到mysql数据库及需要注意事项 在项目开发中,有时由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Serve ...

  9. pythonmysql部署_详解centos7+django+python3+mysql+阿里云部署项目全流程

    (PS:本文假设你已经在本地联调好django和客户端,只是需要将django部署到外网) 购买阿里云服务器 到[阿里云官网],选择轻量应用服务器, 步骤如图所示: 地域随便选择哪一个,镜像的话,对比 ...

  10. 零基础带你学习MySQL—Select语句以及注意事项(十)

    零基础带你学习MySQL-Select语句以及注意事项(十)

最新文章

  1. mysql链接数据库properties_mysql 之通过配置文件链接数据库
  2. ceph bluestore源码分析:非对齐写逻辑
  3. Eclipse真机测试注意事项
  4. python连接kafka-python连接kafka生产者,消费者脚本
  5. 腾讯开源国内首个H.266/VVC视频播放器
  6. 马斯克调侃苹果145元“抹布” !网友补刀:779元的空酒瓶比天价“抹布”更迷惑...
  7. 用科学计算机log21 p x,山东理工大学数据结构期末 试题及答案
  8. 百面机器学习—9.前馈神经网络面试问题总结
  9. mysql over rank_总结几种MySQL中常见的排名问题
  10. Office 检测到一个与此文件相关的问题为帮助保护您的计算机,无法打开此文件。
  11. win11系统安装vmware虚拟机win10 汇总
  12. CAD插件学习系列教程(一) 贱人工具箱的使用
  13. (附源码)node.js基于vue框架潮牌官网设计与实现 毕业设计 010955
  14. 面试常问-Alpha测试和Beta测试
  15. Zookeeper 服务器端和客户端扩大节点数据1M大小限制
  16. Argo-DCS数据传输笔记
  17. 流氓迅雷,永别了万恶的迅雷,永别了万恶的迅雷播放组件
  18. 数据分析师需要学习什么?
  19. (翻译)邀请好友模式(Invite friends)
  20. 知识图谱——领域知识问答系统简单介绍

热门文章

  1. Machine Learning ——Homework3
  2. 如何高效和快乐的学习RS和GIS知识
  3. android自定义软键盘
  4. 算法笔记-------基数排序
  5. ApacheCon Asia 2021 重磅开启!流处理专题 Call for Speaker
  6. c语言表达式4 6的值是,C语言中,为什么指针表达式的值+1.对应的地址值却+4?/为什么两个数组元素的地址相减之差不为地址之差?...
  7. linux sdl 显示内存,Linux系统:如何解决sdl安装遇到的问题
  8. plc和pc串口通讯接线_PLC与PC机之间的串行通信
  9. 文本聚类python fcm_机器学习笔记----Fuzzy c-means(FCM)模糊聚类详解及matlab实现
  10. gin -get请求的小示例2-Handle处理post请求