首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从服务器上的postgreSQL hot_standby pg_dump

从服务器上的postgreSQL hot_standby pg_dump
EN

Database Administration用户
提问于 2015-04-17 09:27:42
回答 3查看 3.9K关注 0票数 1

我有主从(hot_standby) pgsql配置,我想从我的一个奴隶中进行备份。我不想要PITR,只是好的旧数据库转储。

我从MySQL转到了postgres。使用MySQL复制,我使用以下步骤从从服务器进行备份:

  1. stop slave;
  2. 执行mysqldump
  3. start slave

我能用postgres做类似的事吗?

我在从服务器上尝试了pg_dump,但它返回了错误:

代码语言:javascript
复制
pg_dump: Dumping the contents of table "news_event" failed:   PQgetResult() failed.
pg_dump: Error message from server: ERROR:  canceling statement due to conflict with recovery
DETAIL:  User query might have needed to see row versions that must be removed.

此外,pg_dump在主服务器上运行良好,因此我可以在主服务器上进行备份,但我更喜欢在从服务器上进行备份。

EN

回答 3

Database Administration用户

发布于 2015-04-17 09:33:12

只需运行pg_dump文档说:

pg_dump是备份PostgreSQL数据库的实用工具。即使同时使用数据库,也会进行一致的备份。pg_dump不阻止其他用户(读者或作者)访问数据库。

反过来,您在从服务器上看到的数据库状态也是一致的。如果复制有相当大的延迟,则结果可能与主服务器的转储略有不同。

票数 4
EN

Database Administration用户

发布于 2015-11-13 15:57:01

根据这个电子邮件线程的说法,从奴隶那里转储似乎需要PostgreSQL v9.1,并且启用了hot_standby_feedback设置(可能还有其他设置)。希望随着新版本的复制改进,它将变得更容易/更简单。

票数 1
EN

Database Administration用户

发布于 2015-04-17 09:46:28

您可以使用pgAdmin执行pg_dump操作,并选择备份文件(表、模式)中的确切内容。此外,您还可以选择备份设置,如备份文件格式。它非常容易使用,如果数据库很大,您只需等到进程完成。

要在连接到PostgreSQL后启动备份,只需右键单击数据库并选择backup .选项。然后为您选择正确的选项并启动备份过程。

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/98125

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档