gpt4 book ai didi

数据库版本控制

转载 作者:太空狗 更新时间:2023-10-30 01:42:55 25 4
gpt4 key购买 nike

我是一名 scm 开发人员,目前负责一项涉及数据库版本控制的事件。虽然我做过源代码管理,但我对此还是很陌生。因此,我想对如何实现这一点有不同的看法和经验。

我所说的数据库(oracle/sybase)版本是指捕获数据库架构/触发器/等发生的更改并将其存储为修订。基本上在我们公司,客户数据库中有一些我们不知道或至少无法确定何时以及谁进行了特定更改的更改。我们只是试图创建数据库中发生的更改的记录。

注意:我不是数据库专家。

最佳答案

通常的做法是允许更改通过构建过程。基本上.. 拥有像 CVS 这样的版本控制工具,用户可以在其中 checkin 必须进入 QA 和 Prod 环境的更改。

所以.. 比方说,有几个列添加到表中,开发人员将使用“Alter table ...”命令 checkin .ddl 脚本,并将其“应用”到数据库下次您进行构建时。

除非您限制用户(在这种情况下.. 开发人员)直接进行更改,而是使用标准的构建过程,否则随着时间的推移跟踪对象的更改几乎是不可能的。

考虑必要的详细信息,例如进行更改的用户、更改时间、原因( checkin 评论、错误编号、新功能请求等),您稍后需要这些详细信息以了解进行更改的原因。所有更改通常使用“APPOWNER”等标准用户编译,在没有版本控制系统的情况下,您只能访问最新的更改 (last_ddl_change)。

如果您关心的是跟踪对数据的更改,您可以使用触发器或使用像 Golden Gate 这样的应用程序来读取重做日志并为您获取更改捕获记录。从您的问题来看,您似乎正在寻找一种跟踪对象更改的方法。

关于数据库版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5718475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com