이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 22.3. 템플릿 토토 커뮤니티버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

21.3. 템플릿 무지개 토토

무지개 토토 생성실제로 작동하는 방법은 다음과 같습니다. 기존 데이터베이스를 복사합니다. 기본적으로 표준을 복사합니다. 이름이 지정된 시스템 데이터베이스템플릿1. 따라서 그 무지개 토토는"템플릿"에서 어떤 새로운 무지개 토토가 만들어지는지. 개체를 추가하는 경우템플릿1, 이 개체는 다음 위치로 복사됩니다. 이후에 사용자 데이터베이스가 생성되었습니다. 이 동작은 다음을 허용합니다. 표준 객체 세트에 대한 사이트 로컬 수정 데이터베이스. 예를 들어 절차적 언어를 설치하는 경우PL/펄템플릿1, 다음에서 자동으로 사용할 수 있습니다. 이러한 경우 추가 조치를 취하지 않고 사용자 데이터베이스를 데이터베이스가 생성됩니다.

이름이 두 번째 표준 시스템 무지개 토토입니다.템플릿0. 이 데이터베이스에는 다음과 동일한 데이터가 포함되어 있습니다. 초기 내용템플릿1, 그거 즉, 귀하의 버전에 따라 사전 정의된 표준 객체만 해당됩니다.포스트그레SQL. 템플릿0이후에는 변경하면 안 됩니다. 무지개 토토 클러스터가 초기화되었습니다. 지시함으로써무지개 토토 생성복사하다템플릿0대신템플릿1, 다음을 생성할 수 있습니다."처녀"다음 중 아무것도 포함하지 않는 사용자 데이터베이스 사이트-로컬 추가 사항템플릿1. 이 복원할 때 특히 유용합니다.pg_dumpdump: 덤프 스크립트가 복원되어야 합니다. 올바른 데이터베이스를 다시 생성할 수 있도록 버진 데이터베이스에 저장 객체와 충돌하지 않고 덤프된 데이터베이스의 내용 다음에 추가되었을 수 있습니다.템플릿1나중에.

복사하는 또 다른 일반적인 이유템플릿0대신템플릿1새로운 인코딩 및 로캘 설정이군요 복사할 때 지정할 수 있습니다.템플릿0, 반면에템플릿1다음을 사용해야 합니다. 동일한 설정이 적용됩니다. 그 이유는템플릿1인코딩 관련 또는 로케일별 데이터, 반면템플릿0이다 그렇지 않은 것으로 알려져 있습니다.

복사하여 무지개 토토를 생성하려면템플릿0, 사용:

무지개 토토 생성db이름템플릿 템플릿0;

SQL 환경에서 또는:

createdb -T template0db이름

셸에서.

추가 템플릿 무지개 토토를 생성할 수 있으며, 실제로 클러스터의 모든 무지개 토토를 지정하여 복사할 수 있습니다. 이름을 템플릿으로 사용함만들기 무지개 토토. 그러나 이 사실을 이해하는 것이 중요합니다. (아직) 범용으로 사용되지 않습니다."무지개 토토 복사"시설. 주요 제한은 다른 세션이 불가능하다는 것입니다. 복사되는 동안 소스 무지개 토토에 연결되었습니다.무지개 토토 생성다른 경우에는 실패합니다. 시작될 때 연결이 존재합니다. 복사 작업 중에 새 소스 무지개 토토에 대한 연결이 차단됩니다.

두 가지 유용한 플래그가 있습니다.pg_database각 무지개 토토에 대해: 열datistemplate그리고dataallowconn. datistemplate다음을 나타내도록 설정할 수 있습니다. 데이터베이스는 다음을 위한 템플릿으로 사용됩니다.만들기 무지개 토토. 이 플래그가 설정되면 데이터베이스는 다음을 통해 복제될 수 있습니다. 다음을 가진 모든 사용자CREATEDB특권; 그렇다면 설정되어 있지 않으면 슈퍼유저와 무지개 토토 소유자만 그것을 복제하십시오. 만일dataallowconn거짓입니다. 그렇다면 해당 무지개 토토에 대한 새로운 연결은 허용되지 않습니다(그러나 기존 단순히 플래그를 false로 설정한다고 해서 세션이 종료되는 것은 아닙니다. 그만큼템플릿0무지개 토토는 일반적으로 표시됨dataallowconn = false방지하기 위해 그 수정. 둘 다템플릿0그리고템플릿1항상 다음으로 표시되어야 합니다.datistemplate = true.

참고: 템플릿1그리고템플릿0특별한 것이 없습니다 이름이라는 사실을 넘어서는 상태템플릿1기본 소스 무지개 토토 이름입니다. 에 대한무지개 토토 생성. 예를 들어, 하나는 떨어질 수 있어요템플릿1그리고 에서 다시 생성하세요.템플릿0없이 어떤 부작용. 다음과 같은 경우에 이 조치를 취하는 것이 좋습니다. 한 사람이 부주의하게 많은 정크 파일을 추가했습니다.템플릿1. (삭제하려면템플릿1, 반드시 있어야 합니다pg_database.datistemplate = false.)

포스트그레데이터베이스도 데이터베이스 클러스터가 초기화될 때 생성됩니다. 이 데이터베이스 사용자와 애플리케이션을 위한 기본 데이터베이스로 사용됩니다. 에 연결합니다. 이는 단순히 다음의 사본입니다.템플릿1다음 경우에 삭제하고 다시 생성할 수 있습니다. 필요합니다.