为了做到无损切换并且考虑到主机可能发生磁盘损坏且无法恢复的场景,需要用到日志复制技术,将本地日志及时同步到其他节点。实现方式有三种:
随着数据库产品的更新迭代,修复bug等等,产品避免不了会出现升级的需求。TDSQL(MysqL版)也会有这方面的需求。接下来我就说说如何对现有TDSQL(MySQL版)集群组件进行升级,而不影响业务。下面我们主要讲DB组件的升级方式。
由于前面前面已经介绍过了mycat的安装以及配置,这里就不在细说,如果下面对mycat的操作不是很清楚,可以看上一篇文章。
思路:主备机通过inotify+rsync实现文件同步,通过mysql主主复制实现数据同步,同一时刻只有一台服务器能对外提供zabbix服务,web端登陆虚ip访问,被监控主机通过配置虚ip来完成监控。
(1)、假设外网虚拟IP 72.249.146.214上,内网hosts设置db10对应内网虚拟IP 192.168.146.214 (2)、默认情况下,由主机绑定内、外网虚拟IP,备机作为备份,当主机的MySQL、Nginx或服务器出现故障无法访问时, 备机会自动接管内、外网 虚拟IP。两台服务器都启动负责监控、自动切换虚拟IP的守护进程 /usr/bin/nohup /bin/sh /usr/local/webserver/failover/failover.sh 2>&1 > /dev/null &
GitHub - tencent-wechat/phxsql: A high availability MySQL cluster that guarantees data consistency between a master and slaves.
至于pg为什么不做这个功能我也想了很久,下面是我自己的一点猜测。pg是个追求完美主义的数据库,他从架构设计层面就会考虑如何做到完美,比如说他不用主流数据库都在使用的undo,我猜测这个原因是因为,使用undo有一个问题,undo空间不管是文件系统还是表空间都是有大小限制的,而数据库未提交的事务信息可能是无限大的,这样数据的前镜像总有可能将undo空间撑爆掉,这样就需要清理旧的undo段,如果需要查询的undo前镜像备清理了,数据库就会跑出错误,这就是oracle中经典的snapshot too old报错。所以pg摒弃了这种模式,因为他觉得必须要提供给用户一个需要的数据一定能查到的数据库,而不是本该能查到的数据被无端清理掉了,所以pg使用了多数据版本来解决这个问题,将前镜像的真实数据放在数据文件中,真正确保没有事务可能再去访问该数据时才进行清理。当然这样也带来膨胀的问题,这其实也是pg最遭人诟病的问题。
腾讯数据库技术发展之路 我来自腾讯TEG计费平台部,一开始负责公司整个计费体系的存储系统研发,现在主要负责TDSQL数据库的研发。这是我们产品的几个发展阶段: 我是2007年进入公司的,在此之前公司业
| 作者:杨壮壮 ,腾讯PCG运营开发工程师 ,目前主要从事 MDB(MySQL 云管平台)的后台开发与技术运营的工作,是一个做开发的DBA。熟悉腾讯自研数据库TDSQL的架构原理、集群管理维护、内核SQL优化等。MDB团队承载着整个PCG 关系型数据库的管理与运维工作,支撑着腾讯视频、看点等业务稳定运行。 1 Part1 前言 在今年的三月份,我们举办过一届数据库武林大会,在这场活动沙龙中,有辩手犀利地指出,数据库运维的薪资水平和数据库使用人数并不成正比,有数据表明一些小众但强大的数据库,其DBA的平均
传统的web站点,经常使用Nginx做反向代理。反向代理作为整个网站的入口,通常会承担流量转发、安全防护等工作,保证其高可用至关重要。为了保证反向代理的高可用,Nginx+Keepalived是一种常用的解决方案。
TASKCTL本身无数据库,无任何第三方中间件,整个产品信息均在一个文件目录下。因此,通过共享存储,连接两个不同应用环境,即可达到信息共享的目的。TASKCTL在信息共享的基础上,通过一定可靠的检测技术,保证两个主备环境的实例启停的自动切换,从而达到服务高可靠的目的。
对于一些关键数据,例如账户数据,对可靠性和一致性的要求非常高。我们宁可牺牲短暂时间内的可用性,也不允许数据出现错误或丢失。所以早期我们会发现业界存在这种现象:DB设置了主备同步,主DB挂了,但是不敢切换到备DB,只能暂停服务。这种现象的主要原因有两点:
数据库作为信息系统重要的基础设施,一直承担着压舱石的角色。互联网应用的高并发、海量数据使得数据库的负载越来越重,这在数据大集中的情况下愈发明显。而数据库作为信息系统唯一的“单点”,稳定性、可用性是首先要保证的目标。这里的单点并不是指数据库没有高可用方案,而是因为数据库只要涉及到数据的复制就一定是有状态的,有状态的应用更加难以运维,并且在遭遇异常时并不能做到真正意义上的无缝切换。
一 背景 金融行业的数据库市场,尤其是银行的核心交易系统,一直是Oracle、DB2这类传统商业数据库的天下,但是: 2014年,微众银行选用TDSQL作为其核心交易系统的数据库解决方案; 2015年,腾讯金融云正式推出TDSQL数据库解决方案,在公有云以及私有云上投入商用,覆盖包括银行、保险、互联网金融、物联网等多个行业领域。 这标志着TDSQL已经开始进入这个领域,虽然目前,金融、传统行业的核心数据库依然是Oracle、DB2们占主导,但是TDSQL对外开放仅两年,已经为40个金融政企机构提供数
由于网络存储的快速发展,网络冗余技术被不断提升,提高IT系统的高可用性的关键应用就是网络高可用性,网络高可用性与网络高可靠性是有区别的,网络高可用性是通过匹配冗余的网络设备实现网络设备的冗余,达到高可用的目的。 比如冗余的交换机,冗余的路由器等
文章主要介绍了分布式数据库在金融互联网场景下的设计和实现,包括DCDB的架构、基础环境、实例配置、功能、性能、以及扩展性。同时,还探讨了分布式数据库在云原生架构下的应用和挑战,以及TDSQL在金融云上的解决方案和案例。
master开启二进制日志后默认记录所有库所有表的操作,可以通过配置来指定只记录指定的数据库甚至指定的表的操作,具体在mysql配置文件的[mysqld]可添加修改如下选项:
多年DBA工作,也遇到很多数据库疑难杂症,其处理和分析值得记录和分享,准备写一个系列文章,这是第1篇。
在互联网项目中,当业务规模越来越大,数据越来越多,随之而来的就是数据库压力会越来越大。慢慢就会发现,数据库层可能已经成为了整个系统的关键点和性能瓶颈了,因此实现数据层的高可用就成为了我们项目中经常要解决的问题。
利用主从复制+GTID的特性实现异地数据同步与读写分离。下面是实现细节与不同于常规方案的特性。
数据存储高可用的方案本质都是通过将数据复制到多个存储设备,通过数据冗余的方式来实现高可用。常见的高可用架构有主备、主从、主从切换、主主等接下来我们聊聊每种架构的优缺点。
高可用性即HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。 计算机系统的高可用在不同的层面上有不同的表现:
同城异地灾备,主要是用来进行备份容灾的,从而当一个数据中心挂了,另外一个数据中心经过切换之后,能让服务迅速的恢复。
4个指标怎么看呢?实际上是在 已经搭建主从同步的slave端执行 show slave status的结果,如下所示:
导读:《架构设计》系列为极客时间李运华老师《从0开始学架构》课程笔记。本文为第五部分,主要介绍高可用存储架构,分别介绍了双机架构和集群架构以及各种具体方案的优缺点和应用场景。
mysql:以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过长,会让其他session无法更新此表中的数据。
本文介绍了Amazon Aurora的架构和原理,重点探讨了Aurora的存储、事务、高可用、成本节省等方面的特性。Aurora由三个主要组件构成:Aurora主实例、Aurora只读实例和Aurora存储。Aurora主实例和只读实例通过Aurora存储进行数据同步。Aurora支持多可用区部署,并具有自动数据恢复功能。使用Aurora可以降低延迟并提高吞吐量,同时保持高可用性。此外,Aurora还提供了灵活的扩展和收缩能力。
不管是为了满足业务发展的需要,还是为了提升自己的竞争力,关系数据库厂商(Oracle、DB2、MySQL 等)在优化和提升单个数据库服务器的性能方面也做了非常多的技术优化和改进。但业务发展速度和数据增长速度,远远超出数据库厂商的优化速度,尤其是互联网业务兴起之后,海量用户加上海量数据的特点,单个数据库服务器已经难以满足业务需要,必须考虑数据库集群的方式来提升性能。
可用性是一个可以量化的指标,计算的公式在维基百科中是这样描述的:根据系统损害、无法使用的时间,以及由无法运作恢复到可运作状况的时间,与系统总运作时间的比较。行业内一般用几个9表示可用性指标,对应用的可用性程度一般衡量标准有三个9到五个9;一般我们的系统至少要到 4 个 9(99.99%)的可用性才能谈得上高可用。
故障是运维人员永远的痛。相信每一个运维人员的KPI中都有一项:可用性。可用性高就是不出故障,各个公司对可用性和故障评级的标准都不相同,但是避免故障的方法却是殊途同归。我们怎么避免故障,沃趣科技简单列举了以下几条,与大家共勉! 1、变更要有回滚,在同样的环境测试过 2、对破坏性的操作谨慎小心 3、设置好命令提示 4、备份并验证备份有效性 5、对生产环境存有敬畏之心 6、交接和休假最容易出故障,变更请谨慎 7、搭建报警,及时获得出错信息。搭建性能监控,了解历史,获得趋势,预测未来 8、自动切换需谨慎 9、仔细一
为帮助开发者更好的了解和运用数据库,腾讯云数据库团队特出品《深入浅出理解云数据库》系列文章,从数据库的基本概念到云数据库特性及应用,从数据库基础原理知识到腾讯云经典实战案例解读,带你走进云数据库的世界。关注“腾讯云数据库”微信公众号,开启2020年的DB修炼之旅。 第一回请点击:数据库的基本概念和云数据库特性 第二回请点击:云数据库的市场应用及基础原理知识 1 PartⅠ 腾讯云数据库产品总览 接下来的章节中我们以腾讯云数据库为例,来详细解读云数据库的功能和特性等。 首先来让我们用一张表来看清楚腾讯
为保证数据库的安全和效率,可以使用主从备份,当有写的操作可以在主服务器上操作,操作完之后备份到从服务器上,当有读操作时可以访问从服务器,这样在一定程度上保证了数据库的安全,当主服务器的mysql挂掉之后,数据也不会丢失,同时也提高了数据库的效率。
虽然近十年来各种存储技术飞速发展,但关系数据库由于其ACID的特性和功能强大的SQL查询,目前还是各种业务系统中关键和核心的存储系统,很多场景下高性能的设计最核心的部分就是关系数据库的设计。
腾讯云数据库国产数据库专题线上技术沙龙正在火热进行中,3月24日吴夏的分享已经结束,没来得及参与的小伙伴不用担心,以下就是直播的视频和文字回顾。 关注“腾讯云数据库”公众号,回复“0324吴夏”,即可下载直播分享PPT。 大家好,我是腾讯云TDSQL高级工程师吴夏,我今天的主题是关于TDSQL异构数据同步与迁移能力的建设以及应用方面的内容。整个内容分四个部分: 一是异构数据库方面包括数据分发迁移同步的背景——我们为什么要发展这一块的能力以及现在这部分服务的基本架构; 二是TDSQL异构迁移能力有哪些比较
随着客户上云的加快,客户越来越希望直接采用云上的数据库系统支撑业务发展,作为服务商来讲,了解云上的数据库的应用场景及常见特性成为必然。否则,将出现与客户交流困难,影响项目成效的麻烦事。今天我们讲五种常见的云数据库,这些内容也是在与客户沟通交流中的常见问题。
TDSQL是腾讯提供的一套完整的MySQL数据库集群化管理解决方案,作为私有云TStack平台重要的数据库产品能力,旨在解决高可用、高性能、分布式、配套设施等方面问题。 TDSQL除了在腾讯内部有大量的使用场景,在外部市场中也有诸多应用场景;2014年被WeBank选中,作为其核心交易系统的数据库解决方案,以私有云方式交付;2015年,在腾讯云上正式推出。目前已经为500+机构提供数据库的公有云及专有云服务,客户覆盖计费、第三方支付、银行、保险、互联网金融、物联网、互联网+、政务等领域。 TDSQL私有云版
例如:如果使用 Navicat、PHPMyAdmin 之类的可视化工具,可以直接点击转储 SQL 文件,或者导出 SQL 文件之类的功能。
但是使用这样的一个双机主备是存在一些问题的, 就是需要采购两台云服务器, 价格比较贵, 如果主节点从来不发生故障的话, 所有的流量其实一致都是在主节点上的, 备用机,永远都用不上. 存在资源浪费的情况
在集群当中离不开的一个词就是是高可用,用本文来简单聊聊keepalived是什么、keepalived如何实现高可用、keepalived的使用场景。
在云网融合大数据时代,数据已经成为重要的生产要素。特别是棱镜门、永恒之蓝、汶川大地震这类造成大规模数据丢失和泄漏的人为或自然灾害事件发生后,中国相继出台了一系列的法律法规,对各组织机构的数据安全保护条件进行限定,如 2016 年颁布的《中华人民共和国网络安全法》、 2021 年全国人民代表大会通过的《数据安全法》等。
郜德光,携程技术保障中心高级数据库经理,负责数据库相关的运维工作,参与了SQL Server和MySQL的高可用以及数据库容灾建设。喜欢钻研技术,对数据相关的技术一直保持着浓厚的兴趣。
大型国有银行,整体核心的系统都是大机+DB2 这样的传统架构;针对现在的互联网金融业务快速扩张的需求,传统的架构面临着比较大的挑战。
在分布式系统中,单机节点在发生故障时无法提供服务,这可能导致长期的服务不可用,从而影响其他节点的运作,导致的后果非常严重
192.168.77.100 master-private.ha.com master-private
领取专属 10元无门槛券
手把手带您无忧上云