前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >备份和恢复 timescaledb 的超级表 (hypertables)

备份和恢复 timescaledb 的超级表 (hypertables)

作者头像
beginor
发布2020-08-10 15:20:43
1.8K0
发布2020-08-10 15:20:43
举报

备份和恢复 timescaledb 的超级表 (hypertables)

下面是使用 PostgreSQL 内置的工具 pg_dumppsql 对超级表 conditions 进行备份和恢复的步骤。

备份

备份超级表架构:

代码语言:javascript
复制
pg_dump -s -d old_db --table conditions -N _timescaledb_internal | \
  grep -v _timescaledb_internal > schema.sql

将备份超级表的数据备份到 CSV 文件:

代码语言:javascript
复制
psql -d old_db \
-c "\COPY (SELECT * FROM conditions) TO data.csv DELIMITER ',' CSV"

恢复

恢复表的架构:

代码语言:javascript
复制
psql -d new_db < schema.sql

重新构建超级表:

代码语言:javascript
复制
psql -d new_db -c "SELECT create_hypertable('conditions', 'time')"

提示: 传递给 create_hypertable 的参数不必和旧数据库保持一致, 所以这也是重新组织超级表(比如:修改分区键、 分区数量、 等)的好方法。

恢复数据:

代码语言:javascript
复制
psql -d new_db -c "\COPY conditions FROM data.csv CSV"

提示: PostgreSQL 内置的 COPY 命令是单线程的, 如果想要快速导入大量的数据, 建议使用 timescaledb 提供的并行导入工具 parallel importer

其它备份方法可以参考 Timescaledb 的官方文档中的备份与恢复

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 备份和恢复 timescaledb 的超级表 (hypertables)
    • 备份
      • 恢复
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档