在同一Amazon RDS上创建重复的SQL Server数据库

时间:2018-05-01 09:08:34

标签: sql-server amazon-web-services amazon-rds

后台:我正在将一些客户端迁移到AWS RDS SQL服务器实例。每个数据库都有两个数据库:一个用于实时数据,另一个用于培训数据,这是他们实时数据的副本。通过使用实时数据库定期恢复培训数据库,使培训数据库保持最新。理想情况下,这些数据库将托管在同一个RDS实例上,因为它们不是那么大,而且会使托管成本减半。

问题:亚马逊有这些限制in their documentation

  

您无法将备份文件还原到使用的同一数据库实例   创建备份文件。而是将备份文件还原为新文件   数据库实例。重命名数据库不是解决此问题的方法   限制。

     

您无法将同一备份文件还原到数据库实例多个   倍。也就是说,您无法将备份文件还原到数据库实例   已包含要还原的数据库。重命名   数据库不是此限制的解决方法。

因此备份实时数据库并将其恢复到训练数据库,就像我通常所说的那样。除了为每个客户托管两个单独的实例外,这里最好的选择是什么?

2 个答案:

答案 0 :(得分:2)

虽然可以为数据库生成脚本,但可以将其导入其他地方,备份并将其恢复到原始实例上,但在我的情况下,这不是一个很好的解决方法。我不得不放弃使用RDS实例,并沿着更加传统的方式在Windows EC2实例上托管多个培训数据库。

答案 1 :(得分:1)

好消息:

先前在the RDS Documentation中列出的限制已被删除:

  

您不能将备份文件还原到用于创建备份文件的同一数据库实例。而是将备份文件还原到新的数据库实例。重命名数据库不是解决此限制的方法。

     

您不能将同一备份文件还原到多个数据库实例   次。也就是说,您无法将备份文件还原到具有以下功能的数据库实例:   已经包含您要还原的数据库。重命名   数据库不是解决此限制的方法。

我刚刚对此进行了测试,并且能够使用链接文档中定义的msdb.dbo.rds_restore_database存储过程将同一备份多次还原到同一RDS SQL Server上的不同数据库名称。< / p>