在 ServerFault 中搜索与我的情况类似的情况时,我找不到。
我们有一个用于应用程序的“培训”数据库和一个实时数据库。“培训”数据库用于开发和实验。我经常将实时数据库备份到 bak 文件,然后将该数据库还原到“培训”数据库以刷新数据。(这样做没有问题,因为这是供应商推荐的。)我可以通过从实时数据库还原到“培训”数据库来消除该步骤吗?
答案1
简短的回答是不行。您可以使用 T-SQL 来自动执行此操作,或者可以使用复制或镜像来满足要求。这些都是不错的选择,但您无法通过备份一步到位。您还可以编写备份/文件复制/恢复脚本,这将使该过程更容易 - 只要您主要的抱怨是 BAK 文件没有可用的磁盘空间或传输它所需的时间。
简短回答的更多细节-如果你查找BACKUP DATABASE T-SQL命令的语法,你会看到以下内容:
备份设备 = { { 逻辑设备名称 | @逻辑设备名称变量 } | { 磁盘 | 磁带 } = { '物理设备名称' | @物理设备名称变量 } }
备份设备可以是以下两种之一:磁盘(文件)或磁带。没有备份到另一个数据库的选项。