使用 Amazon S3 中的内存优化文件组恢复 AWS RDS 数据库

使用 Amazon S3 中的内存优化文件组恢复 AWS RDS 数据库

无法恢复具有内存优化数据的 AWS RDS 数据库。

我在 S3 中有一个备份,当我尝试恢复到 RDS 时:

exec msdb.dbo.rds_restore_database
    @restore_db_name='MyDatabase',
    @s3_arn_to_restore_from='arn:aws:s3:::myBucket/myBackup.bak'

它失败了:

RESTORE requires MAXTRANSFERSIZE=327680 but 65536 was specified. 
RESTORE FILELIST is terminating abnormally. 
Aborted the task because of a task failure or a concurrent RESTORE_DB request. 
Task has been aborted 
Empty restore file list result retrieved.

这是有道理的,因为正如所述:https://docs.microsoft.com/en-us/sql/t-sql/statements/backup-transact-sql?view=sql-server-2017

使用 SQL 编写器服务创建备份时,如果数据库已配置 FILESTREAM,或包含内存优化文件组,则还原时的 MAXTRANSFERSIZE 应大于或等于创建备份时使用的 MAXTRANSFERSIZE。

但是我最初已经使用以下命令备份了数据库:

BACKUP DATABASE [MyDatabase] 
   TO DISK = 'C:\Data\Backups\MyBackup.bak'
   WITH INIT, MAXTRANSFERSIZE = 65536, STATS = 1;

有没有办法恢复这个数据库?“RDS 命令”msdb.dbo.rds_restore_database不允许我指定 MAXTRANSFERSIZE 参数。

相关内容