我们的团队正在将我们的一个数据库迁移到 Amazon RDS MS SQL Server。作为其中的一部分,我们必须重写一些存储过程。
我们有一个将数据库备份到网络存储的存储过程。
BACKUP DATABASE [MyDB] TO DISK = '\\myserver\share\MydbBackup.bak'
WITH RETAINDAYS = 0,
INIT
上面的存储过程是阻塞的,即它会暂停执行行exec stored_proc
——直到备份完成。
我已经更改了该存储过程,以便它使用存储过程,rds_backup_database
以便将备份保存在 S3 存储桶中。
exec msdb.dbo.rds_backup_database
@source_db_name='MyDB',
@s3_arn_to_backup_to='arn:aws:s3:::temp-poc-bucket/db_backups/MyDBBackup.bak',
@overwrite_s3_backup_file=1;
问题是我们的工作流程(从我们的应用程序调用存储过程)要求它是同步的。
有没有办法“等待”msdb.dbo.rds_backup_database
存储过程的执行?
AWS RDS文档。