На главную страницу
Форум txt.version   




Статья :: POSTGRES : Архитектура СУБД POSTGRES95

Архитектура СУБД POSTGRES95

Архитектура СУБД POSTGRES95 основана на модели "клиент-сервер". Сессия с СУБД состоит из следующих взаимодействующих процессов:

  • postmaster - управляющий процесс-демон, который руководит взаимодействием между внешними и внутренними процессами; он выделяет совместно используемый буффер динамической памяти и выполняет другие инициализации во время запуска.
  • postgres - внутренний серверный процесс базы данных, исполняющий запросы клиента. Postmaster всегда запускает новый postgres-процесс для каждого клиентского приложения. Этот серверный процесс выполняется на машине сервера.
  • внешняя прикладная программа, которая может находиться на другом компьюторе (например, рабочей станции). Она соединяется с postgres через postmaster.

Один раз запущенный процесс-демон postmaster управляет установленным набором баз данных на серевере. Внешняя прикладная программа, желающая получить доступ к одной из этих баз данных, вызывает библиотеку функций прикладного программного интерфейса LIBPQ (рис.4). С помощью этих функций запрос по сети передается postmaster'у, который порождает серверный процесс и соединяет внешнюю программу с сервером. С этого момента клиентские и серверные процессы взаимодействуют без помощи postmaster'a. Таким образом, postmaster постоянно работает, ожидая запросов, в то время, как происходят и завершаются соединения с внешними приложениями. Прикладной программный интерфейс LIBPQ позволяет одной клиентской программе совершать во время одной сессии множественные соединения с сервером БД. Но тем не менее, внешняя программа - это однопотоковый процесс. Многопоточность процессов библиотекой LIBPQ не поддерживается. Другой особенностью архитектуры СУБД POSTGRES95 является то, что postmaster и postgres серверные процессы всегда выполняются на одной и той же машине - сервере базы данных, тогда как внешние программы могут находиться на любых машинах сети.


Рис. 4. Схема взаимодействия процессов POSTGRES95

Таким образом, СУБД POSTGRES95 позволяет осуществлять доступ клиентским прикладным программам к своим базам данных не только в локальном, но и удаленном режиме. Но система безопасности СУБД не предоставляет эту возможность всем пользователям. Для разрешения удаленного соединения с базами данных необходимо установить режим аутентификации для данного пользователя. По умолчанию в файле конфигурации этот режим отключен, и доступ разрешен только программам, расположенным в директории на машине сервера БД. Для установления аутентификации необходимо в файле pq_hba указать имена машин, с которых возможен удаленный доступ прикладным программам, и соответствующие базы данных, к которым разрешается удаленный доступ:

#    <name>                     <address>                   <mask>
     all                        127.0.0.1                   0.0.0.0
     all                        194.85.135.66               0.0.0.0

После этого необходимо произвести заново компиляцию системы.

[Назад] [Содержание] [Вперед]

POSTGRES : Архитектура СУБД POSTGRES95

страницы в данном разделе 
 POSTGRES : Средства доступа к базам данных на стороне сервера  POSTGRES : Доступ к базам данных на стороне клиента. Java-технология
 POSTGRES : Постреляционная СУБД POSTGRES95  POSTGRES : Архитектура СУБД POSTGRES95
 POSTGRES : Доступ к базам данных под управлением СУБД POSTGRES95  POSTGRES : Заключение
 Средства доступа к базам данных в Internet и свободно доступная СУБД POSTGRES95   


Разделы
Околокомпьютерная литература (375)
Программирование (102)
Программы (75)
ОС и Сети (49)
Интернет (29)
Аппаратное обеспечение (16)
Базы данных (6)

Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)

PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C





 
©  programming-lang.com  справочник программиста