假设我有两个数据库实例:
InstanceA - Production server
InstanceB - Test server
我的工作流程是首先将新的架构更改部署到InstanceB
,对其进行测试,然后将它们部署到InstanceA
。
因此,在任何时候,实例架构关系都是这样的:
InstanceA - Schema Version 1.5
InstanceB - Schema Version 1.6 (new version being tested)
我的工作流程的另一个部分是尽可能保持 InstanceB
中的数据最新。为了实现这一目标,我对 InstanceA
进行数据库备份,并将其应用(恢复)到 InstanceB
。
我的问题是,架构版本如何影响恢复过程?
我知道我能做到:
Backup InstanceA - Schema Version 1.5
Restore to InstanceB - Schema Version 1.5
但是我可以这样做吗?
Backup InstanceA - Schema Version 1.5
Restore to InstanceB - Schema Version 1.6 (new version being tested)
如果不是,失败会是什么样子?
如果是,模式更改的类型会重要吗?
例如,如果 Schema Version 1.6
与 Schema Version 1.5
的不同之处在于仅更改了 storec 过程,我想这种类型的 schema 更改不应影响恢复过程。另一方面,如果 Schema Version 1.6
与 Schema Version 1.5
的不同之处在于具有不同的表定义(例如,附加列),我认为这会影响恢复过程.
我希望我已经说得足够清楚了。
预先感谢您的任何意见!
最佳答案
不,恢复不会查看架构,它只是按原样恢复数据文件,因此恢复后您将得到架构 1.5。它将覆盖已经存在的任何内容。
您最好先进行数据刷新恢复,然后应用 1.6 架构更改。
关于sql-server - RESTORE 过程是否依赖于架构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2480727/