---
title: "CREATE EXTERNAL CATALOG - OceanBase 数据库 V4.3.5 | OceanBase 文档中心"
description: CREATE EXTERNAL CATALOG 描述 该语句用来在数据库中创建外部数据目录（External Catalog），用于连接外部数据源，获取外部数据的元信息。可以通过它直接查询外部数据，无需进行数据导入或迁移。 说明 对于 OceanBase 数据库 V4.3.5 版本，从 V4.3.5 BP2 版本开始…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.5 LTS

# CREATE EXTERNAL CATALOG

更新时间：2026-07-15 20:42:46

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.5/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/600.sql-statement-of-mysql-mode/2150.create-external-catalog-of-mysql-mode.md)  

## 描述

该语句用来在数据库中创建外部数据目录（External Catalog），用于连接外部数据源，获取外部数据的元信息。可以通过它直接查询外部数据，无需进行数据导入或迁移。

#### 说明

对于 OceanBase 数据库 V4.3.5 版本，从 V4.3.5 BP2 版本开始支持 `CREATE EXTERNAL CATALOG` 语句。

## 使用限制及注意事项

当前仅支持创建 ODPS 类型的 External Catalog。

## 权限要求

执行 `CREATE EXTERNAL CATALOG` 语句，需要当前用户拥有 `CREATE CATALOG` 权限。有关 OceanBase 数据库权限的详细介绍，参见 [MySQL 模式下的权限分类](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000002016100)。

## 语法

```sql
CREATE EXTERNAL CATALOG [IF NOT EXISTS] external_catalog_name
    PROPERTIES [=] (
        TYPE = 'ODPS',
        [ACCESSTYPE = 'accesstype_string',]
        ACCESSID = 'string',
        ACCESSKEY = 'string',
        STSTOKEN = 'string',
        ENDPOINT = 'string',
        TUNNEL_ENDPOINT = 'string',
        PROJECT_NAME = 'string',
        [QUOTA_NAME = 'string',]
        [COMPRESSION = 'compression_string',]
        REGION = 'string'
    );

accesstype_string:
    aliyun
    | sts
    | app

compression_string:
    zlib
    | zstd
    | lz4
    | odps_lz4

```

## 参数说明

| **参数** | **描述** |
| --- | --- |
| IF NOT EXISTS | 可选项，如果指定该子句，即使要创建的外部数据目录在当前租户中已存在，也不会报错，系统会提示一条 Warning 信息；如果不指定，则会报错。 |
| external_catalog_name | 指定要创建的外部数据目录的名称。 |
| TYPE | 指定外部数据目录的类型。当前版本取值为 `ODPS`，即外表读写 MaxCompute 数据时，取值为 `ODPS`。 |
| ACCESSTYPE | 可选项，MaxCompute 的账号类型，默认值为 `aliyun`。账号类型取值（不区分大小写）如下：   - `aliyun` - `sts` - `app` |
| ACCESSID | 当 `ACCESSTYPE` 的值是 `aliyun`/`app` 账号类型或者为空时，`aliyun`/`app` 账号或者具备 MaxCompute 访问权限的 RAM 用户的 AccessKey ID。 |
| ACCESSKEY | 当 `ACCESSTYPE` 的值是 `aliyun`/`app` 账号类型或者为空时，`aliyun`/`app` 账号或者具备 MaxCompute 访问权限的 RAM 用户的 AccessKey Secret。 |
| STSTOKEN | 当 `ACCESSTYPE` 的值是 `sts` 账号类型时，这里是访问 MaxCompute 服务的 token。 |
| ENDPOINT | 指定 MaxCompute 的 EndPoint（域名节点）。 |
| TUNNEL_ENDPOINT | 表示 Tunnel Endpoint，MaxCompute Catalog 使用 Tunnel SDK 获取数据。 |
| PROJECT_NAME | 指定 MaxCompute 中的项目空间名称。项目空间（Project）是 MaxCompute 的基本组织单元，它类似于传统数据库的 Database 或 Schema 的概念。 |
| QUOTA_NAME | 可选项，Quota 在 MaxCompute 中代表计算资源池（计算、访问、写入），如果用户配置了对应的 Quota，通过该参数指定特定的 Quota。 |
| COMPRESSION | 可选项，指定数据源的压缩格式，不设置表示不开启压缩。取值（不区分大小写）如下：   - `zlib` - `zstd` - `lz4` - `odps_lz4` |
| REGION | 指定 MaxCompute 开通的地域。 |

## 示例

```sql
CREATE EXTERNAL CATALOG test_odps_catalog
    PROPERTIES = (
        TYPE = 'ODPS',
        ACCESSID = '$odps_accessid',
        ACCESSKEY = '$odps_accesskey',
        ENDPOINT = '$odps_endpoint',
        TUNNEL_ENDPOINT = 'http://dt.cn-hangzhou.maxcompute.aliyun.com',
        PROJECT_NAME = 'mysqltest_regression_sqlqa',
        QUOTA_NAME = '',
        COMPRESSION_CODE = ''
    );

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
