부팅 할 때 monit의 bash 파일을 실행 중이며 그 bash 파일은 내 postgres 서버를 시작합니다. 내 데이터베이스 디렉토리가없는 경우부팅시 포스트그레스 사용자 생성
, 내가 할 :
1 initdb에을 (PostgreSQL의/데이터 /) SU - 에지 -c '는/usr/빈/initdb에 -D $ {DBDIR}'
(PostgreSQL의/데이터 /)에2 개 사본 수정 위해서는 pg_hba.conf 및 postgresql.conf의 파일
3 내 서버 스와 시작 - {가장자리 -c "는/usr/빈/pg_ctl -w -D $ DBDIR을 } -l 로그 파일 시작 "
4 포스트그레스 createuser - SU - $ 사용자 -c '$ {DBDIR} -e -s 포스트 그레스'
PostgreSQL의가// 파일을 생성 된 데이터는 서버가 시작 복사 bash는 파일의 실행 후, 하지만 사용자입니다 psql의에/usr/빈/psql의의 -U 포스트 그레스 : FATAL : 그래서 내 데이터베이스
오류에 액세스 할 수 없습니다 생성되지 역할 "포스트 그레스는"나는 당신의 4 단계를 해독 할 수
고마워요, 나는 그 부분을 읽었지 만, 이유가 무엇이든, -U가 생성 된 수퍼 유저의 이름을주기 위해 사용되었다는 것을 읽었습니다. 은 initdb 전에 수퍼 유저를 생성 할 수 없다는 사실 때문에 그냥 잡았어야합니다. – DavidG