ruby-on-rails - pg_dump 错误 : Permission denied

标签 ruby-on-rails postgresql pg-dump

<分区>

我需要使用 pg_dump 命令将我的开发数据库转储到一个文件,然后将其上传到我的 heroku 托管的 Rails 应用程序。

我无法使用 rails 命令

  "heroku db:push"

Heroku 支持人员要求我使用 pg_dump 工具在客户端和服务器之间发送传输数据库。

我刚刚运行了这个命令:

  pg_dump -U XXXXX -w app0521_development

它将我数据库的全部内容输出到控制台

但是这个命令由于某种原因失败了:

  pg_dump -U postgres -w app0521_development > test.dump

这个错误信息 -bash: test.dump: 权限被拒绝

最佳答案

我想你要么需要创建一个特殊的文件夹并赋予 postgres 用户/组读写权限,要么你应该能够将它发送到/tmp/test.dump;

pg_dump -U postgres -w app0521_development > /tmp/test.dump

大多数时候(至少在 Ubuntu 上),/tmp 文件夹对每个人都有“读+写+执行”。只是一个警告......如果它有敏感数据,它就会出现在每个可以进入那个盒子的人身上。所以,把它清理干净!还要注意的是,/tmp 文件夹设置了“t”标志。 “t”表示只有在此目录中创建文件的用户(和 root)才能删除该文件。

如果您想创建自己的文件夹,只需在谷歌上搜索“chgrp”——然后您当然需要为该组提供“读写”权限。

关于ruby-on-rails - pg_dump 错误 : Permission denied,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12649401/

相关文章:

css - rails 4 应用程序中有太多 css 文件的性能问题?

ruby-on-rails - 如何在 RSpec 上包含 Rails Helpers

ruby-on-rails - Rails 2 与 Rails 3

postgresql - 如何将二进制 pgdump(压缩)转换为纯 SQL 文件?

ruby-on-rails - 无法在 sign_out 方法的功能测试中销毁 current_user

java - Postgresql JPA Hibernate 创建数据库

sql - MySQL 到 PostgreSQL : GROUP BY issues

sql - 选择一行,以及它两边的行

database - "permission denied"用于 pg_dump 输出文件

postgresql - 如何在将表导入 pg_dump 之前删除它?