| PostgreSQL 9.3.25 문서 | ||||
|---|---|---|---|---|
| PostgreSQL : 문서 : 9.3 : 범퍼카 토토 클러스터 만들기 | PostgreSQL : 문서 : 9.3 : 사설 토토 사이트 설정 및 작동 | 17장. 스포츠 토토 사이트 설정 및 작동 | 토토 꽁 머니 : 문서 : 9.3 : 커널 자원 관리 | |
누군가가 데이터베이스에 접근하기 전에 먼저 다음을 시작해야 합니다. 데이터베이스 서버. 데이터베이스 서버 프로그램이 호출됩니다.포스트그레.포스트그레프로그램은 사용하려는 데이터를 어디서 찾을 수 있는지 알아야 합니다. 이는 다음과 같이 수행됩니다.-D옵션. 따라서, 서버를 시작하는 가장 간단한 방법은 다음과 같습니다.
$ postgres -D /usr/local/pgsql/data
스포츠 토토 사이트가 포그라운드에서 실행되도록 합니다. 이는 반드시 로그인한 동안 완료하세요.포스트그레SQL사용자 계정. 없이-D, 스포츠 토토 사이트는 데이터 디렉터리를 사용하려고 시도합니다. 환경 변수에 의해 명명됨PGDATA. 만약에 해당 변수도 제공되지 않으면 실패합니다.
일반적으로 시작하는 것이 좋습니다포스트그레백그라운드에서. 이를 위해 일반적인 Unix 셸 구문을 사용합니다.
$ postgres -D /usr/local/pgsql/data 로그 파일 2&1 &
서버의 정보를 저장하는 것이 중요합니다.stdout그리고stderr위 그림과 같이 어딘가에 출력됩니다. 그것 감사 목적과 문제 진단에 도움이 됩니다. (참조PostgreSQL : 문서 : 9.3 : 사설 토토 사이트 파일 유지 관리더 많은 정보를 원하시면 로그 파일 처리에 대해 자세히 논의합니다.)
그포스트그레스프로그램은 또한 다른 명령줄 옵션의 수. 자세한 내용은 다음을 참조하세요.포스트그레스참조 페이지 및제18장아래.
이 쉘 구문은 금방 지루해질 수 있습니다. 그러므로 래퍼는 프로그램pg_ctl11590_11641
pg_ctl start -l 로그 파일
백그라운드에서 스포츠 토토 사이트를 시작하고 출력을 명명된 로그 파일.-D옵션에는 여기서와 같은 의미포스트그레. pg_ctl또한 다음을 중지할 수 있습니다. 서버.
일반적으로 다음과 같은 경우 데이터베이스 서버를 시작하려고 합니다. 컴퓨터 부츠. 자동 시작 스크립트는 운영 체제별로 다릅니다. 몇 가지가 함께 배포되었습니다.포스트그레SQL에서contrib/start-scripts디렉토리. 하나 설치 루트 권한이 필요합니다.
시스템마다 시작 규칙이 다릅니다 부팅 시 데몬. 많은 시스템에 파일이 있습니다./etc/rc.local또는/etc/rc.d/rc.local. 다른 사람들은 사용함init.d또는rc.d디렉터리. 무엇을 하든 서버는 다음에 의해 실행되어야 합니다.PostgreSQL사용자 계정루트가 아님또는 임의 다른 사용자. 그러므로 아마도 다음을 사용하여 명령을 작성해야 할 것입니다.su postgres -c '...'. 예를 들면:
su postgres -c 'pg_ctl start -D /usr/local/pgsql/data -l serverlog'
다음은 운영 체제별 몇 가지 제안 사항입니다. (에서 각 경우에 적절한 설치 디렉터리와 사용자를 사용해야 합니다. 일반적인 값을 표시하는 이름입니다.)
용FreeBSD, 파일을 보세요contrib/start-scripts/freebsd에서PostgreSQL출처 배포.
켜짐OpenBSD, 다음을 추가하세요 파일에 대한 줄/etc/rc.local:
if [ -x /usr/local/pgsql/bin/pg_ctl -a -x /usr/local/pgsql/bin/postgres ]; 그럼
su -l postgres -c '/usr/local/pgsql/bin/pg_ctl start -s -l /var/postgresql/log -D /usr/local/pgsql/data'
에코 -n 'postgresql'
fi켜짐리눅스시스템 중 하나 추가
/usr/local/pgsql/bin/pg_ctl start -l 로그 파일 -D /usr/local/pgsql/data
에/etc/rc.d/rc.local또는/etc/rc.local또는 파일을 보세요contrib/start-scripts/linux에서PostgreSQL소스 배포.
켜짐NetBSD, 다음 중 하나를 사용하세요.FreeBSD또는리눅스다음에 따라 스크립트 시작 선호합니다.
켜짐솔라리스, 파일을 생성하세요 전화함/etc/init.d/postgresql그것 다음 줄이 포함되어 있습니다:
su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l 로그 파일 -D /usr/local/pgsql/data"
그런 다음 여기에 심볼릭 링크를 생성하십시오./etc/rc3.dasS99postgresql.
스포츠 토토 사이트가 실행되는 동안, 그PID파일에 저장되어 있습니다postmaster.pid데이터 디렉토리에 있습니다. 이것은 사용됩니다 여러 서버 인스턴스가 동일한 데이터에서 실행되는 것을 방지하기 위해 디렉토리이며 서버를 종료하는 데에도 사용할 수 있습니다.
서버가 시작되지 않는 데에는 몇 가지 일반적인 이유가 있습니다. 서버의 로그 파일을 확인하거나 수동으로 시작하십시오. 표준 출력 또는 표준 오류를 리디렉션) 어떤 오류가 있는지 확인 메시지가 나타납니다. 아래에서는 가장 일반적인 오류 중 일부를 설명합니다. 메시지를 자세히 설명합니다.
로그: IPv4 소켓을 바인딩할 수 없습니다: 주소가 이미 사용 중입니다. 힌트: 다른 포스트마스터가 이미 포트 5432에서 실행되고 있습니까? 그렇지 않은 경우 몇 초 정도 기다렸다가 다시 시도하십시오. 치명적: TCP/IP 청취 소켓을 생성할 수 없습니다.
이것은 일반적으로 제안된 내용을 의미합니다. 이미 실행 중인 동일한 포트의 다른 스포츠 토토 사이트. 그러나 커널 오류 메시지가 그렇지 않은 경우이미 사용 중인 주소또는 일부 변형 그렇다면 다른 문제가 있을 수도 있습니다. 예를 들어, 예약된 포트 번호에서 서버를 시작하면 뭔가를 그릴 수 있습니다. 좋아요:
$ postgres -p 666로그: IPv4 소켓을 바인딩할 수 없음: 권한이 거부되었습니다. 힌트: 다른 포스트마스터가 이미 포트 666에서 실행 중입니까? 그렇지 않은 경우 몇 초 정도 기다렸다가 다시 시도하십시오. 치명적: TCP/IP 청취 소켓을 생성할 수 없습니다.
다음과 같은 메시지:
치명적: 공유 메모리 세그먼트를 생성할 수 없음: 잘못된 인수 세부 사항: 실패한 시스템 호출은 shmget(key=5440001, size=4011376640, 03600)입니다.
아마도 공유 메모리 크기에 대한 커널의 제한을 의미할 것입니다. 작업 영역보다 작습니다PostgreSQL생성을 시도 중입니다(4011376640 이 예에서는 바이트). 아니면 자신이 없다는 뜻일 수도 있습니다. 커널에 구성된 System-V 스타일 공유 메모리 지원 모두. 임시 해결 방법으로 서버를 시작해 볼 수 있습니다. 평소보다 적은 수의 버퍼(shared_buffers). 결국에는 커널을 재구성하여 허용되는 공유 메모리 크기. 다음 경우에도 이 메시지가 표시될 수 있습니다. 동일한 시스템에서 여러 서버를 시작하려고 하는 경우 요청된 총 공간이 커널 제한을 초과합니다.
다음과 같은 오류:
치명적: 세마포어를 생성할 수 없음: 기기에 남은 공간이 없습니다. 세부 사항: 실패한 시스템 호출은 semget(5440126, 17, 03600)입니다.
그렇습니다아님당신이 그랬다는 뜻이에요 디스크 공간이 부족합니다. 이는 커널의 개수 제한을 의미합니다. 의시스템 V세마포어가 더 작습니다. 숫자보다PostgreSQL원한다 창조하다. 위와 같이 문제를 해결할 수 있습니다. 허용되는 연결 수를 줄여 스포츠 토토 사이트를 시작함으로써 (max_connections), 하지만 결국에는 커널 제한을 늘리고 싶을 것입니다.
만약 당신이"불법적인 시스템 호출"오류, 공유 메모리나 세마포어가 아닐 가능성이 높습니다. 커널에서 전혀 지원되지 않습니다. 이 경우 유일한 옵션은 이러한 기능을 활성화하기 위해 커널을 재구성합니다.
구성에 대한 세부정보시스템 뷔 IPC시설은 주어진섹션 17.4.1.
클라이언트 측에서 가능한 오류 조건은 다음과 같습니다. 매우 다양하고 애플리케이션에 따라 다르며 그 중 일부는 서버가 시작된 방법과 직접적으로 관련됩니다. 기타 조건 아래에 표시된 것보다 해당 항목을 문서화해야 합니다. 클라이언트 애플리케이션.
psql: 서버에 연결할 수 없습니다: 연결이 거부되었습니다.
서버가 "server.joe.com" 호스트에서 실행 중이고 수락합니까?
포트 5432의 TCP/IP 연결?
이것은 일반적인 내용입니다"나는 찾을 수 없었습니다 대화할 스포츠 토토 사이트"실패. 위와 같을 때 TCP/IP 통신이 시도됩니다. 흔한 실수는 잊어버리는 것이다. TCP/IP 연결을 허용하도록 스포츠 토토 사이트를 구성하십시오.
또는 Unix 도메인을 시도할 때 이것을 얻게 됩니다. 로컬 서버에 대한 소켓 통신:
psql: 서버에 연결할 수 없습니다. 해당 파일이나 디렉터리가 없습니다.
서버가 로컬에서 실행 중이고 수락합니까?
Unix 도메인 소켓 "/tmp/.s.PGSQL.5432"의 연결?
마지막 줄은 클라이언트가 시도하고 있는지 확인하는 데 유용합니다. 올바른 위치에 연결합니다. 실제로 서버가 없는 경우 거기에서 실행하면 커널 오류 메시지는 일반적으로 다음 중 하나입니다.연결이 거부되었습니다.또는해당 파일이나 디렉토리가 없습니다, 설명되어 있습니다. (이것을 깨닫는 것이 중요합니다.)연결이 거부되었습니다.이 맥락에서는아님서버가 연결 요청을 받고 거부했습니다. 그 사건은 생산할 것이다 다음과 같은 다른 메시지가 표시됩니다.섹션 19.4.) 기타 다음과 같은 오류 메시지연결 시간 초과다음과 같은 보다 근본적인 문제를 나타낼 수 있습니다. 네트워크 연결이 부족합니다.
| 이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
| 데이터베이스 생성 클러스터 | PostgreSQL : 문서 : 9.3 : 사설 토토 사이트 설정 및 작동 | 커널 관리 리소스 |