initdb

initdb — 새로 만들기PostgreSQL데이터베이스 클러스터

시놉시스

initdb [옵션...] [ --pgdata | -D ] 디렉토리

설명

initdb새 항목을 만듭니다PostgreSQL 데이터베이스 클러스터.

데이터베이스 클러스터 생성은 다음 생성으로 구성됩니다.디렉터리클러스터 데이터가 저장될 곳, 공유 카탈로그 테이블(특정 데이터베이스가 아닌 전체 클러스터에 속하는 테이블) 생성 및 생성포스트그레, 템플릿1템플릿0데이터베이스.포스트그레스데이터베이스는 젠 토토자, 유틸리티 및 타사 응용 프로그램에서 젠 토토하기 위한 기본 데이터베이스입니다.템플릿1그리고템플릿0나중에 복사할 소스 데이터베이스를 의미합니다.데이터베이스 생성명령.템플릿0수정해서는 안 되지만 개체를 추가할 수는 있습니다.템플릿1, 기본적으로 나중에 생성되는 데이터베이스에 복사됩니다. 참조PostgreSQL : 문서 : 17 : 22.3. 템플릿 롤 토토자세한 내용은.

하지만initdb지정된 데이터 디렉토리를 생성하려고 시도합니다. 원하는 데이터 디렉토리의 상위 디렉토리가 루트 소유인 경우 권한이 없을 수 있습니다. 이러한 설정을 초기화하려면 빈 데이터 디렉터리를 루트로 만든 다음 다음을 사용하세요.chown해당 디렉토리의 소유권을 데이터베이스 사용자 계정에 할당하려면실행할 데이터베이스 젠 토토자가 되기 위해initdb.

initdb서버는 해당 파일과 디렉터리에 액세스할 수 있어야 하므로 서버 프로세스를 소유할 사용자로 실행해야 합니다.initdb생성합니다. 서버는 루트로 실행할 수 없으므로 실행하면 안 됩니다.initdb루트로. (실제로는 그렇게 하지 않을 것입니다.)

보안상의 이유로 새 클러스터는initdb기본적으로 클러스터 소유자만 액세스할 수 있습니다.--그룹 액세스 허용옵션을 사용하면 클러스터 소유자와 동일한 그룹에 있는 모든 사용자가 클러스터의 파일을 읽을 수 있습니다. 이는 권한이 없는 사용자로 백업을 수행하는 데 유용합니다.

initdb데이터베이스 클러스터의 기본 로케일 및 문자 집합 인코딩을 초기화합니다. 이는 데이터베이스가 생성될 때 각 데이터베이스에 대해 별도로 설정할 수도 있습니다.initdb다른 모든 데이터베이스의 기본값으로 젠 토토되는 템플릿 데이터베이스에 대한 설정을 결정합니다.

기본적으로,initdb로케일 제공자를 젠 토토합니다libc(참조섹션 23.1.4).libc로케일 공급자는 환경에서 로케일 설정을 가져오고 로케일 설정에서 인코딩을 결정합니다.

클러스터에 대해 다른 로케일을 선택하려면 다음 옵션을 사용하십시오.--로케일. 개별 옵션도 있습니다--lc-*그리고--icu-locale(아래 참조) 개별 로캘 범주에 대한 값을 설정합니다. 다양한 로케일 카테고리에 대한 설정이 일관되지 않으면 무의미한 결과가 나올 수 있으므로 주의해서 젠 토토해야 합니다.

또는,initdbICU 라이브러리를 사용하여 다음을 지정하여 로케일 서비스를 제공할 수 있습니다--locale-provider=icu. 서버는 ICU를 지원하도록 구축되어야 합니다. 적용할 특정 ICU 로캘 ID를 선택하려면 다음 옵션을 사용하세요.--icu-locale. 구현 이유와 레거시 코드 지원을 위해,initdbICU 로케일 공급자가 사용될 때 libc 로케일 설정을 계속 선택하고 초기화합니다.

언제initdb실행하면 선택한 로케일 설정이 인쇄됩니다. 요구사항이 복잡하거나 옵션을 여러 개 지정한 경우 결과가 의도한 것과 일치하는지 확인하는 것이 좋습니다.

로케일 설정에 대한 자세한 내용은 다음에서 찾을 수 있습니다.PostgreSQL : 문서 : 17 : 23.1. 토토 캔 지원.

기본 인코딩을 변경하려면 다음을 사용하십시오.--인코딩. 자세한 내용은에서 확인할 수 있습니다.PostgreSQL : 문서 : 17 : 23.3. 캐릭터 롤 토토 지원.

옵션

-A인증 방법
--auth=인증 방법 #

이 옵션은 다음에서 사용되는 로컬 사용자에 대한 기본 인증 방법을 지정합니다.pg_hba.conf (호스트그리고현지줄). 참조스포츠 토토 베트맨 PostgreSQL : 문서 : 17 : 20.1. pg_hba.conf 파일유효한 값에 대한 개요입니다.

initdb미리 채워집니다pg_hba.conf비복제 및 복제 연결에 대해 지정된 인증 방법을 사용하는 항목.

젠 토토하지 마십시오신뢰시스템의 모든 로컬 사용자를 신뢰하지 않는 한.신뢰간편한 설치를 위한 기본값입니다.

--auth-host=인증 방법 #

이 옵션은 다음에서 사용되는 TCP/IP 연결을 통해 로컬 사용자에 대한 인증 방법을 지정합니다.pg_hba.conf (호스트라인).

--auth-local=인증 방법 #

이 옵션은 다음에서 사용되는 Unix 도메인 소켓 연결을 통해 로컬 사용자에 대한 인증 방법을 지정합니다.pg_hba.conf (현지라인).

-D디렉토리
--pgdata=디렉토리 #

이 옵션은 데이터베이스 클러스터가 저장되어야 하는 디렉토리를 지정합니다. 이것은에서 요구하는 유일한 정보입니다.initdb, 그러나 다음을 설정하면 작성을 피할 수 있습니다.PGDATA환경 변수. 데이터베이스 서버(포스트그레)는 나중에 동일한 변수로 데이터 디렉터리를 찾을 수 있습니다.

-E인코딩
--인코딩=인코딩 #

템플릿 데이터베이스의 인코딩을 선택합니다. 이는 나중에 재정의하지 않는 한 나중에 생성하는 데이터베이스의 기본 인코딩이기도 합니다. 에서 지원하는 문자 집합PostgreSQL서버에 대한 설명은섹션 23.3.1.

기본적으로 템플릿 데이터베이스 인코딩은 로케일에서 파생됩니다. 만일--로케일 없음이 지정되었습니다(또는 로케일이 다음과 같은 경우C또는POSIX), 기본값은UTF8ICU 제공자의 경우 및SQL_ASCII에 대한libc공급자.

-g
--그룹 액세스 허용 #

클러스터 소유자와 동일한 그룹에 있는 사용자가 다음에 의해 생성된 모든 클러스터 파일을 읽을 수 있도록 허용합니다.initdb. 이 옵션은 다음에서 무시됩니다.윈도우지원하지 않으므로POSIX-스타일 그룹 권한.

--icu-locale=로케일 #

ICU 제공자가 사용될 때 ICU 로케일을 지정합니다. 로케일 지원은 다음에 설명되어 있습니다.PostgreSQL : 문서 : 17 : 23.1. 토토 캔 지원.

--icu-rules=규칙 #

기본 대조의 동작을 사용자 정의하기 위해 추가 대조 규칙을 지정합니다. 이는 ICU에만 지원됩니다.

-k
--데이터-체크섬 #

데이터 페이지의 체크섬을 사용하여 그렇지 않으면 침묵할 I/O 시스템에 의한 손상을 감지하는 데 도움을 줍니다. 체크섬을 활성화하면 눈에 띄는 성능 저하가 발생할 수 있습니다. 설정된 경우 모든 데이터베이스의 모든 개체에 대해 체크섬이 계산됩니다. 모든 체크섬 실패는 다음 위치에 보고됩니다.pg_stat_database보기. 참조PostgreSQL : 문서 : 17 : 28.2. 데이터 스포츠 토토 결과자세한 내용은.

--로케일=로케일 #

데이터베이스 클러스터의 기본 로케일을 설정합니다. 이 옵션을 지정하지 않으면 로캘은 다음 환경에서 상속됩니다.initdb실행됩니다. 로케일 지원은 다음에 설명되어 있습니다.PostgreSQL : 문서 : 17 : 23.1. 토토 캔 지원.

만약--로캘 제공자is내장, --로케일또는--내장-로케일지정하고 다음으로 설정해야 합니다.C또는C.utf-8.

--lc-collate=로케일
--lc-ctype=로케일
--lc-messages=로케일
--lc-화폐=로케일
--lc-숫자=로케일
--lc-시간=로케일 #

좋아요--로케일, 그러나 지정된 카테고리의 로케일만 설정합니다.

--로캘 없음 #

다음과 동일함--locale=C.

--내장-로케일=로케일 #

내장 공급자가 사용될 때 로케일 이름을 지정합니다. 로케일 지원은 다음에 설명되어 있습니다.PostgreSQL : 문서 : 17 : 23.1. 토토 캔 지원.

--locale-provider=내장|libc|icu} #

이 옵션은 새 클러스터에 생성된 데이터베이스에 대한 로케일 공급자를 설정합니다. 이는 다음에서 재정의될 수 있습니다.데이터베이스 생성이후에 새 데이터베이스가 생성될 때 명령입니다. 기본값은libc(참조섹션 23.1.4).

--pwfile=파일 이름 #

만든다initdb파일에서 부트스트랩 수퍼유저의 비밀번호를 읽습니다. 파일의 첫 번째 줄이 비밀번호로 젠 토토됩니다.

-T구성
--text-search-config=구성 #

기본 텍스트 검색 구성을 설정합니다. 참조default_text_search_config자세한 정보는.

-U젠 토토자 이름
--젠 토토자 이름=젠 토토자 이름 #

다음의 젠 토토자 이름을 설정합니다.부트스트랩 수퍼유저. 기본값은 실행 중인 운영 체제 젠 토토자의 이름입니다.initdb.

-W
--pwprompt #

만든다initdb부트스트랩 수퍼유저에게 비밀번호를 묻는 메시지를 표시합니다. 비밀번호 인증을 사용할 계획이 없다면 이는 중요하지 않습니다. 그렇지 않으면 비밀번호를 설정할 때까지 비밀번호 인증을 사용할 수 없습니다.

-X디렉토리
--waldir=디렉토리 #

이 옵션은 미리 쓰기 로그가 저장되어야 하는 디렉토리를 지정합니다.

--wal-segsize=크기 #

설정WAL 세그먼트 크기(MB). 이는 WAL 로그에 있는 각 개별 파일의 크기입니다. 기본 크기는 16MB입니다. 값은 1에서 1024(메가바이트) 사이의 2의 거듭제곱이어야 합니다. 이 옵션은 초기화 중에만 설정할 수 있으며 나중에 변경할 수 없습니다.

WAL 로그 전달 또는 보관의 세분성을 제어하기 위해 이 크기를 조정하는 것이 유용할 수 있습니다. 또한 WAL의 양이 많은 데이터베이스에서는 디렉토리당 WAL 파일의 수가 너무 많아서 성능 및 관리 문제가 될 수 있습니다. WAL 파일 크기를 늘리면 WAL 파일 수가 줄어듭니다.

덜 일반적으로 사용되는 기타 옵션도 사용할 수 있습니다.

-c이름=
--설정이름= #

서버 매개변수를 강제로 설정이름initdb, 또한 생성된 파일에 해당 설정을 설치합니다.postgresql.conf파일이므로 향후 서버 실행 중에 적용됩니다. 이 옵션은 여러 매개변수를 설정하기 위해 두 번 이상 제공될 수 있습니다. 기본 매개변수를 사용하여 서버가 전혀 시작되지 않는 환경일 때 주로 유용합니다.

-d
--디버그 #

부트스트랩 백엔드의 디버깅 출력과 일반 대중에게 덜 관심이 있는 몇 가지 다른 메시지를 인쇄합니다. 부트스트랩 백엔드는 프로그램입니다.initdb카탈로그 테이블을 생성하는 데 젠 토토됩니다. 이 옵션은 엄청난 양의 매우 지루한 출력을 생성합니다.

--폐기-캐시 #

다음을 사용하여 부트스트랩 백엔드를 실행합니다.debug_discard_caches=1옵션. 시간이 매우 오래 걸리며 심층 디버깅에만 젠 토토됩니다.

-L디렉토리 #

어디를 지정합니다initdb데이터베이스 클러스터를 초기화하려면 입력 파일을 찾아야 합니다. 이는 일반적으로 필요하지 않습니다. 위치를 명시적으로 지정해야 하는 경우 메시지가 표시됩니다.

-n
--청소 없음 #

기본적으로 언제initdb오류로 인해 데이터베이스 클러스터를 완전히 생성하지 못했다고 판단하고, 작업을 완료할 수 없다는 사실을 발견하기 전에 생성되었을 수 있는 모든 파일을 제거합니다. 이 옵션은 정리를 금지하므로 디버깅에 유용합니다.

-N
--동기화 안 함 #

기본적으로,initdb모든 파일이 디스크에 안전하게 기록될 때까지 기다립니다. 이 옵션으로 인해initdb기다리지 않고 반환하는 것이 더 빠르지만 후속 운영 체제 충돌로 인해 데이터 디렉토리가 손상될 수 있음을 의미합니다. 일반적으로 이 옵션은 테스트에 유용하지만 프로덕션 설치를 생성할 때는 사용하면 안 됩니다.

--지침 없음 #

기본적으로,initdb출력이 끝나면 클러스터를 시작하는 방법에 대한 지침을 작성합니다. 이 옵션을 사용하면 해당 지침이 생략됩니다. 이는 주로 래핑하는 도구에서 사용하기 위한 것입니다.initdb플랫폼별 동작에서 해당 지침이 정확하지 않을 수 있습니다.

-s
--표시 #

다른 작업을 하지 않고 내부 설정을 표시하고 종료합니다. 이는 디버깅하는 데 사용할 수 있습니다.initdb설치.

--동기화 방법=방법 #

다음으로 설정된 경우fsync기본값입니다.initdb데이터 디렉토리에 있는 모든 파일을 반복적으로 열고 동기화합니다. 파일 검색은 WAL 디렉터리 및 구성된 각 테이블스페이스에 대한 심볼릭 링크를 따릅니다.

리눅스의 경우,syncfs34328_34490recovery_init_sync_method사용 시 주의해야 할 사항에 대한 정보syncfs.

다음 경우에는 이 옵션이 적용되지 않습니다.--동기화 없음젠 토토됩니다.

-S
--동기화 전용 #

모든 데이터베이스 파일을 디스크에 안전하게 쓰고 종료합니다. 이는 정상적인 작업을 수행하지 않습니다.initdb작업. 일반적으로 이 옵션은 변경 후 안정적인 복구를 보장하는 데 유용합니다.fsyncfrom꺼짐켜짐.

기타 옵션:

-V
--버전 #

인쇄initdb버전 및 종료.

-?
--도움말 #

다음에 관한 도움말 표시initdb명령줄 인수를 입력하고 종료합니다.

환경

PGDATA #

데이터베이스 클러스터가 저장될 디렉토리를 지정합니다. 다음을 사용하여 재정의할 수 있습니다.-D옵션.

PG_COLOR #

진단 메시지에 색상을 사용할지 여부를 지정합니다. 가능한 값은 다음과 같습니다.항상, 자동그리고절대로.

TZ #

생성된 데이터베이스 클러스터의 기본 시간대를 지정합니다. 값은 전체 시간대 이름이어야 합니다(참조섹션 8.5.3).

참고

initdb다음을 통해 호출할 수도 있습니다.pg_ctl initdb.

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.