2012-09-29 3 views
1

내가 레일 응용 프로그램을 호스팅 내 Heroku가이 업로드 한 후 파일로 DB를 내 개발을 덤프 pg_dump의 명령을 사용하여 필요 부인했다. 나는 레일을 사용할 수 없습니다입니다pg_dump의 오류 : 권한

내가 cleint와 서버 사이에 전송 데이터베이스를 전송하기 위해 pg_dump의 도구를 사용하여 Heroku가 지원에 의해 요청을받은

"heroku db:push" 

명령. 어떤 이유로 실패에 대한

pg_dump -U XXXXX -w app0521_development 

이 출력 콘솔

에 내 데이터베이스의 전체 내용 그러나이 명령 :

pg_dump -U postgres -w app0521_development > test.dump 

을이 오류와 함께

난 그냥이 명령을 실행 메시지 -bash : test.dump : 권한

+0

어디서나 도구를 사용하여 데이터베이스에 로그인 할 수 있습니까? 그렇다면, 무엇? –

+0

고마워, 내 질문에 대한 답변으로 내 게시물을 참조하십시오. – banditKing

답변

1

난 당신이 특정 폴더를 만들고 그것을 쓰기, 또는 /tmp/test.dump을 보낼 수 있어야 + 읽은 포스트 그레스의 사용자/그룹 액세스 권한을 부여해야합니다 중 생각; (적어도 우분투)에 대부분의 시간을

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

,의/tmp 폴더는 모두를 위해 "를 실행 + 쓰기 + 읽기"했다. 그냥 경고합니다 ... 감각적 인 데이터가 있다면, 그 상자에 올라 타는 모든 사람들을위한 것입니다. 그래서 청소 해! 또한/tmp 폴더에는 "t"플래그가 설정되어 있습니다. "t"는이 디렉토리에 파일을 만든 사용자 (및 루트) 만 해당 파일을 삭제할 수 있음을 나타냅니다.

당신이 당신의 자신의 폴더를 만들려면

, 그냥 "을 chgrp을"구글 - 다음 물론 당신은 "읽기 - 쓰기"그룹에 부여해야합니다.

+0

우수했습니다. 내가 발견 한 것은 내 시스템 맥 OSX에 내가이 명령을 실행할 수 있었다 걱정하지 : ----> pg_dump의의 -U 포스트 그레스 -w app0521_development> /Users/AM/Documents/test2.dump -이은에 파일을 넣어 것입니다 폴더. 감사합니다. – banditKing

+0

도움이 되었기 때문에 기꺼이 ... Mac OSX에 대해 생각조차하지 않았습니다. 나중에 참조 할 때 사용하고있는 OS와 사용중인 PostgreSQL 버전을 항상 포함시키는 것이 좋습니다. 이 두 가지 모두 사람들이 대답하는 데 도움이 될 것입니다. 행운을 빌어 요. –

+0

네 말이 맞아. 미안 나는 그것에 대해 생각하지 않았다! 당신의 도움이 많이 감사합니다 :) – banditKing

0
거부

는 test.dump 전>은 퍼팅 시도하고 무슨 일이 일어 나는지. 당신이 갖고 싶은 백업 파일이라고 생각합니까? 파일 시스템 사용 권한 문제 같은 것 같습니다.

+0

안녕하세요, 감사합니다. 동일한 오류 메시지가> – banditKing