草庐IT

主从分片

全部标签

一文讲解MySQL的主从复制

阿粉在前面的几篇文章中,说了索引的分析,索引的原理,以及慢查询应该怎么去做合理的优化,接下来阿粉也给大家说说这个MySQL的组从复制到底是个怎么回事。主从模式MySQL主从模式是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,从节点可以复制主数据库中的所有数据库,或者特定的数据库,或者特定的表。mysql主从复制用途:实时灾备,用于故障切换(高可用)读写分离,提供查询服务(读扩展)数据备份,避免影响业务(高可用)主从部署必要条件:从库服务器能连通主库主库开启binlog日志(设置log-bin参

一文讲解MySQL的主从复制

阿粉在前面的几篇文章中,说了索引的分析,索引的原理,以及慢查询应该怎么去做合理的优化,接下来阿粉也给大家说说这个MySQL的组从复制到底是个怎么回事。主从模式MySQL主从模式是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,从节点可以复制主数据库中的所有数据库,或者特定的数据库,或者特定的表。mysql主从复制用途:实时灾备,用于故障切换(高可用)读写分离,提供查询服务(读扩展)数据备份,避免影响业务(高可用)主从部署必要条件:从库服务器能连通主库主库开启binlog日志(设置log-bin参

从节点崩了,还怎么「主从读写分离」?

你好,我是悟空。本篇主要内容如下:目录背景我们的项目采用了读写分离的方案:查询和更新的业务走主库,统计相关的功能走从库,从而减少主库的压力。原理如下图所示:读写分离的方案如果从库崩了,实在无法访问了,就会把所有请求打到主库上。原理如下图所示:从节点崩了,部分流量打到主节点但是最近遇到一个问题,MySQL从节点上的服务无缘无故的崩了,查看日志也找不到什么端倪。为了保证从节点的可用性,我们使用了Keepalived软件来监测从节点存活状态,如果从节点崩了,则自动重启MySQL容器。本篇将会讲解没什么卵用的排查记录,以及如何保证从节点可用性,注意,还不是完全的高可用。一、排查记录虽说没有找到MySQ

从节点崩了,还怎么「主从读写分离」?

你好,我是悟空。本篇主要内容如下:目录背景我们的项目采用了读写分离的方案:查询和更新的业务走主库,统计相关的功能走从库,从而减少主库的压力。原理如下图所示:读写分离的方案如果从库崩了,实在无法访问了,就会把所有请求打到主库上。原理如下图所示:从节点崩了,部分流量打到主节点但是最近遇到一个问题,MySQL从节点上的服务无缘无故的崩了,查看日志也找不到什么端倪。为了保证从节点的可用性,我们使用了Keepalived软件来监测从节点存活状态,如果从节点崩了,则自动重启MySQL容器。本篇将会讲解没什么卵用的排查记录,以及如何保证从节点可用性,注意,还不是完全的高可用。一、排查记录虽说没有找到MySQ

MySQL 主从模式采用 GTID 的实践

你好,我是悟空。本文主要内容如下:一、背景为了保证高可用,之前在测试环境部署了一套MySQL双主模式,当一个主库服务出现异常,可以将流量切到另外一个主库,两个主库之间相互同步数据。双主模式双主模式的原理图如下:但是经常出现数据冲突的问题,于是我们又把​​双主模式​​改为了​​主从读写分离模式​​。主库作为读写库,再加上一个从库用来做 I/O密集型的任务(如大量的数据统计操作)。如下图所示:另外从库复制的模式采用​​位点​​的方式:指定binlog文件和binlog位置,这样从库就知道了复制的起始位置。(下文会讲解这种方式)虽然改为了主从模式,但依旧遇到了些问题:问题1:从库B复制数据时,出现了

MySQL 主从模式采用 GTID 的实践

你好,我是悟空。本文主要内容如下:一、背景为了保证高可用,之前在测试环境部署了一套MySQL双主模式,当一个主库服务出现异常,可以将流量切到另外一个主库,两个主库之间相互同步数据。双主模式双主模式的原理图如下:但是经常出现数据冲突的问题,于是我们又把​​双主模式​​改为了​​主从读写分离模式​​。主库作为读写库,再加上一个从库用来做 I/O密集型的任务(如大量的数据统计操作)。如下图所示:另外从库复制的模式采用​​位点​​的方式:指定binlog文件和binlog位置,这样从库就知道了复制的起始位置。(下文会讲解这种方式)虽然改为了主从模式,但依旧遇到了些问题:问题1:从库B复制数据时,出现了

自建MongoDB实践:MongoDB 分片集群

​一般来说,在数据库系统和计算系统中,我们有两种方法来提高其性能。第一个是简单地用更强大的服务器取代我们常规的服务器,一般我们称之为垂直扩容(或纵向扩容)。 垂直扩容的主要缺点是它有限制:它不能无限扩大,这取决于多方面的因素。诸如:硬件已达到其物理极限、云提供商不能为我们提供更强大的服务器。提高性能的第二种方法是使用具有相同容量的服务器并增加其数量,一般我们称之为水平扩容(或横向扩容)。当数据量比较大的时候,我们需要把数据分片运行在不同的机器中,以降低CPU、内存和IO的压力,Sharding就是数据库分片技术。MongoDB分片技术类似MySQL的水平切分和垂直切分,数据库主要由两种方式做S

自建MongoDB实践:MongoDB 分片集群

​一般来说,在数据库系统和计算系统中,我们有两种方法来提高其性能。第一个是简单地用更强大的服务器取代我们常规的服务器,一般我们称之为垂直扩容(或纵向扩容)。 垂直扩容的主要缺点是它有限制:它不能无限扩大,这取决于多方面的因素。诸如:硬件已达到其物理极限、云提供商不能为我们提供更强大的服务器。提高性能的第二种方法是使用具有相同容量的服务器并增加其数量,一般我们称之为水平扩容(或横向扩容)。当数据量比较大的时候,我们需要把数据分片运行在不同的机器中,以降低CPU、内存和IO的压力,Sharding就是数据库分片技术。MongoDB分片技术类似MySQL的水平切分和垂直切分,数据库主要由两种方式做S

PostgreSQL主从复制-逻辑复制

1、物理复制及逻辑复制对比前文做了PostgreSQL物理复制的部署,其有如下主要优点物理层面完全一致,是主要的复制方式,其类似于Oracle的DG。延迟低,事务执行过程中产生REDOrecord,实时的在备库apply,事务结束时,备库立马能见到数据。物理复制的一致性、可靠性高,不必担心数据逻辑层面不一致。但是其又在实际使用的场景中存在一些无法满足的需求,例如:无法满足指定库或部分表的复制需求。将多个数据库实例的数据汇聚到同一个目标库或将一个库的数据分发到多个不同的库。不同的版本之间的复制。不同库名之间的不同步。对于以上场景,物理复制是无法满足的,因此逻辑复制应运而生了。逻辑复制的复制架构图

PostgreSQL主从复制-逻辑复制

1、物理复制及逻辑复制对比前文做了PostgreSQL物理复制的部署,其有如下主要优点物理层面完全一致,是主要的复制方式,其类似于Oracle的DG。延迟低,事务执行过程中产生REDOrecord,实时的在备库apply,事务结束时,备库立马能见到数据。物理复制的一致性、可靠性高,不必担心数据逻辑层面不一致。但是其又在实际使用的场景中存在一些无法满足的需求,例如:无法满足指定库或部分表的复制需求。将多个数据库实例的数据汇聚到同一个目标库或将一个库的数据分发到多个不同的库。不同的版本之间的复制。不同库名之间的不同步。对于以上场景,物理复制是无法满足的,因此逻辑复制应运而生了。逻辑复制的复制架构图