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

챕터 6. 젠 토토 관리

젠 토토는 명명된 SQL 개체 모음입니다("젠 토토 개체"); 모든 데이터베이스 객체 (테이블, 함수 등)은 하나의 데이터베이스에만 속합니다. 안 데이터베이스 서버에 연결하는 애플리케이션은 다음과 같이 지정합니다. 연결을 요청하려는 데이터베이스의 이름 에 연결합니다. 둘 이상의 데이터베이스에 액세스할 수 없습니다. 연결당. (단, 신청은 제한되지 않습니다. 동일하거나 다른 연결로 열리는 연결 수 데이터베이스.)

참고: SQL호출 젠 토토"카탈로그"하지만 거기에는 실제로는 차이가 없습니다.

젠 토토를 생성하거나 삭제하려면,포스트그레 우체국장작동 중이어야 합니다(참조PostgreSQL : 문서 : 7.1 : 메이저 토토 사이트 서버 메이저 토토 사이트).

6.1. 젠 토토 생성

젠 토토는 쿼리 언어 명령으로 생성됩니다.젠 토토 생성:

젠 토토 생성이름
어디에서이름선택 가능 자유롭게. (현재 구현에 따라 특정 기본 운영 체제에 특수한 문자 금지될 수 있습니다. 이에 대한 런타임 검사가 있을 것입니다.) 현재 사용자는 자동으로 새 데이터베이스의 소유자가 됩니다. 나중에 데이터베이스를 제거하는 것은 데이터베이스 소유자의 특권입니다. on (또한 그 안의 모든 객체를 제거합니다. 소유자가 다름).

젠 토토 생성은 제한된 작업입니다. 참조섹션 7.1.1어떻게 권한을 부여합니다.

부트스트래핑.다음에 연결해야 하므로 실행하기 위해 데이터베이스 서버젠 토토 생성명령, 질문이 남습니다 어떻게첫 번째언제든지 데이터베이스 사이트를 만들 수 있습니다. 첫 번째 데이터베이스는 항상 다음에 의해 생성됩니다.initdb데이터가 있을 때 명령 저장 영역이 초기화됩니다. (참조섹션 3.2.) 이 젠 토토는 전화함템플릿1그리고 그럴 수 없습니다 삭제되었습니다. 그래서 첫 번째를 만들려면"진짜"연결할 수 있는 젠 토토템플릿1.

이름"템플릿1"아니요 사고: 새 데이터베이스가 생성되면 템플릿 데이터베이스가 기본적으로 복제됩니다. 즉, 다음에서 변경한 내용은 다음과 같습니다.템플릿1모두에게 전파됩니다 이후에 젠 토토가 생성되었습니다. 이것은 당신이해야한다는 것을 의미합니다 실제 작업에는 템플릿 젠 토토를 사용하지 않지만 사용할 때는 이 기능은 현명하게도 편리할 수 있습니다.

추가 편의를 위해 다음과 같은 프로그램도 있습니다. 셸에서 실행하여 새 데이터베이스를 생성할 수 있습니다.생성된 DB.

생성된 DBdb이름
생성된 DB마법을 사용하지 않습니다. 그것은 연결한다 template1 데이터베이스로 이동하여 다음을 실행합니다.젠 토토 생성명령은 위에서 설명한 것과 똑같습니다. 그것은 사용한다psql내부적으로 프로그래밍하세요. Createb의 참조 페이지에는 호출 세부 정보가 포함되어 있습니다. 에서 특히, 인수 없이 Createb는 데이터베이스를 생성합니다. 현재 사용자 이름으로 변경하세요. 원하는 것일 수도 있고 아닐 수도 있습니다.

6.1.1. 대체 위치

다른 위치에 젠 토토를 생성하는 것이 가능합니다 기본값보다. 모든 젠 토토 액세스가 발생한다는 점을 기억하십시오. 젠 토토 서버 백엔드를 통해 어떤 위치에서도 지정된 항목은 백엔드에서 액세스할 수 있어야 합니다.

대체 데이터베이스 위치는 다음에서 참조됩니다. 절대 경로를 제공하는 환경 변수 예정된 저장 위치. 이 환경 변수는 다음과 같아야 합니다. 백엔드가 시작되기 전에 정의되었습니다. 유효한 환경 변수 이름은 다음을 참조하는 데 사용될 수 있습니다. 대체 위치는 변수 이름을 사용하더라도 접두사PGDATA추천 대상: 다른 변수와의 혼동 및 충돌을 피하십시오.

서버 환경에서 변수를 생성하려면 프로세스를 진행하려면 먼저 서버를 종료하고 변수, 데이터 영역을 초기화하고 마지막으로 다시 시작합니다. 서버. (참조PostgreSQL :그리고PostgreSQL : 문서 : 7.1 : 메이저 토토 사이트 서버 메이저 토토 사이트.) 환경 변수를 설정하려면 다음을 입력하십시오.

PGDATA2=/홈/포스트그레스/데이터
PGDATA2 내보내기
Bourne 쉘 또는
setenv PGDATA2 /home/postgres/data
csh 또는 tcsh에서. 이것을 확인해야합니다 환경 변수는 항상 서버에 정의되어 있습니다. 그렇지 않으면 해당 환경에 액세스할 수 없습니다. 젠 토토. 그러므로 아마도 어떤 종류로 설정하고 싶을 것입니다. 쉘 시작 파일 또는 서버 시작 스크립트.

데이터 저장 영역을 생성하려면PGDATA2, 다음을 확인하세요/홈/포스트그레스이미 존재하며 쓰기 가능합니다. 서버를 실행하는 사용자 계정으로(참조섹션 3.1). 그런 다음 명령줄, 유형

초기 위치 PGDATA2
서버를 다시 시작할 수 있습니다.

새 위치에 젠 토토를 생성하려면 명령

젠 토토 생성이름위치 포함 = '위치'
어디에서위치이것은 사용한 환경 변수,PGDATA2에 이 예.생성된 DB명령에는 옵션-D이 목적을 위해.

이를 사용하여 대체 위치에 데이터베이스가 생성됨 다른 메서드와 마찬가지로 메서드에 액세스하고 삭제할 수 있습니다. 데이터베이스.

참고:다음을 지정할 수도 있습니다. 에 대한 직접 절대 경로만들기 젠 토토환경을 정의하지 않은 명령 변수. 이는 기본적으로 허용되지 않습니다. 보안 위험. 이를 허용하려면 컴파일해야 합니다.포스트그레C 전처리기 사용 매크로ALLOW_ABSOLUTE_DBPATHS정의되었습니다. 이를 수행하는 한 가지 방법은 컴파일을 실행하는 것입니다. 다음과 같이 단계:gmake CPPFLAGS=-DALLOW_ABSOLUTE_DBPATHS 모두.