이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.
포스트그레SQL
이전 다음

48장. 건축학

포스트그레스 건축 개념

계속하기 전에 기본 Postgres를 이해해야 합니다. 시스템 아키텍처. Postgres의 각 부분이 어떻게 구성되어 있는지 이해하기 상호 작용을 통해 다음 장을 좀 더 명확하게 만들 수 있습니다. 데이터베이스에 전문 용어로 Postgres는 간단한 "사용자별 프로세스" 클라이언트/서버를 사용합니다. 모델. Postgres 세션은 다음과 같은 협력으로 구성됩니다. UNIX 프로세스(프로그램):

  • 감독 데몬 프로세스(포스트마스터),

  • 사용자의 프런트엔드 애플리케이션(예: psql 프로그램), 그리고

  • 하나 이상의 백엔드 데이터베이스 서버(토토 사이트 프로세스 자체).

한 명의 포스트마스터가 특정 데이터베이스 모음을 관리합니다. 단일 호스트. 이러한 데이터베이스 모음을 설치 또는 사이트. 액세스하려는 프런트엔드 애플리케이션 설치 내의 특정 데이터베이스가 라이브러리를 호출합니다. 도서관은 네트워크를 통해 포스트마스터에게 사용자 요청을 보냅니다. (연결 방법 설립되었습니다(a)), 그러면 새로운 백엔드 서버가 시작됩니다. 프로세스 (어떻게 연결이 설정되었습니다(b))

프론트엔드 프로세스를 새 서버에 연결합니다. (연결 방법 설립되었습니다(c)). 그 시점부터 프론트엔드 프로세스는 백엔드 서버는 사용자의 개입 없이 통신합니다. 우체국장. 따라서 포스트마스터는 항상 실행 중이며 다음을 기다리고 있습니다. 프런트엔드와 백엔드 프로세스는 왔다 갔다 합니다. 그만큼libpq라이브러리는 단일 프런트엔드를 허용합니다. 백엔드 프로세스에 여러 연결을 만듭니다. 그러나 프런트엔드 애플리케이션은 여전히 ​​단일 스레드 프로세스입니다. 다중 스레드 프런트엔드/백엔드 연결은 현재 지원되지 않습니다. 에서 지원됨libpq. 한 가지 의미 이 아키텍처는 포스트마스터와 백엔드가 항상 실행된다는 것입니다. 동일한 머신(데이터베이스 서버)에 있고 프런트엔드에는 응용 프로그램은 어디에서나 실행될 수 있습니다. 때문에 이 점을 명심해야 합니다. 클라이언트 컴퓨터에서 액세스할 수 있는 파일은 액세스할 수 없습니다. 액세스 가능(또는 다른 파일 이름을 통해서만 액세스 가능) 데이터베이스 서버 머신. 당신은 또한 postmaster 및 postgres 서버는 다음의 사용자 ID로 실행됩니다. Postgres "수퍼유저" Postgres 슈퍼유저는 그렇지 않습니다. 특별한 사용자(예: "postgres"라는 사용자)여야 합니다. 게다가 Postgres 슈퍼유저는 절대 슈퍼유저가 되어서는 안 됩니다. UNIX 슈퍼유저, "루트"! 어쨌든 다음과 관련된 모든 파일은 데이터베이스는 이 Postgres 슈퍼유저에 속해야 합니다.
이전 다음
개발자 가이드 위로 유전자 쿼리 데이터베이스 시스템의 최적화