시작하기 전에 기본 사항을 이해해야 합니다.포스트그레시스템 아키텍처. 의 부분이 어떻게 구성되어 있는지 이해하기포스트그레상호작용이 다음을 만들 것입니다 챕터가 좀 더 명확해졌습니다. 데이터베이스 전문 용어로,포스트그레스간단한 "사용자별 프로세스"를 사용합니다. 클라이언트/서버 모델. 갑포스트그레세션은 다음으로 구성됩니다 Unix 프로세스(프로그램) 협력:
감독 데몬 프로세스(우체국장),
사용자의 프런트엔드 애플리케이션(예:psql프로그램) 및
하나 이상의 백엔드 데이터베이스 서버(포스트그레프로세스 자체).
싱글우체국장관리하다 단일 호스트에 있는 특정 데이터베이스 모음. 그러한 데이터베이스 모음을 클러스터(데이터베이스)라고 합니다. 특정 데이터베이스에 액세스하려는 프런트엔드 애플리케이션 클러스터 내에서 라이브러리를 호출합니다. 도서관에서 보내드립니다 사용자는 네트워크를 통해 다음으로 요청합니다.우체국장 (그림 2-1), 이는 차례로 새로운 백엔드 서버 프로세스를 시작합니다.
그리고 프론트엔드 프로세스를 새 서버에 연결합니다. 에서 그 시점에서 프런트엔드 프로세스와 백엔드 서버 의 개입 없이 통신합니다.우체국장. 따라서,우체국장항상 실행 중이며 대기 중입니다. 프런트엔드와 백엔드 프로세스는 왔다 갔다 합니다.그libpq라이브러리는 단일 백엔드 프로세스에 여러 연결을 만들기 위한 프런트엔드. 그러나 프런트엔드 애플리케이션은 여전히 단일 스레드입니다. 프로세스. 다중 스레드 프런트엔드/백엔드 연결은 그렇지 않습니다. 현재 다음에서 지원됩니다.libpq. 하나 이 아키텍처의 의미는 다음과 같습니다.우체국장그리고 백엔드는 항상 실행됩니다 동일한 머신(데이터베이스 서버), 프런트엔드 응용 프로그램은 어디에서나 실행될 수 있습니다. 이 점을 명심해야 합니다. 클라이언트 컴퓨터에서 액세스할 수 있는 파일은 접근할 수 없습니다(또는 다른 방법을 통해서만 접근할 수 있습니다). 파일 이름)을 데이터베이스 서버 시스템에 저장합니다.
또한 다음 사항에 유의해야 합니다.우체국장그리고 postgres 서버는 다음과 같이 실행됩니다. 의 사용자 ID포스트그레스"수퍼유저." 참고하세요포스트그레스슈퍼유저는 슈퍼유저일 필요는 없습니다. 특수 사용자(예: "메이저 토토 사이트"라는 사용자) 게다가,포스트그레슈퍼유저가 해야 할 일 확실히 Unix 수퍼유저("루트")가 아니어야 합니다! 어쨌든 모든 데이터베이스와 관련된 파일은 여기에 속해야 합니다.포스트그레수퍼유저.