我使用以下命令备份我的数据库:
sudo -u user_name pg_dump dbName -f /home ..../someWhere/db.sql
但是它给了我这个错误信息:
pg_dump: [archiver] could not open output file "/home ..../someWhere/db.sql": Permission denied
在查找此问题时,我发现必须在/tmp
路径下备份我的数据,但并没有解决问题。
我该如何解决这个问题?
提前致谢。
我正在使用Ubuntu 12.04 LTS。
touch
еҲӣе»әж–Ү件еҗ—пјҹ"user_name"жҳҜд»Җд№Ҳпјҹдёәд»Җд№ҲиҰҒдҪҝз”ЁsudoеҲҮжҚўеҲ°еҸҰдёҖдёӘз”ЁжҲ·иҝӣиЎҢиҪ¬еӮЁж“ҚдҪңпјҹ - Craig Ringerpostgres =#\!touch /tmp/myfile.txt
postgres =#\!ls -l /tmp/myfile.txt
-rw-rw-r-- 1 postgres postgres 0 Jan 31 10:23 /tmp/myfile.txt - Jayadevanpg_dump
没有任何意义。pg_dump
是一个 shell 命令,而不是 PostgreSQL 命令。如果你的意思是想切换到该用户,也就是你真正想说的是sudo -u postgres pg_dump ...
,为什么不直接这么说呢? - Craig Ringer