Лабораторная работа N 1. Изучение технических характеристик и состав пакета СУБД InterBase 6.0

Постановка задачи

Теоретические предпосылки

Контрольные вопросы

Постановка задачи

Цель работы: изучить технические возможности и состав пакета InterBase 6.0.

Задание:

а) определить требования, предъявляемые СУБД InterBase 6.0 к операционной системе, ЭВМ;

б) используя документацию пакета, изучить технические возможности СУБД InterBase;

в) установить пакет InterBase в режиме клиент/сервер;

г) осуществить настройку сервера, научиться запускать сервер, отключать сервер;

д) изучить назначение утилит пакета InterBase;

е) научиться работать с учетными записями пользователей на сервере БД (создавать, удалять, изменять данные о пользователях сервера);

ж) изучить механизмы защиты данных, поддерживаемые сервером InterBase 6.0;

и) оформить и сдать отчет по лабораторной работе N 1.

Теоретические предпосылки

InterBase представляет собой полнофункциональный SQL-сервер. Сервер баз данных - это программный процесс, который выполняется на узле сети, где расположен главный компьютер и физически расположена сама база данных

Отличительными качествами InterBase являются:

-высокая производительность и надежность сервера при минимальных требованиях к техническим средствам;

-поддержка стандарта SQL-92, обеспечивающая переносимость приложений;

-достаточно низкая стоимость продукта;

-простота установки и администрирования сервера баз данных.

Перечисленное выше делает InterBase удобным средством для реализации корпоративных систем среднего и малого масштаба (до 100 пользователей).

Подробную информацию об этой СУБД можно посмотреть на сайте http://www.ibase.ru.

InterBase Server работает под различными платформами, включающими Microsoft Windows NT, Windows 95 и различные версии UNIX.

Таблица 1 - Требования InterBase к ресурсам сервера

Память Минимум 16 Мб, рекомендовано 64 Мб (для сервера)
Процессор/Тип машины Минимум - 486DX2 с частотой 66МГц; Pentium 100МГц и далее (для многоклиентских серверов)
Компиляторы (для написания клиентских программ) Microsoft Visual C++ 4.2 или Borland C++ 5.0, C++ Builder, Delphi

Ключевые функции InterBase Server представлены в таблице 2.

Таблица 2 - Основные функции InterBase

Функция Описание
Поддержка сетевых протоколов На всех платформах InterBase поддерживает TCP/IP; для Windows NT-каналы NetBEUI; для NetWar - IPX/SPX
Соответствие минимальной конфигурации SQL-92 ANSI стандарт SQL доступен через Interactive SQL tool или клиентские приложения
Доступ к базам данных Одно приложение может обращаться к нескольким базам данных одновременно
Минимальный уровень блокировки строк Сервер блокирует только те записи, которые клиент модифицирует, вместо блокировки полной страницы базы данных
BLOB-данные и фильтры BLOB Динамически изменяемый размер типа данных позволяет хранить неформатированные данные, такие как графика и текст
Декларативная ссылочная целостность Автоматическая поддержка логических связей между таблицами по внешним (FOREIGN) и первичным (PRIMARY) ключам
Хранимые процедуры Программы, хранимые элементы в базе данных, для расширения возможностей запросов поиска и изменения данных
Триггеры Программы, которые запускаются, когда в связанных с ними таблицах добавляются, модифицируются или удаляются данные
Индикация событий Выдача сообщений приложению от базы данных. Дает возможность приложениям получить асинхронное уведомление об изменениях в базе данных
Обновляемые представления Представления, виртуальные (таблицы), могут отражать изменения данных сразу, как только изменения происходят

InterBase подчиняется правилам стандарта SQL 92. Это обеспечивает объявление целостности ссылок на уровне связи с каскадированием операторов, обновляемость представлений и внешние соединения. InterBase Server предоставляет библиотеки, которые поддерживают протекание встроенных SQL клиентских приложений. На всех InterBase платформах клиентские приложения могут быть написаны с использованием InterBase API, библиотекой функций, с которых посылается запрос для работы с БД на сервер.

InterBase также поддерживает особенности расширенного SQL, некоторые из них представлены в расширении SQL стандарта SQL3 (хранимые процедуры, триггеры и др).

InterBase разрешает одновременное обращение многих клиентских приложений к одной БД одновременно. Клиентское приложение может также обращаться к нескольким БД одновременно.

Таблица 3 - Спецификации Interbase

Максимальное число клиентов, подсоединенных к одному серверу Это число определяется комбинацией таких факторов, как производительность ОС, аппаратными ограничениями и потребностями отдельного клиента на сервере. Удобная работа с Interbase Server может быть предоставлена 150 клиентам. Однако, это не гарантируется. Поскольку некоторые ОС могут не поддерживать доступ 150 сетевых соединений.
Максимальный размер БД Максимальный размер одного файла составляет 2 Гб для Windows 95, 4 Гб - Windows NT, Unix. Размер также определяется возможностям ОС.
Максимальный размер открытых одновременно БД Без ограничений, определяется системными ресурсами.
Максимальное количество таблиц в БД 216 (65 356), т.к. таблицы нумеруются 16-битовым целочисленным представлением.
Максимальное количество столбцов (атрибутов) в таблице 232, т.к. столбцы нумеруются целочисленным 32-битовым представлением

Инсталляция пакета InterBase

В отличие от большинства SQL-серверов, требующих целых подразделений для настройки и обслуживания, InterBase обеспечивает не только высокую производительность использующих его систем, но и простоту их сопровождения.

Архитектура InterBase эффективно использует ресурсы системы. Для установки достаточно 10 Мбайт на жестком диске, большую часть занимают справочные файлы и примеры.

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

InterBase динамически настраивается на количество дисковой и оперативной памяти или на количество работающих пользователей, поэтому нет необходимости настраивать сервер для получения максимальной производительности.

Подробные указания по инсталляции пакета InterBase 6.0 можно получить в документации Operations Guide, поставляемой вместе с дистрибутивом.

Организация сервера

После инсталляции пакета InterBase-сервер будет запускаться автоматически при каждой загрузке операционной системы. Это не всегда удобно, поэтому параметры запуска сервера могут быть изменены при помощи утилиты InterBase Server Manager (рисунок 1).

Рисунок 1 - Окно программы InterBase Server Manager

В данном окне устанавливаются параметры запуска InterBase-сервера.

Startup Mode.

Automatic. Автоматический запуск сервера вместе с загрузкой операционной системы.

Manual. Запуск InterBase-сервера вручную (bin/ibserver.exe), либо с использованием панели меню и программы InterBase Server Manager.

Запуск / завершение работы с сервером

Текущий режим работы сервера - Running / Stopped - можно просмотреть с помощью команды InterBase Server Manager. Запуск / Останов сервера осуществляется соответствующей кнопокй Stop / Start. На рисунке 1 видно, что сервер активен (Running).

Конфигурация сервера

Для работы с сервером используется программа IB Сonsole (рисунок 2).

Рисунок 2 - Окно программы IB Console

По умолчанию локальный сервер, т.е. тот сервер, который установлен на той же машине, с которой Вы пытаетесь подключиться, неактивен. Чтобы подключиться к нему, можно вызвать команду меню Server -> Login или дважды щелкнуть на названии сервера (Local Server) левой кнопкой мыши. Система спросит, запускать ей или нет сервер, если выбрать кнопку "Да" появится окно аутентификации (рисунок 3).

Рисунок 3 - Подключение к серверу

Следует запомнить, если вы подключаетесь к серверу первый раз после установки по умолчанию параметры доступа следующие:

Login: sysdba

Password: masterkey

Завершение работы с сервером

Удобнее всего воспользоваться меню Server -> Logout.

Работа с удаленным сервером

InterBase обеспечивает доступ по TCP/IP протоколу для любой комбинации клиентских и серверных платформ. Дополнительно, InterBase обеспечивает NetBEUI протокол для NT серверов и Windows клиентов, а также в режиме работы локального сервера.

Безопасность баз данных

InterBase обеспечивает несколько методов безопасности. Безопасность InterBase возложена на центральную базу данных для каждого сервера (isc4.gdb). Эта база данных содержит список легитимных пользователей, имеющих право подключаться к данному серверу и выполнять на сервере определенные операции. Также она содержит зашифрованный пароль пользователя. Имя и пароль пользователя позволяют подключаться к любой базе данных на данном сервере.

Имя пользователя (login) не чувствительно к регистру, не может содержать русских букв, а также не должно превышать размер более 31 символа. В системе не могут присутствовать пользователи с одинаковым логином. Пароль - набор символов, не содержащий русских букв. Пароль пользователя чувствителен к регистру и учитывает первые 8 введенных символов (остальные символы игнорируются).

Каждый пользователь должен ввести свое имя и пароль при подключении к серверу. Пароль шифруется перед передачей по сети. Имя пользователя и пароль сверяются с записями в центральной базе данных. Если найдется соответствующая запись, то устанавливается подключение к серверу.

Администратор сервера баз данных

Любой InterBase сервер имеет пользователя SYSDBA, который считается администратором сервера баз данных и по умолчанию имеет пароль "masterkey".

Непосредственно после установки SYSDBA является единственным авторизованным пользователем системы. SYSDBA имеет право изменять центральную базу данных, добавляя в нее новых пользователей, удаляя записи ненужных или редактируя данные пользователей. Работа с пользователями осуществляется с использованием утилиты IB Console.

Правом на создание базы данных обладают только зарегистрированные на сервере пользователи. Для работы с учетными записями пользователей сервера необходимо вызвать команду меню Server -> User Security. С помощью этой процедуры (рисунок 4) можно:

-завести новую учетную запись (кнопка New);

-изменить данные уже зарегистрированных пользователей.

Рисунок 4 - Подключение к серверу

Документация

Вместе с основными утилитами в пакет InterBase включается документация, которая содержит следующие файлы:

Operations Guide - документация, касающаяся установки, назначения и использования основных компонентов пакета, таких как Server Manager, InterBase Windows ISQL, а также консольных версий программ для диагностики и управления сервером БД. Содержит описание методов администрирования как баз данных, так и сервера баз данных.

Data Definition Guide - документация по использованию команд языка описания данных. Приводится полный синтаксис и подробное описание команд создания, изменения и удаления объектов базы данных, например, доменов, таблиц, первичных ключей, индексов и т.д.

Language Reference - содержит сведения об основных командах языка SQL, приводится синтаксис и примеры использования таких операторов, команд и функций, как select, create, connect, commit, drop, grant, max, count, gen_id, if...then, и т.д.

Programmer's Guide - описывает, как разработать свое приложение, используя команды языка SQL. Содержит конкретные примеры и советы по использованию таких операций, как конкатенация строк, группировка, порядок сортировки, конструирование вложенных запросов выбора/вставки/изменения данных, использование хранимых процедур и т.д.

API Guide - описывает использование SQL в приложениях пользователя, создание функций, определяемых пользователем (UDF), а также описание команд на уровне API.

Контрольные вопросы

1. Что понимается под сервером баз данных. Какие достоинства сервера баз данных InterBase 6.0 Вы могли бы выделить?

2. Какие требованиям к аппаратно-программным ресурсам компьютера предъявляет сервер баз данных InterBase 6.0?

3. Какие в настоящее время существуют дистрибутивы сервера InterBase? Что Вы можете рассказать о "клонах" Interbase - системах Firebird и Yaffil? Как все эти системы взаимосвязаны между собой?

4. Под какие платформы разработаны дистрибутивы Interbase?

5. Какие сетевые протоколы поддерживает сервер Interbase?

6. Какое максимальное количество пользователей может поддерживать сервер Interbase?

7. Какие механизмы защиты данных используются в Interbase?

8. Какие пользователи могут создавать и изменять учетные записи других пользователей?

9. Каким образом хранится информация о пользователях сервера Interbase?

10. Перечислите основные утилиты пакета Interbase 6.0, каково их назначение?