文档首页 > > 最佳实践> SQL Server> 使用导入导出功能将ECS上的SQL Server数据库迁移到RDS for SQL Server

使用导入导出功能将ECS上的SQL Server数据库迁移到RDS for SQL Server

分享
更新时间:2019/11/08 GMT+08:00

适用场景

  • 用户在ECS上创建SQL Server数据库。
  • 当ECS上SQL Server实例的版本高于RDS for SQL Server实例的版本时,无法通过DRS进行迁移。
  • 已成功安装SSMS客户端。

操作步骤

  1. 创建一个ECS虚拟机。

    虚拟机跟对应的RDS应在同一个Region、VPC下。

  2. 在ECS上安装SQL Server 2008、SQL Server 2012、SQL Server 2014版本。

    在ECS上安装的SQL Server版本,至少是标准版,最好跟需要还原的目标实例版本保持一致。

  3. 将本地“.bak”文件上传至ECS服务器端,并通过该ECS上的SQL Server服务器进行本地还原。
  4. 通过SQL Server自带的脚本生成工具,生成ECS上的数据库结构脚本。

    1. 选中需要生成schema脚本的数据库,单击鼠标右键选择“任务 > 生成脚本”。
    2. 在导航页中根据提示单击“下一步”,在“选择对象”页面,确定要导出的对象,可选择全部,也可以选择独立对象模块导出。如图1所示。
      图1 选择要导出的对象
    3. 单击“下一步”,在“设置脚本编写选项”页面,选择将要导出文件的保存位置。

      建议保存到本机,并生成一个SQL脚本方便执行。

      图2 选择导出文件的保存位置
    4. 单击图2中的“高级”按钮,进入“高级脚本编写选项”页面,根据实际需要选择具体脚本生成规则和相关细节,单击“确定”。例如:触发器,索引,唯一键,主键,服务器版本等重要选项。
      图3 高级脚本编写选项

      脚本Drop和Create是编写脚本数据类型的重要选项。

    5. 单击“下一步”完成脚本生成。

  5. 在SSMS客户端中打开生成的脚本SQL文件,连接到RDS对应实例上。

    首先创建一个空的数据库,再通过该脚本在该数据库上创建相关结构。

  6. 完成以上步骤后通过SQL Server自带的导入导出功能完成数据迁移。

    1. 选择要导出的数据库,单击鼠标右键选择“任务 > 导出数据”。
    2. 根据导航选择“下一步”,在“选择数据源”页面,选择要从中复制的源,单击“下一步”

      数据源:选择SQL Server Native Client(该选项根据你的数据源类型进行选择)。

      服务器名称:输入数据源实例所在的IP和端口号,如果是本地可以直接输入实例名或者localhost。

      身份验证:选择使用SQL Server身份验证,并在下方输入rdsuser帐号和密码。

    3. 在“选择目标”页面中,复制数据库,然后单击“下一步”,选中复制一个或多个表或视图的数据。

      选择数据库的时候要选中要导入的对应数据库。

    4. 在“选择源表和源视图”页面中,根据需要选中导出的对象,也可全选你要导出的所有对象,再单击“编辑映射”,根据实际需要进行选择,至少选中启用标识插入。
    5. 单击“下一步”开始数据导出导入并查看进度,一般为4000行/秒。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问