pg_dump输出文件的"权限被拒绝"

 mobiledu2502923963 发布于 2023-01-30 13:24

我使用下面的命令来备份我的数据库

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

2 个回答
  • 尝试pg_dumppsql command-line如下:

    postgres=# \! pg_dump dbName -f /home ..../someWhere/db.sql
    

    2023-01-30 13:26 回答
  • 看起来你的pg_dump工作正常,但是在以sudo用户的身份打开输出文件时遇到了问题.只是猜测,但是,如果您以用户(可能是运行pg_dump命令的那个)id进行重定向,那应该这样做,即:

    sudo -u user_name pg_dump dbName>/home ..../someWhere/db.sql

    使用这种技术,你的pg_dump将作为postgres用户运行(假设是user_name是谁),并且正在/ home ...中写入的文件将使用运行该命令的用户的权限编写(此用户可能具有不同的权限) postgres用户).

    2023-01-30 13:26 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有