首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在RDS上,我是否可以在读取副本中创建主服务器上不存在的表?

在RDS上,我是否可以在读取副本中创建主服务器上不存在的表?
EN

Stack Overflow用户
提问于 2013-01-19 02:20:56
回答 2查看 5.2K关注 0票数 9

我们有一个单独的RDS实例来处理会话状态表,但是发现会话DB负载非常低。如果我们可以将实例处理会话转换为主数据库的读取副本,那么我们可以将其用于只读任务,即使在副本中有很大的延迟也是安全的。

有没有人在RDS上做过这样的事情(可能而且安全吗)?我应该注意任何严重的副作用吗?更好地理解这一点的任何链接或帮助都会有所帮助。

http://aws.amazon.com/rds/faqs/#95试图回答这个问题,但我正在寻找更多的见解。

EN

Stack Overflow用户

发布于 2017-05-27 06:36:38

是的,这是可能的。我使用RDS成功地使用了它,用于本地缓存的特定情况。

您需要将复制副本上的read_only参数设置为0。我必须重新启动服务器才能使该参数起作用。

如果使用不同表名,效果会很好,因为RDS不允许设置:replicate-ignore-table参数。

请记住,master<>slave之间不能有任何数据冲突。如果有一条语句在MASTER上运行正常,但在SLAVE上失败,那么您就中断了复制。例如,当您首先在SLAVE上创建表,然后在一段时间后将该表添加到MASTER中时,可能会发生这种情况。CREATE语句将在MASTER上干净地工作,但在SLAVE上失败,因为表已经存在。

假设您需要非常小心,允许您的应用程序写入SLAVE。如果您忘记/或犯了一个错误,并开始为您的一些其他数据写入读取副本,最终您可能会丢失数据或遇到难以调试的问题。

票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14405163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档