IMPORT FOREIGN SCHEMA
云原生数据仓库 AnalyticDB MySQL 版支持通过IMPORT FOREIGN SCHEMA
批量创建MaxCompute外表。
前提条件
AnalyticDB for MySQL集群为3.2.2.0及以上版本。
请在云原生数据仓库AnalyticDB MySQL控制台集群信息页面的配置信息区域,查看和升级内核版本。
AnalyticDB for MySQL已开启ENI访问。
登录云原生数据仓库AnalyticDB MySQL控制台,在集群信息页面的网络信息区域,打开ENI网络开关。
MaxCompute项目与AnalyticDB for MySQL集群位于同一地域。
已添加AnalyticDB for MySQL的VPC网段到MaxCompute项目的白名单中。
登录云原生数据仓库AnalyticDB MySQL控制台,在集群信息页面查询VPC ID。然后登录专有网络控制台,在专有网络页面根据VPC ID查询网段。设置MaxCompute白名单的操作,请参见管理IP白名单。
AnalyticDB for MySQL已创建外部服务器。外部服务器操作详细语法,请参见管理外部服务器。
语法
IMPORT FOREIGN SCHEMA odps_project
[LIMIT TO (table_name[, …])]
FROM server_name
INTO adb_schema
[OPTIONS (
if_table_exist 'error|ignore|update',
if_type_unsupport 'error|ignore',
table_prefix 'table_prefix',
table_suffix 'table_suffix')]
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | MaxCompute的项目名称。 |
| 否 | 需要导入的MaxCompute表名称。如果不添加表名限制,系统则将该MaxCompute项目中的所有表批量创建至AnalyticDB for MySQL中。 |
| 是 | 外部服务器名。外部服务器操作详细语法,请参见管理外部服务器。 |
| 是 | 目标端AnalyticDB for MySQL数据库名。 |
| 否 | 目标端AnalyticDB for MySQL表名冲突时的处理策略。取值:
|
| 否 | 目标端AnalyticDB for MySQL中存在不支持的数据类型时的处理策略。取值:
|
| 否 | 为外表名称新增前缀。默认AnalyticDB for MySQL外表名称与MaxCompute中一致。 |
| 否 | 为外表名称新增后缀。默认AnalyticDB for MySQL外表名称与MaxCompute中一致。 |
示例
在AnalyticDB for MySQL 中创建MaxCompute外表pre_customer_suf和外表pre_order_suf。
IMPORT FOREIGN SCHEMA my_project
LIMIT TO (customer, order)
FROM maxcompute_server
INTO my_adb_schema
OPTIONS (
if_table_exist 'update',
if_type_unsupport 'ignore',
table_prefix 'pre_',
table_suffix '_suf'
);
管理外部服务器
创建外部服务器
语法
CREATE SERVER <server_name>
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
"endpoint":"<endpoint>",
"accessid":"<accesskey_id>>",
"accesskey":"<accesskey_secret>"
}'
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | 外部服务器的名称。输入长度不超过64个字符,以字母或下划线开头,只能包含字母、数字和下划线。 |
| 是 | 外部服务器的类型。固定填写为ODPS。 |
| 是 | MaxCompute的EndPoint(域名节点)。 仅支持通过VPC网络Endpoint访问MaxCompute。MaxCompute Endpoint详细信息请参见Endpoint。 |
| 是 | 阿里云账号或具备MaxCompute访问权限的RAM用户的AccessKey ID。 如何获取AccessKey ID和AccessKey Secret,请参见账号与权限。 |
| 是 | 阿里云账号或具备MaxCompute访问权限的RAM用户的AccessKey Secret。 如何获取AccessKey ID和AccessKey Secret,请参见账号与权限。 |
示例
CREATE SERVER maxcompute_server
TYPE = 'ODPS'
SERVER_PROPERTIES = '{
"endpoint":"http://service.cn-hangzhou-vpc.maxcompute.aliyun-inc.com/api",
"accessid":"************",
"accesskey":"************"
}';
查看外部服务器
查询所有外部服务器
SHOW SERVER
查询指定外部服务器
语法
SHOW SERVER WHERE SERVER_NAME='<server_name>'
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | 外部服务器的名称。 |
示例
SHOW SERVER WHERE SERVER_NAME='maxcompute_server';
查询指定类型的外部服务器
语法
SHOW SERVER WHERE SERVER_TYPE='<server_type>'
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | 外部服务器类型。MaxCompute仅支持ODPS。 |
示例
SHOW SERVER WHERE SERVER_TYPE='ODPS';
重命名外部服务器
语法
ALTER SERVER <server_name> RENAME <new_server_name>
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | 外部服务器的原名称。 |
| 是 | 外部服务器的新名称。 |
示例
ALTER SERVER maxcompute_server RENAME mc_server;
删除外部服务器
删除外部服务器后,AnalyticDB for MySQL与MaxCompute断开连接。
语法
DROP SERVER <server_name>
参数说明
参数 | 是否必填 | 说明 |
参数 | 是否必填 | 说明 |
| 是 | 外部服务器的名称。 |
示例
DROP SERVER maxcompute_server;
- 本页导读 (1)
- 前提条件
- 语法
- 参数说明
- 示例
- 管理外部服务器
- 创建外部服务器
- 查看外部服务器
- 重命名外部服务器
- 删除外部服务器