무슨 일을 하기 전에 무지개 토토를 초기화해야 합니다 디스크의 저장 영역. 우리는 이것을 a라고 부릅니다.무지개 토토 클러스터. (SQL대신 카탈로그 클러스터라는 용어를 사용합니다.) A 무지개 토토 클러스터는 무지개 토토 클러스터로 액세스할 수 있습니다. 실행 중인 데이터베이스 서버의 단일 인스턴스. 이후 초기화하면 무지개 토토 클러스터에는 다음과 같은 데이터베이스가 포함됩니다.템플릿1. 이름에서 알 수 있듯이 이 이후에 생성되는 데이터베이스의 템플릿으로 사용됩니다. 그것 실제 작업에 사용해서는 안 됩니다. (참조18장정보는 다음과 같습니다. 데이터베이스를 생성 중입니다.)
파일 시스템 측면에서 무지개 토토 클러스터는 단일 클러스터입니다. 모든 데이터가 저장될 디렉토리입니다. 우리는 이것을데이터 디렉토리또는데이터 영역. 당신이 어디에 있는지는 전적으로 당신에게 달려 있습니다. 데이터 저장을 선택하세요. 기본값은 없지만 다음과 같은 위치/usr/local/pgsql/data또는/var/lib/pgsql/data인기있습니다. 받는 사람 무지개 토토 클러스터를 초기화하려면 다음 명령을 사용하세요.initdb,어느 다음과 함께 설치됩니다.포스트그레SQL. 데이터베이스 시스템의 원하는 파일 시스템 위치는 다음과 같습니다. 로 표시됨-D옵션, 예
$ initdb -D /usr/local/pgsql/data
로그인된 동안 이 명령을 실행해야 합니다.포스트그레SQL사용자 계정, 이전 섹션에 설명되어 있습니다.
initdb생성을 시도할 것입니다. 디렉토리가 아직 존재하지 않는 경우 지정합니다. 가능성이 높습니다 그렇게 할 권한이 없을 것입니다(당신이 따랐다면 우리의 조언에 따라 비특권 계정을 만들었습니다). 그렇다면 당신은 디렉토리를 직접(루트로) 만들고 변경해야 합니다. 소유자는PostgreSQL사용자. 이를 수행하는 방법은 다음과 같습니다.
루트#mkdir /usr/local/pgsql/data루트#chown postgres /usr/local/pgsql/data루트#su 포스트그레스포스트그레스$initdb -D /usr/local/pgsql/data
initdb데이터가 다음과 같은 경우 실행을 거부합니다. 디렉토리는 이미 초기화된 것 같습니다.
데이터 디렉토리에는 다음 디렉토리에 저장된 모든 데이터가 포함되어 있기 때문입니다. 데이터베이스를 무단 접근으로부터 보호하는 것이 중요합니다. 액세스합니다.initdb따라서 액세스 권한을 취소합니다. 를 제외한 모든 사람의 권한PostgreSQL사용자.
그러나 디렉토리 내용은 안전하지만 기본 클라이언트 인증 설정을 통해 모든 로컬 사용자가 연결할 수 있습니다. 무지개 토토 슈퍼유저가 될 수도 있습니다. 만약 당신이 다른 로컬 사용자를 신뢰하지 마십시오. 사용하는 것이 좋습니다.initdb's-W또는--pwprompt에 비밀번호를 할당하는 옵션 무지개 토토 슈퍼유저.이후initdb, 수정pg_hba.conf사용할 파일md5또는비밀번호대신 의신뢰인증이전당신은 다음을 위한 서버를 시작합니다 처음으로. (다른 접근법에는 다음이 포함됩니다.ident인증 또는 파일 시스템 권한 연결을 제한합니다. 참조19장더 보기 정보.)
initdb또한 기본값을 초기화합니다. 로케일데이터베이스용 클러스터. 일반적으로 로케일 설정을 사용합니다. 환경에 적용하고 초기화된 데이터베이스에 적용합니다. 그것은 데이터베이스에 대해 다른 로케일을 지정할 수 있습니다. 더 이에 대한 정보는에서 찾을 수 있습니다.섹션 20.1. 사용된 정렬 순서 특정 무지개 토토 클러스터 내에서 다음으로 설정됩니다.initdb나중에 변경할 수 없습니다. 모든 데이터 덤프, 재실행initdb그리고 데이터를 다시 로드하는 중입니다. 그래서 이 선택을 하는 것이 중요합니다 처음으로 정확하게.