在配置数据同步任务时,您需要在任务配置页面分别为源库和目标库填入数据库账号,该数据库账号将用于数据同步。由于不同的数据库类型和同步类型对权限要求有所不同,需要您在配置同步任务前完成数据库账号的创建与授权操作。
源库的数据库账号所需权限
数据库 | 所需权限 | 创建及授权方法 |
RDS MySQL | 待同步对象的读权限。 | |
自建MySQL | 待同步对象的SELECT权限。 REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW。 建库建表的权限,以允许DTS创建库dts,用于记录同步期间的心跳数据。 | |
PolarDB MySQL | 待同步对象的读权限。 | |
PolarDB PostgreSQL版(兼容Oracle) | 高权限账号。 | |
PolarDB-X 1.0 | 待同步对象的读权限。 | |
RDS SQL Server | 待同步对象所属数据库的所有者权限。 说明 高权限账号满足要求。 | |
自建SQL Server | sysadmin权限。 | |
RDS PostgreSQL | 高权限账号,且需为所选数据库的owner(授权账号)。 说明 当源库为RDS PostgreSQL 9.4,且仅需同步DML操作时,账号具备replication权限即可。 | |
自建PostgreSQL | superuser权限。 | CREATE USER和GRANT语法。 |
阿里云Redis实例 | 待同步对象的读写权限。 | |
自建Redis | 无用户和权限概念,可正常执行 | 无 |
云数据库MongoDB |
| |
自建MongoDB |
| |
自建TiDB | SHOW VIEW和待迁移对象的SELECT权限。 |
目标库的数据库账号所需权限
数据库 | 所需权限 | 创建及授权方法 |
RDS MySQL | 目标库的读写权限。 | |
自建MySQL | 目标库的ALL权限。 | |
PolarDB MySQL | 目标库的ALL权限。 | |
PolarDB PostgreSQL版(兼容Oracle) | 具备数据库Owner权限。 | 数据库Owner在创建数据库时已指定。 |
PolarDB-X 1.0 | 待同步对象所属数据库的写权限。 | |
云数据库 Tair(兼容 Redis) | 使用实例的密码:无需执行授权。 | 无 |
使用自定义账号:读写权限。 | ||
自建Redis | 无用户和权限概念,只需提供正确的数据库密码。 | 无 |
云数据库MongoDB | dbAdminAnyDatabase权限、目标库的readWrite权限、local库的read权限。 | |
自建MongoDB | dbAdminAnyDatabase权限、目标库的readWrite权限、local库的read权限。 | |
云原生数据仓库 AnalyticDB MySQL 版 |
| 3.0版本:创建数据库账号 |
云原生数据仓库AnalyticDB PostgreSQL | 初始账号或具备RDS_SUPERUSER权限。 | |
阿里云消息队列Kafka版 | 非必填项,无。 说明 如果Kafka实例的实例类型为VPC实例,无需配置数据库账号和数据库密码。 | 无 |
自建Kafka | 非必填项,无。 说明 如Kafka集群未开启验证可不填写。 | 无 |
DataHub | 无需配置数据库账号。 | 无 |
Elasticsearch | 创建时设置的登录名(默认为elastic)和登录密码。 | 创建实例。 |
MaxCompute | 待同步项目的CREATE TABLE、CREATE INSTANCE、CREATE RESOURCE、CREATE JOB、List权限。 | 同步任务配置时系统将自动授权。 |
表格存储(Tablestore) | 无需配置数据库账号。 | 无 |
双向同步任务对账号权限的要求
双向同步任务要求源和目标数据库具备如下权限,以允许DTS在源和目标数据库中创建库dts,用于做数据防循环复制。
数据库 | 所需权限 | 创建及授权方式 |
RDS MySQL | 高权限账号。 | |
自建MySQL | 待同步对象的SELECT权限。 REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW。 建库建表的权限,以允许DTS创建库dts,用于做数据防循环复制。 | |
RDS PostgreSQL | 高权限账号,且需为所选数据库的owner(授权账号)。 | |
自建PostgreSQL | superuser权限。 | CREATE USER和GRANT语法。 |
PolarDB MySQL | 高权限账号。 | |
云数据库 Tair(兼容 Redis) | 使用实例的密码:无需执行授权。 | 无 |
使用自定义账号:读写权限。 | ||
自建Redis | 无用户和权限概念,可正常执行 | 无 |