当前位置: 首页 > 知识库问答 >
问题:

重新启动AWS RDS Aurora Master/Writer也会重新启动阅读器?

孙翰墨
2023-03-14

我正在尝试评估AWS RDS Aurora作为本地MySQL数据库的未来替代品,但我注意到了一些奇怪的行为。

我有一个基本的集群,它有一个DB主(writer)和一个副本(reader)。我的想法是使用reader作为一个始终可用的数据源,即使writer不可用。但是当我重新启动master时,阅读器也会被关闭,使设置变得毫无价值。

查看读取器副本日志,当it注意到写入器关闭时会发生以下情况:

还是无论集群大小,写入/读取“不同步”总是取下读取器入口点?

共有1个答案

翟俊名
2023-03-14

要使副本在主服务器重新启动期间保持可用,唯一的方法是使用传统的MySQL复制(Aurora支持这种复制)来创建一个异步副本。

Aurora复制与MySQL(或Galera)复制非常不同。丢失主服务器必然会触发集群的重组,因为单个实例没有自己的数据副本,它们共享一个6路复制存储卷--这就是复制可以保持在10-20 ms时间范围内的原因。实际上从主服务器复制的是事务日志LSN。替换主服务器需要提升一个副本,在接管后验证磁盘上的数据结构是否干净,然后所有其他副本开始跟随它。

如果DB集群具有一个或多个Aurora副本,则在故障事件期间将Aurora副本提升到主实例。失败事件会导致短暂的中断,在此期间,读和写操作以异常失败。

https://docs.aws.amazon.com/amazonrds/latest/userguide/aurora.managing.html#aurora.managing.fault容忍度

当Aurora副本停止看到来自主服务器的更新时,实际的故障发生在哪里并不重要--是在实际的主服务器上还是在基础结构的其他地方--副本停止为查询服务,因为在最好的情况下,它不再具有访问权威数据的权限。

在可能的情况下,零停机时间修补程序似乎可以避免在升级期间重新启动主机。除升级外,不需要重新启动主机。

 类似资料:
  • 我用Inno Setup做了一个安装程序,在一些文件运行后我需要重启电脑,所以我用了这篇文章中的解决方案。 inno安装示例“CodePrepareToInstall”。iss运行良好,所以我使用了代码进行测试安装,但计算机重新启动后安装程序无法启动。 两个安装程序(inno demo和我的测试)都在“HKLM\Software\Microsoft\Windows\CurrentVersion\R

  • 问题内容: 我正在尝试为我的Java游戏添加重启/重播功能。当前在我的Game类(GUI和游戏被初始化的地方)中,我有: 游戏对象包含整个游戏窗口的GUI,并包含各种对象(例如实际游戏窗口,计分板,倒数计时器等)。 我想添加一个功能,如果他们单击GUI上的重新启动按钮或游戏结束后,游戏将重新启动(以及倒计时和计分)。我确实意识到最好重新实例化对象(计分,倒数),但是一旦实例化,它们便成为我的GUI

  • 本文向大家介绍nginx 重新启动NGINX,包括了nginx 重新启动NGINX的使用技巧和注意事项,需要的朋友参考一下 示例 以root用户身份: Ubuntu的例子            

  • Triathlon程序执行一个长时间运行的任务,如果该任务已完全执行,则有可能重新启动该任务。我想添加停止执行以重置UI的可能性。为了达到这个目的,我增加了一个新的按钮,停止。代码如下: 如果任务已经完成,程序很好地重新启动,但是如果我在停止它之后调用start,程序就会崩溃。我该纠正什么?

  • 问题内容: 我正在使用CSS着色器+动画。我的着色器类定义如下: 我正在尝试使用jQuery通过和动态设置/取消设置样式(shader + animation) 但是,奇怪的是,当我重置类时(例如,在removeClass之后调用addClass),仅重新应用了着色器,而没有应用动画(我已钩住AnimationStart事件以查看动画何时开始)。有人知道为什么会这样吗,我该如何解决? 编辑:我在这

  • 我有一个单身演员的等级制度。父母监督和协调孩子。当重新启动协调器时,我需要保持子角色运行。有没有一种方法可以防止子角色在其父角色重新启动时重新启动,或者我应该重新考虑我的角色层次结构?我一直在研究akka的监管策略,但找不到明确的答案。