2013-02-08 2 views
0

Mac OS X 10.5.8을 사용하고 있습니다. 나는 Python으로 데이터베이스를 만들기 위해 (sqlalchemy와 psycopg2를 사용하여) PostgreSQL 9.1 (mac dmg 드라이버 사용)을 설치했다.postgresql에 postgres 사용자로 연결할 수 없습니다.

처음으로 sqlalchemy를 통해 PostgreSQL에 연결을 시도했지만 엔진을 만들고 연결하는 데 사용할 username : password 조합을 찾을 수 없었습니다. 내가 postgres (아마 암호를 요구하지 않는) 수퍼 유저로 로그인을 시도했지만, 작동하지 않았다. SQL 쉘을 사용하여 연결을 시도하면 같은 문제가 발생합니다 (사용자로 postgres를 선택하더라도 암호를 입력해야합니다). 또는 su postgres를 사용하여 명령 줄에서 실행하십시오.

비슷한 문제가 Google에서 검색되는 경우 이는 pg_hba.conf 파일과 관련이있는 것으로 보이지만 찾을 수 없습니다. 누군가는 Mac에서 Library/PostgreSQL/9.1/data 폴더에 있어야하지만이 폴더에 액세스 할 수있는 권한이 없다고 지적했습니다. locate 명령 행에 pg_hba.conf를 입력하면 아무 것도 반환하지 않습니다. 내가 올바르게 이해했다면 (이전에는 데이터베이스 서버를 사용 해본 적도없고 유닉스 전문가가 아닙니다.) 서버가 나를 관리자 또는 수퍼 유저로 인식하지 못합니다.

PostgreSQL을 초기화하는 방법에 대해 잘 모르는 뭔가가 있습니까? ("시작하기"및 설치 후 구성에 대한 설명서를 검색했지만 분명히이 문제와 관련이있는 내용을 찾지 못했습니다)? 이것이 PostgreSQL의 설치에 문제가 될 수 있습니까? 내 환경에서 뭔가를 바꿔야 할까?

+0

OSX 용으로 미리 패키지화 된 postgresql이 여러 개 있으며, 각각 하나의 "시작하기"다른 방법이 있습니다. 첫 번째 단계는 사용하는 패키지를 식별하는 것입니다. 또는 적어도 어디에서 다운로드했는지. –

+0

답장을 보내 주셔서 감사합니다. opt/local/lib/postgresql91에 설치 한 macports를 사용하여 PostgreSQL 9.1을 설치하고 psql 및 기타 유닉스 실행 파일과 함께 bin 폴더를 만들었습니다. postgresql91/bin 경로를 포함하도록 .profile을 편집하고 source ~/.profile을 실행했습니다. echo $ PATH는 경로가 있음을 확인합니다. 하지만 psql을 명령 줄에 입력하면 (depesz에서 언급 한 것처럼 postgresql을 시작하고 사용자 권한과 암호를 설정하는 데 사용해야합니다), "command not found"가 표시됩니다. – user2054545

답변

1

시스템 계정 포스트그레스로 전환해야합니다. 보통 이것은 su - postgres을 사용하여 수행됩니다. 그래도 작동하지 않는다면 운영 체제 수준 문제처럼 보일 수는 없습니다.

당신은 postgres 시스템 계정에있을 때, 보통 psql을 사용하여 pg_hba.conf를 편집 할 수 있으며, 보통 암호없이 pg에 연결할 수 있습니다.

일부 시스템에서는 su 대신에 sudo을 사용합니다.이 경우 sudo su - postgres을 시도 할 수 있습니다.

+0

고맙습니다. 실제로 sudo su - postgres를 할 때 나는 postgres에 들어간다. 거기서 무엇을 해야할지 배울 수 있습니까? 내 목표는 파이썬에서 포스트 그레스에 연결하고 거기에서 데이터베이스를 만들고 빌드하는 것입니다. – user2054545

+0

psql을 사용하여 PostgreSQL에 연결하고 일부 암호를 설정 한 다음 (사용자를 암호 '...'로 변경) 일반 시스템 계정에서 일부 데이터베이스 계정으로 연결을 시도합니다. 작동 시키면 Python/어떤 응용 프로그램이든 정상적으로 사용할 수 있습니다. –

+0

죄송하지만 PostgreSQL 문제는 아니지만 OS 문제입니다. 올바른 PATH를 설정해야하며 Mac에서 작동하는 경로가 무엇인지 알 수 없습니다. –

관련 문제