在此也感谢阿里云售后兄弟的支持。全文参考 https://help.aliyun.com/document_detail/95738.html?

1、 首先得要有个阿里云账号,已经购买RDS数据库(本文针对SQL Server)且已经开通阿里云OSS服务。

2、 本文档适用于以下版本的实例:

RDS for SQL Server 2012/2016 Web版

RDS for SQL Server 2012 企业版基础系列

RDS for SQL Server 2012/2016标准版、企业版

RDS for SQL Server 2017 企业集群版

3、 备份文件命名限制

全量备份文件名不能包含@或者|等特殊字符,否则会导致数据库上云失败。

4、 注意事项

AliyunRDSImportRole的角色

授予RDS服务账号访问OSS的权限以后,系统会在访问控制RAM的角色管理中创建名为AliyunRDSImportRole的角色,请勿修改或删除这个角色,否则会导致上云任务无法下载备份文件而失败。如果修改或删除了这个角色,您需要通过数据上云向导重新授权。

具体操作步骤:

1、 运行DBCC CHECKDB检测本地数据库,如有问题则需要在本地修复数据库,否则会导致失败。下面是我遇到的问题,以及修复过程。

参考https://www.cnblogs.com/www123----/p/10178077.html

本地库还原至阿里云RDS服务器-LMLPHP

DBCC CHECKDB('pos')
--修改数据库为单用户实例
EXEC sp_dboption 'pos', 'single user', 'TRUE'
--修复数据库
dbcc checkdb ('pos',repair_allow_data_loss)
--修复数据库索引
dbcc checkdb ('pos',REPAIR_REBUILD)
--取消单用户模式
EXEC sp_dboption 'pos', 'single user','FALSE'
修复后重新验证一下无问题后,备份。

2、文件上传至OSS服务器

2.1 先创建Bucket(这里已经创建好)

本地库还原至阿里云RDS服务器-LMLPHP

 2.2  上传数据库备份文件,等待完成即可。

本地库还原至阿里云RDS服务器-LMLPHP

  3、进入阿里云RDS服务器,点击管理实例

本地库还原至阿里云RDS服务器-LMLPHP

点击备份恢复-OSS备份数据库恢复上云

本地库还原至阿里云RDS服务器-LMLPHP

跟着向导走,然后选择需要的还原的数据库即可,第一次的时候最下面有个授权(AliyunRDSImportRole的角色)也就是第4点注意事项。这里已经授权。

本地库还原至阿里云RDS服务器-LMLPHP

点击确定即可,等待还原成功。

05-11 17:13