在 AWS RDS 上自动更改 SQL 架构

Posted

技术标签:

【中文标题】在 AWS RDS 上自动更改 SQL 架构【英文标题】:Automating SQL schema changes on AWS RDS 【发布时间】:2017-12-15 02:43:56 【问题描述】:

在 AWS RDS 数据库上部署 SQL 更改的最常用工具和最佳实践是什么?

现在我们正在考虑在我们的 ECS 中运行一个临时的 flyway docker 容器,但如果任何托管 AWS 服务都有解决方案,那就太好了。

【问题讨论】:

【参考方案1】:

到目前为止,还没有任何用于 sql 迁移的管理服务,因为它对于数据库实例类型(mysql、oracle 等)大多是唯一的。

通常,如果您采用代码优先方法,则迁移以更改的形式保存在代码中的托管模式中,而对于数据库优先方法,则维护 sql DML 脚本。

如果有任何更改可用,在持续交付工具上自动运行这些也是一种很好的做法。

列表项

【讨论】:

我们的一些服务使用代码优先迁移。但并不是所有的团队都已经意识到它的好处,并且仍然在使用 StoredProcs 等等。【参考方案2】:

您希望您的应用程序始终拥有一个最新的数据库,以确保它们需要的所有对象都存在。因此,您应该将属于一起的内容放在一起,并在应用程序或容器启动时运行迁移。这反过来意味着将 Flyway 直接打包到您的 Docker 映像中

【讨论】:

以上是关于在 AWS RDS 上自动更改 SQL 架构的主要内容,如果未能解决你的问题,请参考以下文章

AWS DMS 不支持 RDS SQL Server 的 CDC/更改跟踪。

如何使用 Terraform 自动切换到 AWS 的 RDS 中的新参数组?

AWS RDS (PostgreSQL) 自动备份

AWS postgres RDS 读取复制如何处理架构切换?

使用 RDS 后端修改 AWS Amplify 中的解析器

更改 AWS RDS mysql时区 -摘自网络