무엇이든하기 전에 디스크에서 스포츠 토토 베트맨 저장 영역을 초기화해야합니다. 우리는 이것을 a라고 부릅니다.스포츠 토토 베트맨 클러스터. (그만큼SQLStandard는 카탈로그 클러스터라는 용어를 사용합니다.) 스포츠 토토 베트맨 클러스터는 실행중인 데이터베이스 서버의 단일 인스턴스에서 관리하는 데이터베이스 모음입니다. 초기화 후 스포츠 토토 베트맨 클러스터에는이라는 데이터베이스가 포함됩니다.Postgres
는 유틸리티, 사용자 및 타사 응용 프로그램에서 사용할 기본 스포츠 토토 베트맨입니다. 스포츠 토토 베트맨 서버 자체에는가 필요하지 않습니다.Postgres
스포츠 토토 베트맨가 존재하지만 많은 외부 유틸리티 프로그램이 존재한다고 가정합니다. 초기화 중에 각 클러스터 내에 생성 된 두 개의 스포츠 토토 베트맨가 있습니다.template1
andTemplate0
. 이름에서 알 수 있듯이, 이들은 후속 제작 된 스포츠 토토 베트맨의 템플릿으로 사용됩니다.22 장클러스터 내에서 새 스포츠 토토 베트맨 생성에 대한 정보.)
파일 시스템 용어에서 스포츠 토토 베트맨 클러스터는 모든 데이터가 저장 될 단일 디렉토리입니다. 우리는 이것을라고 부릅니다.데이터 디렉토리또는데이터 영역. 데이터를 저장하기로 선택한 곳은 귀하에게 전적으로 달려 있습니다./usr/local/pgsql/data
또는/var/lib/pgsql/data
인기가 있습니다. 프로그램을 사용하여 사용하기 전에 데이터 디렉토리를 초기화해야합니다initdbPostgreSQL.
사전 포장 된 버전의를 사용하는 경우PostgreSQL, 데이터 디렉토리를 배치 할 위치에 대한 특정 컨벤션이있을 수 있으며 데이터 디렉토리를 만들기위한 스크립트도 제공 할 수도 있습니다. 이 경우 해당 스크립트를 선호하여 실행에 사용해야합니다initdb
직접. 자세한 내용은 패키지 수준 문서를 참조하십시오.
스포츠 토토 베트맨 클러스터를 수동으로 초기화하려면 runinitdb
그리고 스포츠 토토 베트맨 클러스터의 원하는 파일 시스템 위치를-d
옵션, 예 :
$
initdb -d/usr/local/pgsql/data
로그인 한 상태 에서이 명령을 실행해야합니다PostgreSQL이전 섹션에 설명 된 사용자 계정.
또는 실행할 수 있습니다initdb
PG_CTL프로그램그렇게 :
$
pg_ctl -d/usr/local/pgsql/data initdb
사용하는 경우 더 직관적 일 수 있습니다PG_CTL
서버 시작 및 중지 (참조PostgreSQL : 문서 : 17 : 18.3. 데이터베이스 스포츠 토토 베트맨 시작), 그래서PG_CTL
스포츠 토토 베트맨 서버 인스턴스를 관리하는 데 사용하는 유일한 명령입니다.
initdb
아직 존재하지 않는지 지정한 디렉토리를 작성하려고합니다. 물론 이것은이면 실패 할 것입니다.initdb
부모 디렉토리에 쓸 권한이 없습니다. 일반적으로가 권장됩니다.PostgreSQL사용자는 데이터 디렉토리뿐만 아니라 부모 디렉토리도 소유하므로 문제가되지 않아야합니다. 원하는 상위 디렉토리가 존재하지 않으면 조부모 디렉토리를 작성할 수없는 경우 루트 권한을 사용하여 먼저 작성해야합니다.
루트#mkdir/usr/local/pgsql
루트#Chown Postgres/usr/local/pgsql
루트#SU Postgres
Postgres $initdb -d/usr/local/pgsql/data
initdb
데이터 디렉토리가 존재하고 이미 파일을 포함하면 실행을 거부합니다. 이것은 실수로 기존 설치를 덮어 쓰는 것을 방지하기위한 것입니다.
데이터 디렉토리에는 데이터베이스에 저장된 모든 데이터가 포함되어 있으므로 무단 액세스로부터 보호되어야합니다.initdb
따라서 모든 사람의 액세스 권한을 취소합니다PostgreSQL사용자 및 선택적으로 그룹. 활성화 된 경우 그룹 액세스는 읽기 전용입니다.
기존 클러스터에서 그룹 액세스를 활성화하거나 비활성화하려면 클러스터를 종료하고 다시 시작하기 전에 모든 디렉토리 및 파일에서 적절한 모드를 설정해야합니다.PostgreSQL. 그렇지 않으면 데이터 디렉토리에 모드가 혼합되어있을 수 있습니다.0700
디렉토리 및0600
파일. 그룹의 읽기를 허용하는 클러스터의 경우 적절한 모드는입니다.0750
디렉토리 및0640
파일 용.
그러나 디렉토리 컨텐츠는 안전하지만 기본 클라이언트 인증 설정을 통해 로컬 사용자는 스포츠 토토 베트맨에 연결하고 스포츠 토토 베트맨 슈퍼 사용자가 될 수 있습니다. 다른 로컬 사용자를 신뢰하지 않으면 중 하나를 사용하는 것이 좋습니다.initdb
's-w
, --pwprompt
또는--pwfile
스포츠 토토 베트맨 슈퍼 사용자에게 비밀번호를 할당하는 옵션.또한 지정-a scram-sha-256
기본값이되도록신뢰
인증 모드는 사용되지 않습니다. 또는 생성 된 수정pg_hba.conf
실행 후 파일initdb
그러나전처음으로 서버를 시작합니다. (다른 합리적인 접근 방식은 사용을 포함합니다피어
연결을 제한하기위한 인증 또는 파일 시스템 권한. 보다토토 꽁 머니 : 문서 : 17 : CHAPTER 20. 클라이언트 인증자세한 내용은
initdb
기본 로케일 초기화스포츠 토토 베트맨 클러스터의 경우. 일반적으로 환경에서 로케일 설정을 사용하여 초기화 된 데이터베이스에 적용합니다.섹션 23.1. 특정 스포츠 토토 베트맨 클러스터 내에서 사용되는 기본 정렬 순서는에 의해 설정됩니다.initdb
, 그리고 다른 정렬 순서를 사용하여 새 데이터베이스를 만들 수 있지만 initdb가 작성하는 템플릿 데이터베이스에 사용 된 순서는 삭제하고 재현하지 않고는 변경할 수 없습니다. 이외의 지역을 사용하는데도 성능 영향도 있습니다.C
또는posix
. 따라서 처음 으로이 선택을 올바르게 만드는 것이 중요합니다.
initdb
또한 스포츠 토토 베트맨 클러스터에 대한 기본 문자 세트 인코딩을 설정합니다. 일반적으로 이것은 로케일 설정과 일치하도록 선택해야합니다.PostgreSQL : 문서 : 17 : 23.3. 캐릭터 토토 캔 지원.
비C
및 비posix
로케일은 캐릭터 세트 주문을 위해 운영 체제의 Collation Library에 의존합니다. 이것은 인덱스에 저장된 키의 순서를 제어합니다.
많은 설치가 기계 이외의 파일 시스템 (볼륨)에서 스포츠 토토 베트맨 클러스터를 만듭니다“루트”볼륨. 이를 선택하면 2 차 볼륨의 최상위 디렉토리 (Mount Point)를 데이터 디렉토리로 사용하는 것이 좋습니다.PostgreSQL사용자, 그 안에 데이터 디렉토리를 만듭니다. 이것은 특히와 같은 작업에 대한 권한 문제를 피합니다.pg_upgrade, 그리고 보조 볼륨이 오프라인으로 취해지면 깨끗한 고장을 보장합니다.
일반적으로 Posix 시맨틱이있는 모든 파일 시스템을 PostgreSQL에 사용할 수 있습니다. 사용자는 공급 업체 지원, 성능 및 친숙 함을 포함하여 다양한 이유로 다른 파일 시스템을 선호합니다.
사용 가능합니다NFS저장을위한 파일 시스템PostgreSQL데이터 디렉토리.PostgreSQL특별한 것은 없습니다NFS파일 시스템, 의미NFS로컬로 연결된 드라이브와 똑같이 동작합니다.PostgreSQL비표준 동작이있는 것으로 알려진 기능을 사용하지 않습니다NFS, 예 : 파일 잠금.
사용을위한 유일한 회사 요구 사항NFSwithPostgreSQL파일 시스템이를 사용하여 장착 된 것입니다.hard
옵션. 와 함께hard
옵션, 프로세스 can“행”네트워크 문제가있는 경우 무기한이 구성에는 신중한 모니터링 설정이 필요합니다. 그만큼소프트
옵션은 네트워크 문제의 경우 시스템 호출을 중단하지만PostgreSQL이런 식으로 중단 된 시스템 호출을 반복하지 않으므로 이러한 중단으로 인해 I/O 오류 가보고됩니다.
사용 할 필요는 없습니다sync
마운트 옵션. 의 행동async
옵션은 충분합니다.PostgreSQL문제fsync
쓰기 캐시를 플러시하기 위해 적절한 시간에 호출합니다. (이것은 로컬 파일 시스템에서 작동하는 방식과 유사합니다.) 그러나 사용하는 것이 좋습니다.sync
NFS의 내보내기 옵션Server존재하는 시스템에서 (주로 Linux). 그렇지 않으면, anfsync
또는 NFS 클라이언트의 동등성은 실제로 서버의 영구 저장소에 도달하도록 보장되지 않으므로 매개 변수로 실행하는 것과 유사하게 손상 될 수 있습니다.fsyncOFF. 이러한 마운트 및 내보내기 옵션의 기본값은 공급 업체와 버전마다 다르므로 모호성을 피하기 위해 어쨌든 명시 적으로 확인하고 명시 적으로 지정하는 것이 좋습니다..
경우에 따라 외부 저장 제품은 NFS 또는 ISCSI와 같은 하위 수준 프로토콜을 통해 액세스 할 수 있습니다. 후자의 경우, 스토리지는 블록 장치로 나타나고 사용 가능한 파일 시스템을 생성 할 수 있습니다.
문서에 올바른 것이 없다면 일치하지 않습니다.이 양식문서 문제를보고하려면