阿里云数据库PPAS版支持通过逻辑备份文件将云上数据迁移到本地数据库。

操作步骤

  1. 通过PostgreSQL客户端,连接云数据库。
  2. 执行如下命令,备份数据。
    pg_dump -U username -h hostname -p port databasename -f filename
    参数说明如下:
    • username:数据库用户名。
      说明 建议使用高权限账号或者有读写权限的普通账号。
    • hostname:数据库主机名。
    • port:数据库端口号。
    • databasename:要备份的数据库名。
    • filename:要生成的备份文件名称。

    示例

    pg_dump -U ppas_user -h rdsv07z563m7o25cj550public.ppas.rds.aliyuncs.com -p 3433 edb -f ppas.sql
  3. 将备份文件ppas.sql上传到目标服务器中。
  4. 执行如下命令将数据恢复到本地数据库。
    psql -U username -h hostname -d desintationdb -p port -f dumpfilename.sql
    参数说明如下:
    • username:数据库用户名。
    • hostname:数据库地址。
    • port:数据库端口号。
    • databasename:数据库名。
    • filename:备份文件名称。例如:

    示例

    WARNING:  no privileges could be revoked for "xxxxx"
    ERROR:  role "xxxxx" does not exist

    由于RDS数据库的权限设置和本地数据库不一致,在数据导入过程当中可能会出现一些与权限相关的WARNING或ERROR,可以忽略,例如:

    psql -U ppas_user -h localhost -d edb -p 5444 -f ppas.sql