![数据库架构和配置的修订控制](https://linux22.com/image/483363/%E6%95%B0%E6%8D%AE%E5%BA%93%E6%9E%B6%E6%9E%84%E5%92%8C%E9%85%8D%E7%BD%AE%E7%9A%84%E4%BF%AE%E8%AE%A2%E6%8E%A7%E5%88%B6.png)
管理数据库模式和配置修订的最佳实践是什么?
你使用什么工具?
迈克尔
答案1
K. Scott Allen 有一系列精彩的文章,请访问编码恐怖:对数据库进行版本控制关于数据库版本控制。他们专注于 SQL Server,但它也可以适用于其他环境。
答案2
恐怕我喜欢使用本机 dbms 工具将架构转储到文本文件并将其放入版本控制中的老式方法。我确信一些花哨的工具可以很好地完成工作,但我现有的工具箱足以满足我的需求。我只会在以下情况下考虑花哨的东西:需要自动迁移或类似的东西。YMMV。
答案3
控制这一点的重点是限制权限并设置部署更改的瓶颈。您可以将 VCS 系统与数据库一起使用,只需确保人们签入和签出脚本文件即可。即使他们使用工具进行更改,他们也应该获得实际进行这些更改所使用的脚本(SQL Server 包含此功能,不确定其他平台是否包含此功能)。
将脚本文件像 VCS 中应用程序的任何其他文件一样保存。
答案4
我没有存储实际的 DDL 脚本,而是对可以与其他数据库进行比较的架构元数据的描述进行源代码控制。我使用SchemaCrawler- 我用 Java 编写的免费、命令行、开源工具,专为此目的而设计。