2014-12-03 3 views
0

하여 작업 데이터베이스에 나는 내가수 PostgreSQL을

오류를 얻고이

COPY CUSTOMERS TO '/home/cjones/cfolder/customers.txt' (DELIMITER '|'); 

을하려고하고 있지만 내가 PostgreSQL을하고 CentOS의

을 사용하고와 파일을 열 수 없습니다 오류 :이 수 쓰기 위해 "/home/cjones/customers.txt"파일을 열지 않았습니다. 사용 권한이 거부되었습니다.

ls -al 및 chmod customers.txt를 777로 수행했지만 여전히이 오류가 발생합니다. 어떤 아이디어?

답변

1

모든 요구 사항을 알고 있습니까? 파일은 물론 동일한 시스템에 거짓말을해야하는 서버가 액세스 할 수 할 수

COPY naming a file or command is only allowed to database superusers, since it allows reading or writing any file that the server has privileges to access.

플러스

2.

You must have select privilege on the table whose values are read by COPY TO

1. Per documentation:. 그리고 디렉토리는 postgres 서버가 실행되는 사용자 (보통 postgres)에 액세스 할 수 있어야합니다 (파일뿐 아니라).

대안은 \copy meta-command of psql을 사용하는 것입니다.

+0

그래서 저는 고객으로부터 select *를했습니다. 그리고 그것은 데이터를 보였다. 그래서 COPY 대신 \ copy를했는데 아무 것도 파일에 들어 가지 않았습니다. –

+0

걱정하지 마십시오. 알았어. –