- •Работа с субд PostgreSql
- •Работа с субд PostgreSql
- •Введение
- •1Установка PostgreSql
- •2Создание новой бд
- •2.1Создание новой бд
- •2.2Создание новой таблицы
- •2.3Создание связей между таблицами
- •3Создание индексов
- •4Доступ к PostgreSql из Java
- •4.1Соединение с PostgreSql
- •4.2Взаимодействие с бд
- •5Создание представлений
- •6Хранимые процедуры и Триггеры
- •6.1Хранимые процедуры
- •6.1.1Оператор Create Function языка pl/pgSql
- •6.1.2Создание хранимых процедур в pgAdmin III
- •6.1.3Вызов хранимых процедур в Java
- •6.2Триггеры бд
- •6.2.1Синтаксис определения триггера в PostgreSql
- •6.2.2Создание триггера в PgAdmin III
- •7Права доступа
- •Создание ролей;
- •7.1Создание ролей
- •7.2Назначение прав доступа
- •7.3Отмена прав доступа
- •7.4Проверка прав доступа
- •8Резервное копирование и восстановление бд
- •8.1Резервное копирование (BackUp) бд
- •8.2Восстановление (Restore) бд
- •8.3Создание sql-дампа бд
- •8.4Восстановление sql-дампа бд
- •8.5Восстановление sql-дампа средствами pgAdmin III
- •9Особенности взаимодействия субд access и PostgreSql
- •9.1Подготовка соединения PostgreSql с бд в Access
- •9.2Копирование таблиц Access в таблицы PostgreSql
- •9.3Подключение таблиц PostgreSql к бд в Access
- •10Администрирование PostgreSql
- •Литература
8.4Восстановление sql-дампа бд
Текстовые файлы, создаваемые pg_dump, предназначены для чтения программой psql. Восстановление дампа производится командой, общий вид которой представлен ниже:
psql dbname < infile
где infile это имя файла (или путь к нему), который указывался в качестве параметра outfile команды pg_dump.
Замечание: При запуске этой команды не создаётся БД dbname, поэтому её необходимо создать заранее из template0, прежде чем запускать psql (например, createdb -T template0 dbname).
Для psql подобно pg_dump можно задать сервер БД, с которым следует устанавливать соединение, и имя пользователя, под которым соединение будет установлено.
Перед восстановлением SQL-дампа, необходимо, чтобы существовали все учётные записи пользователей, являющихся владельцами объектов или имеющих права на объекты восстанавливаемой БД. Если их не будет, невозможно будет восстановить объекты с первоначальной принадлежностью и/или правами на них.
По умолчанию, если скрипт psql встретит SQL-ошибку, он всё равно продолжит работу. При желании, это можно изменить, добавив в самый верх скрипта следующую строчку:
\set ON_ERROR_STOP
После этого, при возникновении SQL-ошибки, приложение psql будет прерывать работу и выходить со статусом 3.
Ниже приводится описание процесса восстановления SQL-дампа БД «Деканат ВУЗа».
В командной строке PostgreSQL с помощью команды createdb –U username restoreDeanery создается новая БД (рисунок 7.9). В результате окно Браузер объектов pgAdmin III примет вид, показанный на рисунке 7.10.
Рисунок 7.9 – Создание новой БД
Рисунок 7.10 – Окно Браузер объектов
Затем необходимо создать роли для пользователей секретарь и декан (рисунки 7.11, 7.12).
После этого выполняется команда восстановления SQL-дампа БД (рисунок 7.13). Структура восстановленной БД в окне Браузер объектов будет выглядеть так, как показано на рисунке 7.14.
Рисунок 7.11 – Создание роли Декан (dean)
Рисунок 7.12 – Создание роли Секретарь (secretary)
Рисунок 7.13 – Восстановление SQL-дампа БД
Рисунок 7.14 – Структура восстановленной БД «Деканат ВУЗа»
8.5Восстановление sql-дампа средствами pgAdmin III
Вызвать окно SQL–запроса.
Рисунок 7.15 – Вызов окна SQL–запроса
Выполнить поиск файла с SQL-дампом
Рисунок 7.16 – Выбор файла SQL-дампа
Открыть файл с SQL-дампом
Рисунок 7.17 – Открытие файла SQL-дампа
Рисунок 7.18 – Восстановление SQL-дампа
9Особенности взаимодействия субд access и PostgreSql
Ниже приведено описание удобного способа копирования таблиц Access в таблицы PostgreSQL, а также возможности подключения таблиц PostgreSQL к таблицам Access.
Предварительное условие: Драйвер PostgreSQL ODBC должен быть инсталлирован, например версия MyODBC-3.51.11-2-win.
9.1Подготовка соединения PostgreSql с бд в Access
Выбрать Пуск> Настройка> Панель управления> Администрирование> Источники данных (ODBC) (рисунок 8.1).
Рисунок 8.1 – Окно Администрирование
Создать пользовательский или системный DSN. Совет: Для индивидуального компьютера можно выбрать панель Пользовательский DSN или Системный DSN, а для компьютера в сети организации лучше выбрать Системный DSN, т.к. он доступен всем пользователям данного компьютера и других компьютеров сети (рисунок 8.2).
Рисунок 8.2 – Окно Администратор источников данных ODBC
Нажать кнопку Добавить и выбрать имя драйвера PostgreSQL (рисунок 8.3).
Рисунок 8.3 – Создание нового источника данных
Примечание. Предварительно требуется установить ODBC драйверы и их upgrate для Postgresql.
Получим окно создания коннектора, которое надлежит заполнить подобным образом (рисунок 8.4).
Рисунок 8.4 – Параметры подключения
Получен новый Системный DSN с именем Deanery_PstgrSQL (рисунок 8.5)
Рисунок 8.5 – Окно Администратор источников данных ODBC
После чего нажать OK.