2016-07-20 3 views
6

포스트그레스에서 새 데이터베이스를 만들고 사용하려고합니다. 아래 명령을 사용하여 db를로드하려고하면 :Postgres는 우분투에서 디렉토리를 바꿀 수 없습니다. 14.04

sudo -u postgres psql 

이 오류가 발생합니다.

는 "/ 홈/노트북/보관/JS/HW/가지고-많은-관계"로 디렉토리를 변경할 수 : 권한이 psql의 (9.3.13) 도움 "도움"를 입력을 부인했다.

노틸러스에서 루트 권한으로 폴더 사용 권한을 변경하려고했습니다. 이 명령은 폴더가 루트 (cp 및 cd /)로 변경되면 예상대로 작동합니다. 어떤 아이디어입니까?

답변

7

그것은 당신의 쉘의 CWD (현재 작업 디렉토리) 같은 소리

/home/laptop/Dropbox/js/hw/Has-Many-Relationships 

하고 '포스트 그레스'사용자가 해당 디렉토리에 액세스 할 수 없다는 것입니다.

그러나 다음 줄에서는 다음 줄을 공유하지 않지만 실행중인 PostgreSQL 서버와 대화 할 수있는 것처럼 보입니다.

이 로컬 컴퓨터에 "완전히 버리는"데이터베이스 인스턴스 (노트북) 인 경우이 도움이 될 수 있습니다

http://johnmee.com/how-to-reinstall-postgresql-on-ubuntu

완전히 모든 포스트 그레스 패키지 (뿐만 아니라 가상 패키지)를 제거합니다이 방법은 PostgreSQL의 새로운 설치로 다시 시작할 수 있습니다.

# cd ~postgres/ 
# sudo -u postgres psql 

을 그리고 오류가 반복하지 않는 경우 참조 :

클린이의 PostgreSQL 설치했으면 루트로,이 시도.

희망 하시겠습니까?

+2

감사합니다. 그것은 효과가있는 것처럼 보입니다. postgres는 액세스 권한이 있지만 해당 액세스 권한을 사용할 수없는 사용자입니다. –

+0

w00t! 다행히 도울 수있어. 'postgres'사용자로 실행 중이며 해당 사용자는 자신의 홈 디렉토리에만 쓸 수있는 권한이 있다는 점을 기억하십시오. 이 오류 메시지는 데이터베이스에 연결하는 데 문제가있는 것이 아니라 'directory'에 액세스 할 수있는 권한이없는 'postgres'사용자로 실행되는 로컬 CLI 클라이언트의 문제 일 수 있습니다. –

+0

@JesseAdelman 어떻게하면 postgres 사용자가 내 홈 디렉토리의 일부 폴더에 액세스 할 수 있습니까? 심볼릭 링크를 통해 다른 하드 디스크에 데이터를 저장하고 싶기 때문에 이것이 필요할 수도 있습니다. –

관련 문제