Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
db_lectures / 01.Знакомство с СУБД.docx
Скачиваний:
43
Добавлен:
21.05.2015
Размер:
30.24 Кб
Скачать

Фундаментальные основы архитектуры

Перед тем как двигаться дальше, вы должны понимать основы системной архитектуры PostgreSQL. Понимание того, как взаимодействуют части PostgreSQL сделает этот раздел понятней.

На жаргоне баз данных, PostgreSQL использует модель клиент/сервер. Сессия PostgreSQL состоит из следующих скооперированных процессов (программ):

Серверного процесса (backend), который управляет файлами баз данных, осуществляет подключение к базам данным клиентских приложений и выполняет действия над базой данных, затребованные клиентами. Программа-сервер баз данных называется postgres (Все серверные backend-процессы порождаются севером postgres — прим. пер.).

Клиентского приложения пользователя (frontend), которое хочет выполнить операции с базой данных. Клиетнсткие приложения могут быть очень разными: ориентированными на работу с текстом, с графикой, с web-сервером или специальные инструменты обслуживания базы данных. pgAdminиEMS

Для клиент-серверных приложений клиент и сервер обычно находятся на разных компьютерах. В этом случае, они соединяются по сети, через TCP/IP.

Сервер PostgreSQL может управлять несколькими конкурентыми (говоря проще одновременными -- прим. пер.) соединениями от клиентов. Чтобы осуществлять это, сервер запускает (через системный вызов "fork") новый процесс для каждого соединения.

Начиная с момента запуска клиент и новый серверный процесс общаются друг с другом без помощи первоначального postgres процесса. Таким образом, процесс postgres запущен всегда и ожидает соединений от клиентов, после чего начинают работать клиент и соответствующий ему серверный процесс.

Создание базы данных

Первый тест, с помощью которого будет видно, что вы можете получить доступ к серверу баз данных - это попытка создать базу данных.

Для создания новой базы данных, в этом примере называющейся mydb, вы можете использовать следующую команду: $ createdb mydb

Не каждый пользователь имеет авторизацию для создания новых баз данных.

Если вы не хотите использовать вашу базу данных в будущем, вы можете удалить ее. Например, если вы являетесь владельцем (создателем) базы данных mydb, вы можете уничтожить её, используя следующую команду:

$ dropdb mydb

! pgAdminиEMS

Доступ к базе данных

Если вы создали базу данных, то вы можете получить доступ к ней через:

  • Запуск интерактивной терминальной программы PostgreSQL, называемой psql, которая позволит вам интерактивно вводить, редактировать и выполнять команды SQL.

  • Использование графического инструмента типа pgAdmin или офисного пакета с поддержкой ODBC или JDBC, который позволит создавать и манипулировать базой данных.

  • Написание специального приложения, используя один из нескольких доступных языков программирования, которые поддерживаются PostgreSQL.

Вы можете подключится к базе данных с именем mydb, введя следующую команду: $ psql mydb

В psql, вы увидите следующее сообщение:

psql (9.1.1)

Type "help" for help.

mydb=>

Последняя строка может также иметь вид:

mydb=#

Это будет означать, что вы имеете права суперпользоватя в базе данных, что наиболее вероятно, если вы устанавливали PostgreSQL сами.

Последняя строка, которую выдает psql - это приглашение, которое показывает, что psql ожидает ввода запросов SQL в рабочую область, которой управляет psql. Попытайтесь ввести эти команды:

mydb=> SELECT version();

version

-----------------------------------------------------------------------

PostgreSQL 9.1.1 on i586-pc-linux-gnu, compiled by GCC 2.96, 32-bit

(1 row)

mydb=> SELECT current_date;

date

------------

2002-08-31

(1 row)

mydb=> SELECT 2 + 2;

?column?

----------

4

(1 row)