1

我正在尝试从我的 postgresql 数据库中备份所有内容。我有 2 个站点,我的 live 站点和 dev 站点。所有代码都是同步的,我只想将所有数据复制到开发站点以进行一些测试,然后添加数据,然后将其复制回来。

我试过浏览 postgres 网站上的文档,现在我很幸运。

我跑来做转储/恢复的命令:

pg_dump db_name > joshtestdump 
psql dbname < joshtestdump –

当我运行第一个命令转储数据库时,我收到以下错误消息:

pg_dump: [archiver (db)] connection to database "db_name" failed: FATAL:  Ident authentication failed for user "josh"

补充一下,数据库的用户名和密码是空白的。这对任何事情都有影响吗?

我是 postgreSQL 的新手,网络上的每个教程几乎都做同样的事情。

如果您需要更多详细信息,请告诉我!

这是我的数据库详细信息:

DATABASE_ENGINE = 'postgresql_psycopg2'           # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
DATABASE_NAME = 'db_name'             # Or path to database file if using sqlite3.
DATABASE_USER = ''             # Not used with sqlite3.
DATABASE_PASSWORD = ''         # Not used with sqlite3.
DATABASE_HOST = ''             # Set to empty string for localhost. Not used with sqlite3.
DATABASE_PORT = ''             # Set to empty string for default. Not used with sqlite3.

谢谢,

乔什

更新

4

1 回答 1

5
  1. 为什么要使用 gzip 而不是 --format 来获取压缩转储?
  2. 为什么要以 root 身份执行此操作?
  3. 你为什么不使用 pg_restore 来恢复你的数据库?
  4. 为什么你更喜欢随机的网络教程而不是实际的手册

    pg_dump -U some_user -Fc 数据库名 > mydb.dump

    pg_restore -U some_user -d database_name mydb.dump

于 2012-07-18T15:36:45.803 回答