2012-07-18 96 views
1

我想从我的postgresql数据库备份所有内容。我有2个网站,我的活的一个和开发者之一。所有的代码都是同步的,我只是想将所有的数据拷贝到开发站点去做一些测试,然后添加数据,然后将其复制回来。备份来自postgreSQL数据库(Django站点)的所有数据

我试过通过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和网上的每个教程几乎都做同样的事情。

请让我知道你是否需要更多的细节!

这里是我的DB细节:

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. 

感谢,

乔希

修订

+0

我使用了一个python-psycopg2解决方案:生成使得副本为db的sql – 2012-07-18 15:27:00

+0

这是怎么做的? – 2012-07-19 14:15:22

回答

6
  1. 你为什么要使用gzip,而不是--format到获得压缩转储?
  2. 你为什么以root身份执行此操作?
  3. 为什么你不使用pg_restore来恢复你的数据库?
  4. 你为什么在实际manuals

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

    pg_restore的-U some_user -d数据库名称mydb.dump利于随机网络教程

+0

对不起,我可能没有这里所说的是原始命令我跑做倾倒/恢复: pg_dump的DB_NAME> joshtestdump PSQL DBNAME 2012-07-18 15:39:33

+0

我没有登录,因为我的身份登录SSH我的根用户帐号。我是否需要以数据库登录? – 2012-07-18 15:50:12

+0

@JoshDavies您正在使用sudo,这意味着以root用户身份运行命令(它代表超级用户)。 – Cromulent 2012-07-18 18:00:19