我不确定它的权限问题或我做错了什么,任何帮助将不胜感激。 我有一个安装了Postgres DB的专用Ubuntu服务器。我想备份数据库,但是当我使用pg_dump时,我被拒绝了。有人可以帮我吗? 以下是有关我设置的一些详细信息。
关于postgres:我有以下数据库。
postgres,
template0,
template1,
mydb,
mydb1
我有2个PostgreSQL用户
postgres,
mydb (There are no postgresql groups defined yet)
postgres的所有其他设置都是默认值。
在我的ubuntu上,我有2个用户。
user1,
mydb
我使用SSH以root / user1身份登录到该框,发出以下命令,
$ pg_dumpall > a.sql
我得到了,-bash:a.sql:权限被拒绝 与pg_dump命令相同。
我知道我在这里遗漏了一些东西。有人可以指导我正确发出这个命令吗? TIA。
答案 0 :(得分:3)
我得到了,-bash:a.sql:权限被拒绝 与pg_dump命令相同。
这看起来更像是文件权限问题。 OS用户是否有权编写转储文件?检查文件/目录权限。
答案 1 :(得分:1)
运行命令时
pg_dumpall > a.sql
然后您的shell将尝试在当前目录中创建文件a.sql
。如果您(作为“user1”)没有在当前目录中创建文件的权限,则首先使用cd
命令切换到您具有权限的目录。您可以使用pwd
命令查看当前目录的实际内容。