由于RDS MySQL中Database和Schema是等价的,只有一层结构,而RDS PostgreSQL有Database和Schema两层结构,因此DLA中创建RDS PostgreSQL Schema和表时与RDS MySQL稍有不同。

操作步骤

  1. 登录DLA控制台
  2. 单击左侧导航栏的SQL访问点,然后单击登录到DMS,执行以下SQL创建RDS PostgreSQL Schema。

    您也可以通过MySQL客户端或者程序代码等方式链接DLA,然后执行以下SQL创建RDS PostgreSQL Schema。

    ​ CREATE SCHEMA `hello_postgresql_vpc_rds` WITH DBPROPERTIES 
     ( 
     CATALOG = 'postgresql', 
     LOCATION = 'jdbc:postgresql://rm-bp*******fake.pg.rds.aliyuncs.com:3433/rds_postgresql_dbname',
      USER='rds_postgresql_username',
      PASSWORD='rds_postgresql_password',
      INSTANCE_ID = 'rds_postgresql_instance_id',
      VPC_ID = 'rds_postgresql_vpcid'
     );​
    参数说明如下:
    参数 说明
    CATALOG 取值为postgresql,表示创建的是PostgreSQL Schema。
    LOCATION RDS PostgreSQL的连接信息,由jdbc:postgresql://RDS PostgreSQL连接地址:3433/rds_postgresql_dbname组成。
    USER RDS PostgreSQL中的数据库账号。
    PASSWORD USER对应的密码。
    INSTANCE_ID RDS PostgreSQL的实例ID。
    VPC_ID RDS PostgreSQL的VPC ID。
  3. 创建表

    创建RDS PostgreSQL表时需要在table_mapping中要指定Schema的名字和表名。

    ​create external table person (
           id int,
           name varchar(1023),
           age int
    ) tblproperties(
      table_mapping = 'hello_postgresql_vpc_rds.person'
    );​

    接下来您就可以通过客户端或者程序代码连接DLA,读取RDS PostgreSQL中的数据,或者将OSS、Tablestore中的数据清洗出来写入RDS PostgreSQL。