在 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 中的新参数组?