腾讯云DTS云数据库跨账号实例间迁移

操作场景

云数据库跨账号实例间数据迁移,资源库和目标库都属于腾讯云数据库实例,但所属不同的主账号名下,这种数据库实例之间的数据迁移。本章节介绍通过 DTS 数据迁移功能实现从其他账号腾讯云数据库实例迁移数据至本账号下云数据库实例。

说明:

不支持通过云数据库跨账号的方式,进行中国站和国际站之间的云数据库迁移,如有相关诉求,请通过公网方式。

支持范围

源数据库为腾讯云的云数据库实例,具体为:MySQL、TDSQL MySQL、TDSQL-C MySQL、MariaDB、MongoDB、PostgreSQL、Redis、Tendis、SQL Server。

前提条件

已创建目标数据库实例。

注意事项

本操作中涉及多处账号信息配置,如下列出了主要配置逻辑,以方便用户理解和正确配置。

数据迁移方向:源数据库(其他账号的数据库实例)> 目标数据库(本账号的数据库实例)。

执行迁移任务的账号可以是目标数据库的主账号,也可以目标数据库的子账号。

使用主账号执行迁移任务。操作任务前,需要请求源数据所属主账号持有人进行角色授权(给目标数据库的主账号),使目标数据库主账号可以访问源数据库。

使用子账号执行迁移任务。操作任务前,需要先请求源数据所属主账号持有人进行角色授权(给目标数据库的主账号),使目标数据库主账号通过角色访问源数据库。然后再请求目标数据库所属主账号持有人进行策略授权(对目标数据库的子账号),使目标数据库子账号可以访问源数据库。

授权账号

使用主账号执行迁移任务,请操作步骤1 – 6,使用子账号执行迁移任务,请操作步骤1 – 11。

使用源数据库所属的腾讯云主账号登录 访问管理控制台(如果子账号有 CAM 和角色相关的权限,也可以使用子账号登录)。

左侧导航单击角色,进入角色管理页面,然后单击新建角色

在选择角色载体页面,选择腾讯云账户方式。

腾讯云DTS云数据库跨账号实例间迁移

输入角色载体信息页面,配置相关信息,单击下一步

腾讯云DTS云数据库跨账号实例间迁移

云账号类型:选择其他主账号

账号 ID:填入目标数据库所属的腾讯云主账号 ID,主账号 ID 可在 账号信息 中查看。目标数据库实例属于子账号名下时,此处也填写主账号 ID。

外部 ID:可依据情况,选择性开启。

说明:

如果使用了外部 ID,请用户自行记录和保存该 ID,后续配置需要填写。

配置角色策略页面,选择 DTS 策略和源数据库服务对应策略,单击下一步

DTS 服务策略,选择 QcloudDTSReadOnlyAccess。

源数据库服务对应的策略。

源数据库为云数据库 MySQL,选择 QcloudCDBReadOnlyAccess (云数据库 CDB 相关资源只读访问权限),QcloudCDBInnerReadOnlyAccess(CDB 的读取列表权限)。

数据库为云数据库 TDSQL MySQL,选择 QcloudTDSQLReadOnlyAccess(TDSQL MySQL 版(TDSQL for MySQL)只读访问权限)。

数据库为云数据库 MariaDB,选择 QcloudMariaDBReadOnlyAccess(云数据库 MariaDB 只读访问权限)。

源数据库为云数据库 PostgreSQL,选择 QcloudPostgreSQLReadOnlyAccess(云数据库 PostgreSQL 只读访问权限)。

源数据库为腾讯云 MongoDB,选择 QcloudMongoDBReadOnlyAccess(文档数据库(MongoDB)只读访问权限)。

源数据库为腾讯云 SQL Server,选择 QcloudSQLServerReadOnlyAccess(云数据库 SQL Server 只读访问权限)。

源数据库为腾讯云 Redis/Tendis,选择 QcloudRedisReadOnlyAccess(云缓存 Redis 只读访问权限)。

源数据库为云数据库 TDSQL-C MySQL,选择 QcloudCynosDBReadOnlyAccess(TDSQL-C MySQL 只读访问权限)。

腾讯云DTS云数据库跨账号实例间迁移

配置角色标签,然后在审阅页面,设置角色名称,单击完成后该角色创建完成。

说明:

角色名称配置后请记录,后续创建迁移任务时需要输入。

腾讯云DTS云数据库跨账号实例间迁移

说明:

如果执行迁移任务的账号为主账号,授权步骤到此结束;如果为子账号,还需要继续进行如下步骤7-11,请求当前主账号持有人,对子账号进行策略授权。

(可选)使用目标数据库所属的腾讯云主账号登录 访问管理控制台,在左侧导航单击策略,然后在右侧单击新建自定义策略,并选择按策略语法创建

腾讯云DTS云数据库跨账号实例间迁移

(可选)选择空白模板,然后单击下一步

腾讯云DTS云数据库跨账号实例间迁移

(可选)创建一个策略,策略的名称以及描述可以根据自己的需求填写,策略内容复制示例代码后,将红框中的内容替换成对应的信息。

说明:

本步骤如果输入正确的语法格式后仍然提示报错,可能是使用了源数据库的主账号进行操作,需要从步骤7开始,使用目标库的主账号登录后创建策略。

腾讯云DTS云数据库跨账号实例间迁移

策略语法示例:

{    "version": "2.0",    "statement": [    {        "effect": "allow",        "action": ["name/sts:AssumeRole"],  "resource": ["qcs::cam::uin/10*******8:roleName/DTS-role"]    } ]}

(可选)单击完成后返回到策略列表页,在列表页中单击关联用户/组/角色

(可选)选择目标数据库实例所属子账号(或者其他执行任务的账号),单击确定,如下图所示。

说明:

这里关联用户时,需要按照执行者的实际授权方式来选择。

主账号给执行者授权子用户时,这里勾选对应的用户(绝大部分情况)。

主账号给执行者授权用户组时,这里勾选对应的用户组。

主账号给执行者授权角色时,这里勾选对应的角色。

腾讯云DTS云数据库跨账号实例间迁移

创建迁移任务

使用目标数据库实例所属腾讯云账号,登录 DTS 控制台

选择数据迁移 > 新建迁移任务,购买一个新的迁移任务。

购买完成后,返回数据迁移列表,单击操作列的配置,进入配置迁移任务页面。

在设置源和目标数据页面,配置源库和目标库信息。下面以 MySQL 到 MySQL 的迁移为例进行介绍。

腾讯云DTS云数据库跨账号实例间迁移

跨账号关键参数配置如下:

接入类型:选择云数据库,表示源数据库属于腾讯云数据库实例。

是否跨账号:选择跨账号

跨腾讯云账号 ID: 填入源数据库所属的主账号 ID。

跨账号授权角色名称。即前文 授权账号 步骤6中创建的角色名称,您可以通过 角色 以及 跨账号角色 了解更多关于角色的概念。

外部角色 ID:如果前文 授权账号 步骤4中设置了外部 ID,则这里则必须按照设置的内容正确填写,否则会发生权限报错。没有设置则不需要填写。

说明:

完成上述配置后,选择对应的所属地域,即可获取到跨账号下的实例列表,如果获取实例出现报错,则可能为配置错误,或者未授权,请参考 常见问题 进行处理。

在设置迁移选项和迁移对象页面,对数据迁移选项、迁移对象选项进行设置,在设置完成后单击保存并下一步

在校验任务页面,完成校验并全部校验项通过后,单击启动任务。 如果校验任务不通过,可以参考 校验不通过处理方法 修复问题后重新发起校验任务。

返回数据迁移任务列表,任务开始进入运行中状态。

常见问题

1. 跨账号拉取实例列表报错:role not exist[InternalError.GetRoleError]

请确认跨腾讯云账号 ID(应该为源数据库的主账号 ID)和跨账号授权角色名称(应该为 授权账号 步骤6中创建的角色名称)配置是否正确。

2. 获取云数据库实例列表失败:InternalError:InternalInnerCommonError

腾讯云DTS云数据库跨账号实例间迁移

角色中没有授权源数据库所属的腾讯云服务策略,请参考 授权账号 中的步骤5进行授权。

3. 跨账号拉取实例列表报错:you are not authorized to perform operation (sts:AssumeRole) ,resource (qcs::cam::uin/1xx5:roleName/xxxx) has no permission

腾讯云DTS云数据库跨账号实例间迁移

出错原因:您当前创建迁移任务使用的账号是子账号,并且当前子账号没有 sts:AssumeRole 权限。

解决方法

使用主账号来创建迁移任务。

请求目标数据库所属的主账号持有人,参考 授权账号 对子账号授权,策略语法中的 resource,填写报错框中蓝色字段部分。

腾讯云DTS云数据库跨账号实例间迁移

4. DTS 任务配置未填写角色外部 ID,或者填写错误,导致权限报错或者拉取数据库实例失败。

腾讯云DTS云数据库跨账号实例间迁移

出错原因授权账号 时设置了外部 ID,但在 DTS 任务配置中未填写角色外部 ID,或者填写错误,导致权限报错或者拉取数据库实例失败。

解决方案:授权账号时如果设置了外部 ID,则 DTS 任务配置时需要正确填写,未设置则不需要填。

腾讯云DTS云数据库跨账号实例间迁移

主题测试文章,只做测试使用。发布者:云大使,转转请注明出处:https://www.xp8.net/data/5296.html

(1)
打赏 微信扫一扫 微信扫一扫
云大使的头像云大使
上一篇 2026年1月3日 下午2:32
下一篇 2026年1月5日 下午3:23

相关推荐

  • Linux系统MySQL备份的导入导出的具体操作教程-学派吧

    问题描述 如何对 ECS Linux 系统中的 MySQL 进行备份的导入和导出。 处理办法 MySQL 备份的导出 MySQL 备份的导入 MySQL 备份的导出 注意: 如果您使用的是帮助中心的一键环境配置,那么 MySQL 的安装目录是 /alidata/server/mysql。 如果您将 MySQL 安装到其他目录,您需要输入您 MySQL 完整的…

    数据库运维 2019年1月1日
    2.2K00
  • 巧用Navicat for MySQL的快捷键-navicat教程-学派吧

    本文章给大家带来的内容是关于巧用Navicat for MySQL的快捷键,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 巧妙地使用 Navicat for MySQL 快捷键,可以大大提高工作效率,本篇经验将分类介绍 Navicat for MySQL 快捷键。 ctrl+q 打开查询窗口 ctrl+/ 注释sql语句 ctrl+shif…

    数据库运维 2018年11月26日
    4.2K00
  • centos解决mysql-bin.000*占用超大空间的问题

    本站(也就是安全者)网站数据库挂了一下午,也没时间处理,晚上回来后尝试restart mysql,发现一直提示shutting down……….关闭不了,也stop不了,服务器重启也不行。可以确信肯定是mysql出问题了。 进入mysql的data目录一大堆名字为mysql-bin.000001 — mysql…

    数据库运维 2018年7月9日
    2.2K00
  • MySQL Workbench如何导出查询结果?(图文)-mysql教程-学派吧

    你可以使用MySQL Workbench运行一个查询,然后将该查询的结果导出到一个文件中。(相关推荐:《MySQL教程》) 步骤: 1、运行查询 2、单击“Results Grid”菜单栏上的“Export” 如下截图: 注意:MySQL Workbench默认将结果集限制为1000行。如果不希望你的结果集被限制在这个数量(或者已经指定的其他数量),请确保删…

    2019年4月9日
    3.0K00
  • MYSQL查询怎么优化?mysql查询优化的方法教程-mysql教程-学派吧

    本篇文章给大家带来的内容是关于python中进程池的简单实现代码,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助 1. 在所有用于where,order by和group by的列上添加索引 索引除了能够确保唯一的标记一条记录,还能是MySQL服务器更快的从数据库中获取结果。索引在排序中的作用也非常大。 Mysql的索引可能会占据额外的空间,并…

    数据库运维 2018年11月24日
    2.3K00

发表回复

登录后才能评论
联系我们

联系我们

18838889666

在线咨询: QQ交谈

邮件:xinyun@88.com

工作时间:周一至周五,9:30-18:30,节假日休息

添加微信
添加微信
分享本页
返回顶部
学派网官网正在升级改造中,如有影响访问,敬请谅解