如何快速导出导入数据到rds for postgressql-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

如何快速导出导入数据到rds for postgressql

导出本地数据,再导入到rds for postgresql中,需要尽快完成。请问有什么方法吗?

展开
收起
明虚 2015-12-08 15:11:55 13097 0
3 条回答
写回答
取消 提交回答
  • belle.zhoux
    周晓,阿里云大数据+AI工程运营负责人

    膜拜!

    2019-07-16 11:48:00
    赞同 展开评论 打赏
  • 明虚
    PostgreSQL、Greenplum内核开发

    如下的shell脚本(适用于PG 9.3以上版本),可以并行的导出导入,其中jobs指定了并发的连接数:

    source_db_user=

    source_db_ip=

    source_db_port=

    source_db_name=

    source_db_password=

    target_db_user=

    target_db_ip=

    target_db_port=

    target_db_name=

    target_db_password=

    jobs=5

    echo "begin dumping"

    date

    export PGPASSWORD=$source_db_password

    pg_dump -U $source_db_user -h $source_db_ip -p $source_db_port $source_db_name -Fd -j $jobs -f dumpdir

    echo "done dumping"

    date

    echo "begin restoring"

    date

    export PGPASSWORD=$target_db_password

    pg_restore -U $target_db_user -h $target_db_ip -p $target_db_port -d $target_db_name -j $jobs dumpdir

    echo "end restoring"

    date

    2019-07-16 11:48:00
    赞同 展开评论 打赏
  • 德哥
    公益是一辈子的事, I am digoal, just do it.

    dump -> 管道 -> ssl 协议连接 rds(开启数据压缩) -> 导入
    我们以前从香港导数据到国内,带宽只有10Mbit,用这种方法提速近10倍左右。
    http://blog.163.com/digoal@126/blog/static/163877040201152753352356/
    http://blog.163.com/digoal@126/blog/static/16387704020115294425540/
    虽然RDS不提供服务器的权限,但是你选择了PostgreSQL,恭喜你,因为PostgreSQL直接支持SSL压缩。
    最后,如果你不知道PostgreSQL SSL怎么使用的话,你可以借助ECS做一个中继,ECS和你的本地建立SSL隧道,并建立到RDS PG的端口转发,这样也可以做到不落地的WAN段压缩传输。

    2019-07-16 11:48:00
    赞同 3 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
百问百答-RDS (上)
立即下载
百问百答-RDS (下)
立即下载
云数据库RDS MySQL从入门到高阶
立即下载