포스트그레스 —PostgreSQL데이터베이스 서버
포스트그레 [옵션...]
포스트그레스이것은PostgreSQL데이터베이스 서버. 클라이언트 애플리케이션이 데이터베이스에 액세스하기 위해 (네트워크를 통해 또는 로컬로) 실행 중인 애플리케이션에 연결됩니다.포스트그레스인스턴스. 그만큼포스트그레스인스턴스는 연결을 처리하기 위해 별도의 서버 프로세스를 시작합니다.
하나포스트그레인스턴스는 항상 정확히 하나의 데이터베이스 클러스터의 데이터를 관리합니다. 데이터베이스 클러스터는 공통 파일 시스템 위치(“데이터 영역”). 둘 이상포스트그레스인스턴스는 서로 다른 데이터 영역과 서로 다른 통신 포트를 배트맨 토토하는 한 시스템에서 동시에 실행될 수 있습니다(아래 참조). 언제포스트그레시작하면 데이터 영역의 위치를 알아야 합니다. 위치는 다음으로 지정되어야 합니다.-D옵션 또는PGDATA환경 변수; 기본값은 없습니다. 일반적으로,-D또는PGDATA다음에 의해 생성된 데이터 영역 디렉토리를 직접 가리킵니다.initdb. 다른 가능한 파일 레이아웃은 다음에서 논의됩니다.PostgreSQL : 문서 : 12 : 19.2. 스포츠 토토 사이트 위치.
기본적으로포스트그레포그라운드에서 시작하여 표준 오류 스트림에 로그 메시지를 인쇄합니다. 실제 적용에서포스트그레스부팅 시 백그라운드 프로세스로 시작되어야 합니다.
그포스트그레명령은 단일 배트맨 토토자 모드에서도 호출할 수 있습니다. 이 모드의 주요 용도는 다음으로 부트스트랩하는 동안입니다.initdb. 때로는 디버깅이나 재해 복구에 배트맨 토토되기도 합니다. 단일 배트맨 토토자 서버를 실행하는 것은 실제로 프로세스 간 통신 및 잠금이 발생하지 않기 때문에 서버 디버깅에 적합하지 않습니다. 셸에서 단일 배트맨 토토자 모드로 호출하면 배트맨 토토자가 쿼리를 입력할 수 있고 결과가 화면에 인쇄되지만 최종 배트맨 토토자보다 개발자에게 더 유용한 형식입니다. 단일 배트맨 토토자 모드에서는 세션 배트맨 토토자가 ID 1의 배트맨 토토자로 설정되고 이 배트맨 토토자에게 암시적 수퍼유저 권한이 부여됩니다. 이 배트맨 토토자는 실제로 존재할 필요가 없으므로 단일 배트맨 토토자 모드를 배트맨 토토하여 시스템 카탈로그에 대한 특정 종류의 우발적인 손상을 수동으로 복구할 수 있습니다.
포스트그레스다음 명령줄 인수를 허용합니다. 옵션에 대한 자세한 내용은 문의하세요.사설 토토 : 문서 : 12 : 19 장 서버 구성. 구성 파일을 설정하면 대부분의 옵션 입력을 줄일 수 있습니다. 일부 (안전한) 옵션은 해당 세션에만 적용하기 위해 응용 프로그램에 따른 방식으로 연결 클라이언트에서 설정할 수도 있습니다. 예를 들어, 환경 변수가PGOPTIONS설정되었으면libpq기반 클라이언트는 해당 문자열을 서버에 전달하고 서버는 이를 다음과 같이 해석합니다.포스트그레명령줄 옵션.
-Bn버퍼서버 프로세스에서 배트맨 토토할 공유 버퍼 수를 설정합니다. 이 매개변수의 기본값은 다음에서 자동으로 선택됩니다.initdb. 이 옵션을 지정하는 것은shared_buffers구성 매개변수.
-c이름=값이름이 지정된 런타임 매개변수를 설정합니다. 에서 지원하는 구성 매개변수PostgreSQL다음에 설명되어 있습니다.사설 토토 : 문서 : 12 : 19 장 서버 구성. 다른 명령줄 옵션의 대부분은 실제로 이러한 매개변수 할당의 짧은 형식입니다.-c여러 매개변수를 설정하기 위해 여러 번 나타날 수 있습니다.
-C이름이름이 지정된 런타임 매개변수의 값을 인쇄하고 종료합니다. (참조-c자세한 내용은 위 옵션을 참조하세요.) 이는 실행 중인 서버에서 배트맨 토토할 수 있으며 다음에서 값을 반환합니다.postgresql.conf, 이 호출에 제공된 매개변수로 수정됩니다. 클러스터가 시작될 때 제공된 매개변수는 반영되지 않습니다.
이 옵션은 다음과 같이 서버 인스턴스와 상호작용하는 다른 프로그램을 위한 것입니다.pg_ctl, 구성 매개변수 값을 쿼리합니다. 배트맨 토토자 지향 애플리케이션은 대신에 다음을 배트맨 토토해야 합니다.표시또는pg_settings보기.
-d디버그 수준디버그 수준을 설정합니다. 이 값을 높게 설정할수록 더 많은 디버깅 출력이 서버 로그에 기록됩니다. 값은 1부터 5까지입니다. 통과도 가능합니다-d 0특정 세션의 경우 상위 서버 로그 수준을 방지합니다.포스트그레스프로세스가 이 세션으로 전파되지 않습니다.
-Ddatadir데이터베이스 구성 파일의 파일 시스템 위치를 지정합니다. 보다PostgreSQL : 문서 : 12 : 19.2. 스포츠 토토 사이트 위치자세한 내용은.
-e기본 날짜 스타일을 다음으로 설정합니다.“유럽인”즉,DMY입력 날짜 필드의 순서. 이로 인해 특정 날짜 출력 형식에서 해당 월 이전의 날짜가 인쇄됩니다. 보다PostgreSQL : 문서 : 12 : 8.5. 날짜/토토 사이트 추천 유형더 많은 정보를 원하시면.
-F비활성화fsync시스템 충돌 시 데이터 손상 위험을 감수하고 성능 향상을 요구합니다. 이 옵션을 지정하는 것은 다음을 비활성화하는 것과 같습니다.fsync구성 매개변수. 이것을 배트맨 토토하기 전에 자세한 문서를 읽어보세요!
-h호스트 이름IP 호스트 이름 또는 주소를 지정합니다.포스트그레스클라이언트 응용프로그램의 TCP/IP 연결을 수신하는 것입니다. 값은 쉼표로 구분된 주소 목록일 수도 있습니다. 또는*배트맨 토토 가능한 모든 인터페이스에서 청취를 지정합니다. 빈 값은 IP 주소를 수신하지 않도록 지정하며, 이 경우 Unix 도메인 소켓만 서버에 연결하는 데 배트맨 토토할 수 있습니다. 기본값은 다음에서만 듣기입니다.로컬호스트. 이 옵션을 지정하는 것은listen_addresses구성 매개변수.
-i원격 클라이언트가 TCP/IP(인터넷 도메인) 연결을 통해 연결할 수 있도록 허용합니다. 이 옵션이 없으면 로컬 연결만 허용됩니다. 이 옵션은 설정과 동일합니다.listen_addresses에*에postgresql.conf또는 경유-h.
이 옵션은 전체 기능에 대한 액세스를 허용하지 않으므로 더 이상 배트맨 토토되지 않습니다.listen_addresses. 일반적으로 설정하는 것이 좋습니다listen_addresses직접.
-k디렉토리Unix 도메인 소켓의 디렉토리를 지정합니다.포스트그레클라이언트 응용프로그램의 연결을 수신하는 것입니다. 값은 쉼표로 구분된 디렉터리 목록일 수도 있습니다. 빈 값은 Unix 도메인 소켓을 수신하지 않도록 지정하며, 이 경우 TCP/IP 소켓만 서버에 연결하는 데 배트맨 토토할 수 있습니다. 기본값은 일반적으로/tmp, 하지만 빌드 시 변경될 수 있습니다. 이 옵션을 지정하는 것은unix_socket_directories구성 매개변수.
-l다음을 배트맨 토토하여 보안 연결을 활성화합니다.SSL. 포스트그레SQL다음을 지원하도록 컴파일되어야 합니다.SSL이 옵션을 배트맨 토토할 수 있습니다. 배트맨 토토에 대한 자세한 내용은SSL, 참조섹션 18.9.
-N최대 연결 수이 서버가 허용할 최대 클라이언트 연결 수를 설정합니다. 이 매개변수의 기본값은 다음에서 자동으로 선택됩니다.initdb. 이 옵션을 지정하는 것은max_connections구성 매개변수.
-o추가 옵션다음에 지정된 명령줄 스타일 인수추가 옵션이에 의해 시작된 모든 서버 프로세스에 전달됩니다.포스트그레프로세스.
내부 공백추가 옵션백슬래시()로 이스케이프하지 않는 한 별도의 인수로 간주됩니다.\); 쓰다\\리터럴 백슬래시를 나타냅니다. 여러 인수를 여러 번 배트맨 토토하여 지정할 수도 있습니다.-o.
이 옵션은 더 이상 배트맨 토토되지 않습니다. 서버 프로세스에 대한 모든 명령줄 옵션은 다음에서 직접 지정할 수 있습니다.포스트그레스명령줄.
-p포트TCP/IP 포트 또는 로컬 Unix 도메인 소켓 파일 확장자를 지정합니다.포스트그레스클라이언트 응용프로그램의 연결을 수신하는 것입니다. 기본값은PGPORT환경 변수 또는 ifPGPORT이 설정되지 않은 경우 기본값은 컴파일 중에 설정된 값(일반적으로 5432)입니다. 기본 포트가 아닌 다른 포트를 지정하는 경우 모든 클라이언트 애플리케이션은 명령줄 옵션 또는PG포트.
-s각 명령 끝에 시간 정보와 기타 통계를 인쇄합니다. 이는 벤치마킹이나 버퍼 수 조정에 유용합니다.
-S 일-멤임시 디스크 파일을 배트맨 토토하기 전에 내부 정렬 및 해시에서 배트맨 토토할 메모리 양을 지정합니다. 설명을 참조하세요.work_mem구성 매개변수섹션 19.4.1.
-V--버전인쇄포스트그레버전 및 종료.
--이름=값이름이 지정된 런타임 매개변수를 설정합니다. 더 짧은 형태의-c.
--설명-구성이 옵션은 탭으로 구분된 서버의 내부 구성 변수, 설명 및 기본값을 덤프합니다.복사형식. 주로 관리 도구에서 배트맨 토토하도록 설계되었습니다.
-?--도움말다음에 관한 도움말 표시포스트그레명령줄 인수 및 종료.
여기에 설명된 옵션은 주로 디버깅 목적으로 배트맨 토토되며 일부 경우 심각하게 손상된 데이터베이스의 복구를 지원하는 데 배트맨 토토됩니다. 프로덕션 데이터베이스 설정에서 이를 배트맨 토토할 이유가 없습니다. 여기에는 다음 배트맨 토토자만 배트맨 토토할 수 있도록 나열되어 있습니다.PostgreSQL시스템 개발자. 또한 이러한 옵션은 향후 릴리스에서 예고 없이 변경되거나 제거될 수 있습니다.
-f 초 | 나 | 오 | 비 | 티 | 엔 | 남 | 시간특정 검색 및 조인 방법의 배트맨 토토을 금지합니다:s그리고i순차 스캔과 인덱스 스캔을 각각 비활성화합니다.o, b그리고t인덱스 전용 스캔, 비트맵 인덱스 스캔 및 TID 스캔을 각각 비활성화하는 동시에n, m및h중첩 루프, 병합 및 해시 조인을 각각 비활성화합니다.
순차 스캔이나 중첩 루프 조인 모두 완전히 비활성화할 수 없습니다. 그만큼-fs그리고-fn옵션은 다른 대안이 있는 경우 최적화 프로그램이 해당 계획 유형을 배트맨 토토하지 못하도록 막습니다.
-n이 옵션은 서버 프로세스가 비정상적으로 종료되는 문제를 디버깅하기 위한 것입니다. 이 상황의 일반적인 전략은 다른 모든 서버 프로세스에 종료하고 공유 메모리와 세마포어를 다시 초기화해야 함을 알리는 것입니다. 이는 잘못된 서버 프로세스가 종료되기 전에 일부 공유 상태를 손상시켰을 수 있기 때문입니다. 이 옵션은 다음을 지정합니다.포스트그레스공유 데이터 구조를 다시 초기화하지 않습니다. 지식이 풍부한 시스템 프로그래머는 디버거를 배트맨 토토하여 공유 메모리와 세마포어 상태를 검사할 수 있습니다.
-O시스템 테이블의 구조를 수정하도록 허용합니다. 이것은 다음에서 배트맨 토토됩니다.initdb.
-P시스템 테이블을 읽을 때 시스템 인덱스를 무시하지만 테이블을 수정할 때 인덱스를 계속 업데이트합니다. 이는 손상된 시스템 인덱스를 복구할 때 유용합니다.
-t 파[rser] | 계획[안너] | 집행자]각 주요 시스템 모듈과 관련된 각 쿼리에 대한 타이밍 통계를 인쇄합니다. 이 옵션은와 함께 배트맨 토토할 수 없습니다.-s옵션.
-T이 옵션은 서버 프로세스가 비정상적으로 종료되는 문제를 디버깅하기 위한 것입니다. 이 상황에서 일반적인 전략은 다른 모든 서버 프로세스에 종료하고 공유 메모리와 세마포어를 다시 초기화해야 함을 알리는 것입니다. 이는 잘못된 서버 프로세스가 종료되기 전에 일부 공유 상태를 손상시켰을 수 있기 때문입니다. 이 옵션은 다음을 지정합니다.포스트그레신호를 보내 다른 모든 서버 프로세스를 중지합니다SIGSTOP이지만 종료되지는 않습니다. 이를 통해 시스템 프로그래머는 모든 서버 프로세스에서 코어 덤프를 직접 수집할 수 있습니다.
-v 프로토콜특정 세션에 배트맨 토토될 프런트엔드/백엔드 프로토콜의 버전 번호를 지정합니다. 이 옵션은 내부 전용입니다.
-W 초인증 절차를 수행한 후 새 서버 프로세스가 시작될 때 이 몇 초의 지연이 발생합니다. 이는 디버거를 배트맨 토토하여 서버 프로세스에 연결할 수 있는 기회를 제공하기 위한 것입니다.
다음 옵션은 단일 배트맨 토토자 모드에만 적용됩니다(참조단일 배트맨 토토자 모드).
--싱글단일 배트맨 토토자 모드를 선택합니다. 이는 명령줄의 첫 번째 인수여야 합니다.
데이터베이스액세스할 데이터베이스의 이름을 지정합니다. 이는 명령줄의 마지막 인수여야 합니다. 생략하면 기본적으로 배트맨 토토자 이름이 배트맨 토토됩니다.
-E모든 명령을 실행하기 전에 표준 출력으로 에코합니다.
-j명령 입력 종결자로 단지 개행 문자가 아닌 세미콜론과 두 개의 개행 문자를 배트맨 토토하십시오.
-r 파일 이름모든 서버 로그 출력을 다음으로 보냅니다.파일 이름. 이 옵션은 명령줄 옵션으로 제공된 경우에만 적용됩니다.
PGCLIENTENCODING클라이언트가 배트맨 토토하는 기본 문자 인코딩입니다. (클라이언트는 이를 개별적으로 재정의할 수 있습니다.) 이 값은 구성 파일에서 설정할 수도 있습니다.
PGDATA기본 데이터 디렉토리 위치
PGDATESTYLE기본값날짜 스타일런타임 매개변수. (이 환경 변수의 배트맨 토토은 더 이상 배트맨 토토되지 않습니다.)
PG포트기본 포트 번호(구성 파일에서 설정하는 것이 좋음)
실패 메시지가 언급됨semget또는shmget아마도 적절한 공유 메모리와 세마포어를 제공하도록 커널을 구성해야 함을 나타냅니다. 자세한 내용은 참조PostgreSQL : 문서 : 12 : 18.4. 토토 핫 리소스 관리. 감소시켜 커널 재구성을 연기할 수도 있습니다.shared_buffers공유 메모리 소비를 줄이기 위해PostgreSQL및/또는 축소하여max_connections세마포어 소비를 줄이기 위해.
다른 서버가 이미 실행 중임을 암시하는 실패 메시지는 예를 들어 다음 명령을 배트맨 토토하여 주의 깊게 확인해야 합니다.
$ps 도끼 | 그렙 포스트그레스
또는
$ps -ef | 그렙 포스트그레스
시스템에 따라 다릅니다. 충돌하는 서버가 실행되고 있지 않다고 확신하는 경우 메시지에 언급된 잠금 파일을 제거하고 다시 시도할 수 있습니다.
포트에 바인딩할 수 없음을 나타내는 실패 메시지는 해당 포트가 이미 일부 비-에서 배트맨 토토 중임을 나타낼 수 있습니다.포스트그레SQL프로세스. 종료하는 경우에도 이 오류가 발생할 수 있습니다.포스트그레스동일한 포트를 배트맨 토토하여 즉시 다시 시작하세요. 이 경우 다시 시도하기 전에 운영 체제가 포트를 닫을 때까지 몇 초만 기다리면 됩니다. 마지막으로 운영 체제에서 예약된 것으로 간주하는 포트 번호를 지정하면 이 오류가 발생할 수 있습니다. 예를 들어, 많은 Unix 버전에서는 1024 미만의 포트 번호를 다음과 같이 간주합니다.“신뢰할 수 있는”그리고 Unix 수퍼유저만 접근할 수 있도록 허용합니다.
유틸리티 명령pg_ctl다음을 시작하고 종료하는 데 배트맨 토토할 수 있습니다.포스트그레스안전하고 편안하게 서버를 제공합니다.
가능하다면,하지 마세요배트맨 토토SIGKILL메인을 죽이기 위해포스트그레스서버. 그렇게 하면 예방할 수 있습니다.포스트그레종료하기 전에 보유한 시스템 리소스(예: 공유 메모리 및 세마포어)를 해제하지 않습니다. 새로 시작하는 데 문제가 발생할 수 있습니다.포스트그레실행.
종료하려면포스트그레스서버는 일반적으로 신호를 받습니다.SIGTERM, SIGINT또는SIGQUIT배트맨 토토할 수 있습니다. 첫 번째는 종료하기 전에 모든 클라이언트가 종료될 때까지 기다리고, 두 번째는 모든 클라이언트의 연결을 강제로 끊고, 세 번째는 적절한 종료 없이 즉시 종료되어 다시 시작하는 동안 복구가 실행됩니다.
그SIGHUP신호는 서버 구성 파일을 다시 로드합니다. 보내는 것도 가능합니다SIGHUP개별 서버 프로세스에 연결하지만 일반적으로 합리적이지 않습니다.
실행 중인 쿼리를 취소하려면 다음을 보내십시오.SIGINT해당 명령을 실행하는 프로세스에 신호를 보냅니다. 백엔드 프로세스를 완전히 종료하려면 다음을 보내세요.SIGTERM그 프로세스에. 또한 참조하세요pg_cancel_backend그리고pg_terminate_backend에섹션 9.26.2이 두 작업에 해당하는 SQL 호출 가능 작업에 대해.
그포스트그레스서버 배트맨 토토SIGQUIT하위 서버 프로세스가 정상적인 정리 없이 종료되도록 지시합니다. 이 신호해서는 안 됩니다배트맨 토토자가 배트맨 토토합니다. 보내는 것도 현명하지 못하다SIGKILL서버 프로세스에 — 메인포스트그레스프로세스는 이를 충돌로 해석하고 표준 충돌 복구 절차의 일부로 모든 형제 프로세스를 강제로 종료합니다.
그--옵션이 작동하지 않습니다FreeBSD또는OpenBSD. 배트맨 토토-c대신. 이는 영향을 받는 운영 체제의 버그입니다. 향후 릴리스PostgreSQL이 문제가 해결되지 않으면 해결 방법을 제공하겠습니다.
단일 배트맨 토토자 모드 서버를 시작하려면 다음과 같은 명령을 배트맨 토토하십시오.
postgres --single -D /usr/local/pgsql/data기타 옵션내_데이터베이스
다음을 배트맨 토토하여 데이터베이스 디렉토리에 올바른 경로를 제공하십시오.-D또는 환경 변수가 다음과 같은지 확인하세요.PGDATA설정되었습니다. 또한 작업하려는 특정 데이터베이스의 이름도 지정하세요.
일반적으로 단일 배트맨 토토자 모드 서버는 줄바꿈을 명령 입력 종결자로 취급합니다. 거기에 있는 것처럼 세미콜론에 대한 정보는 없습니다.psql. 여러 줄에 걸쳐 명령을 계속하려면 마지막 줄을 제외한 각 줄 바꿈 바로 앞에 백슬래시를 입력해야 합니다. 백슬래시와 인접한 개행 문자는 모두 입력 명령에서 삭제됩니다. 이는 문자열 리터럴이나 주석 내에서도 발생합니다.
그러나 당신이 다음을 배트맨 토토한다면-j명령줄 스위치, 단일 줄 바꿈은 명령 입력을 종료하지 않습니다. 대신, 세미콜론-줄바꿈-줄바꿈 시퀀스가 수행됩니다. 즉, 세미콜론 바로 뒤에 완전히 빈 줄을 입력합니다. 이 모드에서는 백슬래시-개행 문자가 특별히 처리되지 않습니다. 다시 말하지만, 문자열 리터럴이나 주석 내에 나타나는 이러한 시퀀스에 대한 정보는 없습니다.
어느 입력 모드에서든 명령 항목 종결자 바로 앞이나 일부가 아닌 세미콜론을 입력하면 명령 구분 기호로 간주됩니다. 명령 입력 종결자를 입력하면 입력한 여러 문이 단일 트랜잭션으로 실행됩니다.
세션을 종료하려면 다음을 입력하세요.EOF (제어+D, 일반적으로). 마지막 명령 입력 종결자 이후에 텍스트를 입력한 경우에는EOF명령 입력 종결자로 배트맨 토토되며 또 다른EOF종료하려면 필요합니다.
단일 배트맨 토토자 모드 서버는 정교한 줄 편집 기능을 제공하지 않습니다(예: 명령 기록 없음). 단일 배트맨 토토자 모드에서는 자동 체크포인트나 복제와 같은 백그라운드 처리도 수행하지 않습니다.
시작하려면포스트그레백그라운드에서 기본값을 배트맨 토토하여 다음을 입력합니다.
$nohup postgres logfile 2&1 </dev/null &
시작하려면포스트그레특정 포트(예: 1234) 배트맨 토토:
$postgres -p 1234
다음을 배트맨 토토하여 이 서버에 연결하려면psql, -p 옵션을 배트맨 토토하여 이 포트를 지정하십시오.
$psql -p 1234
또는 환경 변수 설정PGPORT:
$PGPORT=1234 내보내기$psql
명명된 런타임 매개변수는 다음 스타일 중 하나로 설정할 수 있습니다.
$postgres -c work_mem=1234$postgres --work-mem=1234
어느 양식이든 존재하는 모든 설정을 재정의합니다.work_meminpostgresql.conf. 매개변수 이름의 밑줄은 명령줄에서 밑줄이나 대시로 쓸 수 있습니다. 단기 실험을 제외하고는 다음에서 설정을 수정하는 것이 더 좋습니다.postgresql.conf매개변수를 설정하기 위해 명령줄 스위치에 의존하는 것보다.