【以下的问题经过翻译处理】 摘要:
我们正在将S3上的SQL Server数据库还原到RDS实例中。尽管作业显示还原已完成,但访问数据库时它却仍然卡在“还原”模式中,我们无法对其进行任何操作。
详情:
我们启动了一个新的SQL Server RDS实例,试图从S3中的备份还原数据库。这很简单,我们在以前大约一年前就这样做过。我们从(AWS文档)https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.Procedural.Importing.html中运行了命令。
EXEC msdb.dbo.rds_restore_database
_ @restore_db_name = 'OurDB'_
, @s3_arn_to_restore_from = 'arn:aws:s3:::bucket/SQLBackUp.bak'
, @with_norecovery = 1
我们知道,如果没有设置选项组和IAM角色,该命令将无法工作,因此我们已确保它们已设置。当我们运行命令时,它需要几分钟,但似乎运行得很好。
我们运行命令以查看状态。
EXEC msdb.dbo.rds_task_status
_ @db_name='OurDB'_
然后在接下来的几分钟里,随着完成百分比的增长,生命周期值会显示“成功”。但是,当我尝试访问数据库时,我却无法访问它,它显示仍在还原中,而我得到的确切错误信息是“The database OurDB is not accessible. (ObjectExplorer)”。
每当我搜索 "RESTORE DATABASE Stuck RDS SQL SERVER "或其相关内容时,我找到的所有内容都是关于还原整个 RDS 实例,而不是单个数据库。或者,如果我能找到关于恢复卡住的数据库的内容,那也不是关于 RDS 的,而是关于普通 SQL Server 的。