You need to enable JavaScript to run this app.
文档中心
数据库传输服务

数据库传输服务

复制全文
下载 pdf
源为专有网络 SQL Server
通过物理备份迁移至火山引擎 SQL Server 版(自动备份)
复制全文
下载 pdf
通过物理备份迁移至火山引擎 SQL Server 版(自动备份)
本文介绍如何在数据库传输服务 DTS 控制台创建通过物理备份方式自动上传专有网络 SQL Server 的备份文件并恢复至火山引擎 SQL Server 版。​
前提条件​
  • 按需设置源端信息,具体如下所示:​
  • 在需要使用专线实现数据迁移时,您需要搭建云上单私有网络和云下单数据中心网络连通的专线连接。详细操作,请参见配置专线连接。​
  • 已创建云数据库 SQL Server 版实例。详细操作,请参见创建实例。​
  • 目标数据库实例的可用存储空间为待还原数据库总量的 1.5 倍,如果实例的存储空间不够,需提高实例的空间。详细操作,请参见常规变配。​
  • 您的账号已被授予对象存储 TOS 全读写访问权限,即 TOSFullAccess。​
注意事项​
在创建专有网络数据迁移任务的过程中,系统会默认在您选择的私有网络内创建数张网卡,网卡会默认挂载到您选择的子网上。网卡的名称格式为 dts_shuttle_********。​
使用限制​
​
类型​
说明​
源库限制​
  • 带宽要求:源库所属的服务器需具备足够出口带宽,否则将影响数据迁移速率。​
  • 单次迁移任务最多仅支持迁移 10 个数据库。当超出数量限制,会出现稳定性和性能问题的风险,此时建议您拆分待迁移的表,创建配置多个任务。​
  • 待迁移的数据库在火山引擎实例中不存在。​
  • 同一个目标库只能在一个任务中被迁移使用。​
  • 迁移期间请勿进行主备切换,否则迁移任务失败。​
  • 在迁移过程中请勿做周期性全量备份。​
其他限制​
  • 仅支持将低版本的备份文件迁移至高版本数据库实例,不支持将高版本备份文件迁移至低版本。版本限制如下所示:​
  • 数据库商用版本:建议从低版本到高版本,例如支持从 Web 版到标准版到企业版。​
  • 数据库兼容版本:例如仅支持从 SQL Server 2012 迁移到 SQL Server 2019,不支持从 SQL Server 2019 迁移至 SQL Server 2012。​
  • 备份文件名不能包含特殊字符,特殊字符包括 \、/、:、*、?、"、<、>、|、!、@、#、$、%、^、&、*、(、)、_、+、- 和 =。。​
  • 在备份数据恢复上云任务没有完成前,请不要删除对象存储 TOS 上的备份文件,否则会导致迁移上云失败。​
  • 备份文件的后缀名必须为 bak、trn 或 log,具体如下所示:​
  • bak:表示全量备份文件。​
  • trn 或 log:表示事务日志备份文件。​
说明​
如果备份文件不是上述文件后缀,那么系统可能无法正确识别该文件的类型并影响后续操作。​
  • 在进行生产环境数据库迁移前,建议您先在开发或测试环境进行实际的测试评估。如果需要在生产环境中运行评估,建议在业务低峰期测试,降低业务影响。​
  • 暂不支持迁移内存表、FileStream 和 FileTables 数据字段类型。​
  • 迁移过程中不支持对数据库和表进行过滤迁移。​
​
数据库版本​
​
源端数据库版本​
目标端数据库版本​
  • 企业版(Developer)​
  • 标准版​
  • Web 版​
  • Express 版​
  • SQL Server 2019 企业版​
  • SQL Server 2022 企业版​
  • 标准版​
  • Web 版​
  • Express 版​
  • SQL Server 2019 标准版​
  • SQL Server 2022 标准版​
  • Web 版​
  • Express 版​
  • SQL Server 2019 Web 版​
  • SQL Server 2022 Web 版​
​
数据库账号最小权限策略​
​
数据库​
权限类型​
源库​
db_owner 权限​
目标库​
db_owner 权限​
​
说明​
关于如何授予账号权限,请参见管理账号。​
操作步骤​
步骤一:创建数据迁移任务​
  1. 登录 DTS 控制台。​
  1. 在顶部菜单栏,选择项目和地域。​
  1. 在左侧导航栏,单击数据迁移。​
  1. 在数据迁移列表页面,单击创建任务。​
  1. 在创建迁移任务页面的配置源库及目标库配置向导页面,配置以下参数信息。​
  • ​
    类别​
    参数​
    说明​
    基本信息​
    任务名称​
    (可选)自定义迁移任务名称。长度需在 256 个字符内。​
    说明​
    若未进行设置,系统将默认生成一个以 dts- 开头命名的任务。​
    源库配置​
    实例类型​
    默认选择 SQL Server。​
    ​
    接入方式​
    选择专有网络 SQL Server。​
    ​
    迁移方式​
    选择物理备份。​
    ​
    备份上传方式​
    选择自动上传。​
    目标库配置​
    选择已有数据源​
    您可以按需选择是否使用已录入的实例:​
    • 使用已录入实例:单击选择已有数据源,在选择数据源控制面板,从地域下拉列表中选择目标地域,然后选择目标数据源。支持通过数据源名称和 ID 选择数据源。关于数据源的创建方法,请参见数据源管理。​
    • 不使用已录入实例:如果不使用已录入的实例,那么您需要配置以下数据库实例信息。​
    ​
    实例类型​
    选择 SQL Server。​
    ​
    接入方式​
    选择火山引擎版 SQL Server。​
    ​
    地域​
    选择目标实例所属地域。​
    ​
    SQL Server 实例​
    从下拉列表中选择云数据库 SQL Server 版实例,支持通过实例 ID 或实例名称搜索选择目标实例。​
    ​
    数据库账号​
    输入目标实例的数据库账号。​
    ​
    数据库密码​
    输入目标实例数据库账号对应的密码。​
    ​
    测试连接​
    单击测试连接,验证是否成功连接实例。 当测试连接失败时,根据失败提示信息修改相关配置后,再次单击测试连接,验证是否可以成功连接实例。具体提示信息如下:​
    • 连接认证失败,请检查用户名和密码是否正确:当出现该报错提示时,您需要确认用户名和密码的准确性。​
    • 连接认证失败,无法正常创建连接,请联系客服:当出现该报错提示时,请提交工单联系技术支持。​
    Project 与计费​
    项目​
    (可选)从下拉列表中选择该任务所属项目,默认在 default(默认项目) 下。您也可以单击创建新项目,创建新的项目。详细操作,请参见新建项目。​
    说明​
    • 关于如何授予子用户访问指定项目下资源的权限操作步骤,请参见修改项目权限。​
    • 成功创建任务后,如果需要修改实例的所属项目,例如将任务从当前项目移入至其他项目,您可以将资源移入指定项目。​
    • 项目是一个虚拟的概念,包括一组资源、用户和角色。通过项目可以对一组资源进行统一的查看和管理,并且控制项目内用户和角色对这些资源的权限。​
    ​
    标签​
    (可选)单击添加标签,为实例添加标签,标签可帮您实现云资源的分类、云资源的访问控制、账单与成本分摊等。标签由一个键值对(Key-Value)组成,用于标识云资源,可以帮助您从不同维度(例如用途、所有者等)对具有相同特征的云资源进行分类,便于筛选和聚合,从而轻松管理云上资源。关于标签的详细信息,请参见标签概述。标签的键值对规则如下:​
    • 键​
    • 支持任何语言、文字、数字、空格或符号(_.:/=+-@)。​
    • 大小写敏感,且长度在 1~128 个字符内。​
    • 使用 UTF-8 编码的 Unicode 格式。​
    • 不支持设置以 volc: 开头的任何形式的 Key,例如 Volc:、VOLC: 等。​
    • (可选)值​
    • 支持任何语言、文字、数字、空格或符号(_.:/=+-@)。​
    • 大小写敏感,且长度在 0~256 个字符内。​
    • 使用 UTF-8 编码的 Unicode 格式。​
    说明​
    • 单次最多可给任务绑定 20 个标签。单个任务最多可绑定 50 个标签。​
    • 同一个资源拥有的标签 Key 不可重复,且一个标签 Key 只有一个值 Value。​
    ​
  1. 单击下一步:配置迁移对象。​
  1. 在创建迁移任务页面的配置迁移对象配置向导页面,配置迁移对象的参数信息,最多可添加 10 个源端和目标端数据库。​
  • 源端数据库:输入源端待迁移的数据库名称。​
  • 目标端数据库:输入目标端数据库名称。​
  1. 单击预检查。​
  1. (可选)当创建的任务已有预检查时,您可以根据以下提示确认是否重新发起预检查,当需要重新发起预检查时,请在是否重新发起预检查对话框,单击确定。​
  • 若目标端的数据库实例未做修改,则无需再次发起预检查。​
  • 如果修改了目标端的数据库实例信息或迁移任务的参数配置,那么建议您重新发起预检查,否则可能会导致任务启动失败或者任务中断。​
  1. 在在创建迁移任务页面的预检查配置向导页面,根据预检查结果执行以下操作:​
  1. 单击预检查结果操作列的详情,查看详细的告警和失败信息,并根据告警或失败信息修改库表后,单击重试。​
  1. 单击操作列的忽略,忽略本次告警继续启动迁移任务。同时,也可以单击忽略全部,一键忽略全部告警信息。​
说明​
  • 选择忽略告警并启动迁移任务,可能导致数据不一致,带来业务风险。​
  1. 单击创建并启动任务。​
步骤二:下载工具​
说明​
  • 该工具用于自动上传数据的工具,在备份过程中会占用源端数据库资源,建议预留足够的存储空间,同时在业务低峰期进行全量备份。​
  • 当前仅支持在 Windows 64 位操作系统安装。​
您可以通过以下两种方式安装备份上传工具。​
  • 方式二:通过 DTS 控制台下载备份上传工具。​
  1. 登录 DTS 控制台。​
  1. 在顶部菜单栏,选择项目和地域。​
  1. 在左侧导航栏,单击数据迁移。​
  1. 在数据迁移列表页面,单击目标实例名称。​
  1. 在目标实例的任务信息页签,单击源库信息区域备份上传方式后的点击下载。​
  1. 在下载并启动备份上传工具对话框的下载地址区域,单击点击下载备份上传工具。​
步骤三:启动工具​
  1. 在您的 SQL Server 服务器中新建一个文件目录,目录名称为 dtsagent,并将下载的 dtsBackupAgent 工具复制到 dtsagent 目录下。​
  1. 在文件目录 dtsagent 中新建一个 startParam.json 启动文件。​
  1. 在 DTS 控制台获取启动参数。​
  1. 登录 DTS 控制台。​
  1. 在顶部菜单栏,选择项目和地域。​
  1. 在左侧导航栏,单击数据迁移。​
  1. 在数据迁移列表页面,单击目标实例名称。​
  1. 在目标实例的任务信息页签,单击源库信息区域备份上传方式后的点击下载。​
  1. 在下载并启动备份上传工具对话框,复制启动参数模板。​
  1. 将启动参数复制到 startParam.json 文件中,并根据参数说明修改内容。​
说明​
taskId、tosEndpoint、region 无需修改,其他参数请根据实际情况修改。​
  • ​
    {​
    "ak": "xx",​
    "sk": "xx",​
    "taskId": "xx",​
    "tosEndpoint": "tos-cn-chongqing-sdv.volces.com",​
    "region": "cn-chongqing-sdv",​
    "backupStartDate": "2025-04-02 15:44:00",​
    "backupDBList": "SQLTestDB",​
    "localBackupFileDir": "/home/wangzhengwei.0914/mssql_backup_dir",​
    "host": "10.37.53.253",​
    "port": 1433,​
    "username": "sa",​
    "password": "xx",​
    "biz": "FullAndRecurringLogBackup",​
    "logBackupInterval": 2,​
    "uploadRateMBLimit": 50​
    }​
    ​
  • 您也可以直接复制以上参数模板内容到启动文件中,并修改内容。文件内容的参数说明如下表所示:​
  • ​
    参数​
    是否必传​
    说明​
    taskId​
    是​
    数据库传输服务 DTS 的任务 ID。​
    ak​
    是​
    您的火山引擎账号的 AccessKey ID。详细信息,请参见 API 访问密钥管理。​
    说明​
    您的账号需拥有对象存储 TOS 全读写访问权限,即 TOSFullAccess。上传文件期间不会占用您的 TOS 资源。​
    sk​
    是​
    您的火山引擎账号的 SecretAccess Key。详细操作,请参见 API 访问密钥管理。​
    tosEndpoint​
    是​
    与公网自建 SQLServer 实例所在地域一致的对象存储域名。详细信息,请参见地域和访问域名(Endpoint)。​
    region​
    是​
    云数据库 SQLServer 版实例所在地域。​
    biz​
    是​
    上传场景,取值如下:​
    • OnlyUpload:表示上传备份文件和 Manifest 文件,适用于已有全量备份和周期性日志备份任务,且数据库备份文件需保存在指定目录中。该场景中 DTS 不会对源端数据有侵入,会复用您已有的备份文件。​
    说明​
    • 若您的启动脚本中未传入非必填参数例如 host、port、username、password 等,那么您需要自行配置元数据文件 Manifest,否则将无法正常进行文件的上传。关于配置 manifest 文件的操作步骤,请参见配置元数据文件。​
    • FullAndRecurringLogBackup:表示自动执行全量备份与周期性日志备份,并上传备份文件,适用于您不存在全量备份和日志备份任务,或者不希望进行过多手动操作的情形。在该场景中,DTS 将负责整个过程,您无需参与操作,同时也无需维护备份元数据信息。​
    • OnlyRecurringLogBackup:表示自动执行周期性日志备份,并上传备份文件。适用于已经存在最近一次全量备份。该场景中可以减少全量备份对源库的压力和空间占比,不需要维护备份元数据信息。​
    backupStartDate​
    是​
    备份的开始时间。该参数的详细说明如下所示:​
    • 等待时间:如果备份由 Agent 执行,Agent 在启动后会等待直到 backupStartDate 指定的时间过后才开始备份。​
    • 立即备份:如果 backupStartDate 小于当前时间,Agent 会在启动后立即发起备份操作。这表示如果指定的备份开始时间已经过去,系统不会再等待设置时间,而是立即开始备份调度。​
    backupDBList​
    是​
    备份库列表,如果是多个库,以英文逗号(,)隔开。​
    localBackupFileDir​
    是​
    备份文件存放的本地地址。如果该地址不是公网自建 SQL Server 实例所在的机器目录,需要保证文件在该目录时,且文件需为完整的备份文件(不是传输中状态)。​
    uploadRateMBLimit​
    否​
    文件迁移的速率,默认 50,单位 MB。​
    logBackupInterval​
    否​
    日志备份的间隔,单位:分钟,默认 20 分钟。​
    host​
    否​
    公网自建 SQL Server 实例连接使用的主机地址,如果指定了主机地址,那么系统会自动拉取 backupStartDate 后的备份元数据。​
    port​
    否​
    公网自建 SQL Server 实例连接使用的端口。​
    username​
    否​
    公网自建 SQL Server 实例连接使用的用户名。​
    password​
    否​
    公网自建 SQL Server 实例连接使用的用户名密码。​
    ​
  1. 双击 dtsBackupAgent.exe 文件启动工具。​
  • 如果运行正常,则会打开一个命令终端,并生成 dtsBackupAgent.log 和 dtsBackupManifest.db 文件,迁移期间请勿删除该文件。如果脚本运行正常,则会打开一个命令终端,并生成 dtsBackupAgent.log 和 dtsBackupManifest.db 文件,迁移期间请勿删除该文件。​
步骤四:检查任务是否正常备份​
您可以通过以下两种方式查看备份迁移任务是否正常运行:​
  • 方式一:通过日志来查看任务备份是否正常运行。请查看您 SQL Server 服务器 dtsagent 目录中 dtsBackupAgent.log 文件。​
  • 方式二:通过 DTS 控制台查看任务备份是否正常运行。​
  1. 登录 DTS 控制台。​
  1. 在顶部菜单栏,选择项目和地域。​
  1. 在左侧导航栏,单击数据迁移。​
  1. 在数据迁移列表页面,单击目标任务名称。​
  1. 在目标任务详情页面,单击任务进度。​
  1. 在任务进度页签,查看备份进度。​
后续操作​
  1. 在业务低谷期 T1 时刻,暂停源端数据的写入。​
  1. 等待 DTS 迁移任务最近一次增量恢复的时间大于 T1 时刻。​
  1. 打开数据库。在完成全量和增量数据迁移后,业务切割前,您需要手动打开目标端数据库,确保数据割接后业务可正常读写。​
注意​
打开数据库后,无法继续执行恢复,请谨慎操作。​
  1. 检查源库和目标库数据是否一致。​
  1. 业务切换。​
常见问题​
Q:为什么备份文件一直在恢复中?​
A:可能是由于您待恢复的备份文件较大,因此恢复时间较久。​
​
最近更新时间:2026.03.16 16:04:13
这个页面对您有帮助吗?
有用
有用
无用
无用