标签: pg-dump

在仍有许多活动事务的情况下执行pg_dump

作为主题,当数据库中仍有许多活动事务时,备份文件会发生什么.它是实时导出还是仅部分备份?

提前致谢.

postgresql pg-dump

5
推荐指数
1
解决办法
1842
查看次数

Postgres:pg_restore / pg_dump一切,除了表的表ID

目前,我正在做类似的事情:

pg_dump -a -O -t my_table my_db > my_data_to_import.sql
Run Code Online (Sandbox Code Playgroud)

我真正想要的是能够仅导入/导出数据,而不会引起与autoid字段的冲突或覆盖现有数据。

也许我在考虑整个过程错了吗?

postgresql pg-dump pg-restore

5
推荐指数
1
解决办法
2669
查看次数

如何检查postgresql备份是否成功?

我们有一个postgresql数据库,每晚从一个cron作业备份,并带有以下命令:

su postgres -c "pg_dump our_database | gzip > /home/smb/shared/database_backup.bak.gz"
Run Code Online (Sandbox Code Playgroud)

最近我们有一个磁盘故障,从一些坏扇区开始,在此期间pg_dump退出时出现以下错误

pg_dump: SQL command failed
pg_dump: Error message from server: ERROR: catalog is missing 17 attribute(s) from relid 20158
pd_dump: The command was: LOCK TABLE public.obvez IN ACCESS SHARE MODE
Run Code Online (Sandbox Code Playgroud)

现在,因为它是在cron作业,没有人注意到错误消息,备份被中断,但它不是零大小,一切似乎都没有,并且当我们意识到我们没有备份时,错误被忽视直到最终磁盘失败.

我们设法从较旧的备份恢复数据,但现在我想知道检查pg_dump是否成功完成其工作的正确方法是什么?

postgresql backup restore pg-dump

5
推荐指数
1
解决办法
1万
查看次数

pg_dump:[archiver(db)]与数据库"mydb"的连接失败:致命:数据库"mydb"不存在

好的,按照这些说明运行我:

$ PGPASSWORD=mypassword pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump
Run Code Online (Sandbox Code Playgroud)

在数据库所在的同一文件夹(app_db.sql)但我一直得到:

pg_dump: [archiver (db)] connection to database "mydb" failed: FATAL:  database "mydb" does not exist
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况,我能做些什么来解决它?

谢谢

sql postgresql command-line pg-dump heroku

5
推荐指数
1
解决办法
5100
查看次数

pg_dump vs COPY(SELECT*FROM my_table)

我需要将表的内容从一个数据库复制到另一个数据库,并使用相同的表,该表当前为空.

我计划从旧表中转储表数据,然后将其导入新数据库中的空表.但是,我遇到了一些我不理解使用pg_dump的行为.

我尝试使用以下命令将表数据转储到文件:

pg_dump -a -t '"my_table"' my_database > /tmp/my_table.sql
Run Code Online (Sandbox Code Playgroud)

这是有效的,但我只得到8条记录,如果我像这样查看表格,表格中有超过1000条记录:

SELECT * FROM my_table;
Run Code Online (Sandbox Code Playgroud)

所以,我尝试使用COPY命令生成.csv文件,我看到类似的行为:

COPY my_table TO '/tmp/my_table.csv' WITH CSV HEADER;
Run Code Online (Sandbox Code Playgroud)

我得到与pg_dump相同的8条记录.但是,有:

COPY (SELECT * FROM my_table) TO '/tmp/my_table.csv' WITH CSV HEADER;
Run Code Online (Sandbox Code Playgroud)

我得到了所有1266条记录.

我会假设这些命令都应该返回相同的数据,但显然,我错了.有什么不同?

sql pg-dump postgresql-9.0

5
推荐指数
1
解决办法
3587
查看次数

pg_dump从远程服务器到localhost

大家好,任何人都可以帮我从远程AWS服务器上的postgreSQL数据库转储到本地机器上的postgreSQL数据库.

我一直在尝试使用这个堆栈帖子中的答案,但它一直在失败.

我正在使用的命令是

pg_dump -C -h ssh ubuntu@ec2-59-16-143-85.eu-west-1.compute.amazonaws.com -U dev_user paycloud_dev | psql -h localhost -U dev_user paycloud_dev
Run Code Online (Sandbox Code Playgroud)

但我一直在收到错误

pg_dump: too many command-line arguments (first is "paycloud_dev")
Run Code Online (Sandbox Code Playgroud)

无法弄清楚我做错了什么

只是添加,dev_user是我在本地机器和远程服务器上的postgreSQL中设置的角色.paycloud_dev是两个数据库的名称(所有者是dev_user)

编辑1

根据由于某种原因已被删除的帖子尝试下面的命令

pg_dump -C -h ec2-59-16-143-85.eu-west-1.compute.amazonaws.com -U dev_user paycloud_dev | psql -h localhost -U dev_user paycloud_dev 
Run Code Online (Sandbox Code Playgroud)

现在这给了我错误

pg_dump: [archiver (db)] connection to database "paycloud_dev" failed: could not connect to server: Connection refused
Is the server running on host "ec2-59-16-143-85.eu-west-1.compute.amazonaws.com" (59.16.143.85) and accepting
TCP/IP …
Run Code Online (Sandbox Code Playgroud)

postgresql ssh pg-dump

5
推荐指数
1
解决办法
9930
查看次数

可以指示pg_dump使用“ IF NOT EXISTS”创建表吗?

按照标题。

我看了手册页,似乎没有任何命令行参数在“ CREATE TABLE”语句中包含“ IF NOT EXISTS”子句。

sql postgresql pg-dump

5
推荐指数
1
解决办法
4148
查看次数

PGAdmin 4未能正确备份数据库

我尝试备份我的大学项目数据库。我按照指示进行,似乎一切都输入了:

1:

在此处输入图片说明

2:

在此处输入图片说明

3:

但是我唯一看到的弹出窗口是PGAdmin 4右下角的这个: 在此处输入图片说明

官方网站上,应该有类似此内容的另一种弹出消息:

在此处输入图片说明

但是我没有得到这个,也没有得到任何发生错误时显示的另一个。

我试图直接使用pg_dump.exe,但是它提示我输入密码。我尝试了所有密码-用户密码,服务器密码,这些密码用于PGAdmin 4中连接到数据库的密码,但其他密码似乎都不起作用。

在此处输入图片说明

我试图找到与此有关的任何信息,但是有关pg_dump.exe的所有文章都涉及如何自动执行密码输入。此备份静默失败的原因是什么?pg_dump.exe需要哪个密码?

如果需要的话,我会添加任何详细信息,我现在想算了4个小时...

postgresql pg-dump pgadmin pgadmin-4

5
推荐指数
2
解决办法
4156
查看次数

使用pg_dump设置sslmode = allow

我需要指定sslmode=allow何时使用psql连接到我的PostgreSQL数据库,如:psql sslmode=allow -h localhost -p 5432 我得到了server does not support SSL, but SSL was required

我尝试指定相同的选项,pg_dump但它无法识别该选项.

如何指定sslmodepg_dump

postgresql ssl pg-dump

5
推荐指数
1
解决办法
3851
查看次数

PostgreSql:错误:从转储文件恢复时不存在关系"序列"

从服务器上的转储文件恢复数据库时出现以下错误:

错误:关系"table_id_seq"不存在第
1行:SELECT pg_catalog.setval('table_id_seq',362,true);

  • 我的本地psql版本是10.2
  • server psql版本是9.6.8

这是我的dump命令:

pg_dump -U username -h localhost db_name > filename.sql
Run Code Online (Sandbox Code Playgroud)

这是我在服务器上的恢复命令:

psql -U username -h localhost db_name < filename.sql
Run Code Online (Sandbox Code Playgroud)

请帮忙,谢谢.

postgresql pg-dump postgresql-9.6 postgresql-10

5
推荐指数
2
解决办法
4645
查看次数