Выбрать главу

dbl = D:\databases\Employee.fdb

Независимо от того, где установлен сервер - под Windows или POSIX - строка соединения для клиентов становится одинаковой:

hotchicken:dbl

Тем не менее это средство не является столь изящным, если вы хотите сделать строку соединения вашего приложения прозрачной как для соединений TCP/IP, так и NetBEUI. Нотация UNC для сервера под Windows для клиентов NetBEUI предполагает совместимость, однако если алиас базы данных идентичен, то серверная часть не является переносимой:

\\hotchicken\dbl в сравнении с:

hotchi cken:dbl

Управление доступом

Основное преимущество средства алиасов в том, что оно может быть использовано в комбинации с параметром DatabaseAccess = NONE из файла firebird.conf для ограничения доступа к файлам баз данных - доступ разрешен только к файлам, указанным в aliases.conf.

Алиасы баз данных появились в Firebird 1.5. Для их использования отредактируйте файл aliases.conf в корневом каталоге инсталляции Firebird, используя текстовый редактор, такой как Блокнот (в Windows) или V1 (Linux).

Структура файла aliases.conf

Инсталлированный файл aliases.conf выглядит приблизительно таким образом:

#

# List of known database aliases

# ---------------------------------------------

#

# Examples:

#

# dummy = c:\data\dummy.fdb

#

Как и во всех файлах конфигурации Firebird, символ # является маркером комментариев. Для конфигурирования алиаса просто удалите символ # и замените строку dummy на соответствующий путь к базе данных:

# fbdbl и aliases.conf находится на сервере Windows:

fbdbl = c:\Firebirdl5\sample\Employee.fdb

# fbdb2 и aliases.conf находится на сервере Linux

fbdb2 = /opt/databases/killergames.fdb

#

При каждом запросе на соединение, содержащем путь, заданный в формате алиаса, сервер обращается к файлу aliases.conf. Вы можете редактировать aliases.conf и когда сервер выполняется. Изменения не будут влиять на текущие соединения, но новые соединения будут использовать новые или измененные алиасы.

Соединение с использованием алиаса пути к базе данных

Для соединений TCP/IP, использующих предыдущий пример aliases.conf, измененная строка соединения в вашем приложении будет иметь следующий формат:

Имя_сервера:имя_алиаса

Например,

hotchicken:fbdb2

Для соединений Windows Named Pipes строка выглядит следующим образом:

\\hotchicken\fbdb2

Для локального соединения просто используйте собственный алиас.

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

Множество прекрасных графических инструментов - свободно распространяемых и коммерческих- доступны для администрирования баз данных Firebird. Информацию о подобных предложениях см. в приложении 5. Обновляемый каталог поддерживается на страницах Contributed Downloads на http://www.ibphoenix.com.

Firebird поставляется с набором инструментов командной строки для сервера и администрирования баз данных. Обычно они работают одинаково в Linux/UNIX и в командной строке MS-DOS. Помните, что в Linux/UNIX команды, параметры и переключатели являются чувствительными к регистру. В Windows - нет.

Интерактивный инструмент запросов isql упомянут в этой главе и полностью документируется в главе 37. Другие инструменты командной строки описываются в следующих разделах.

fbmgr/ibmgr

fbmgr/ibmgr является командой и интерфейсом командной строки для демона Суперсервера в Linux для запуска и останова Суперсервера Firebird в Linux. Скрипт командной строки fbmgr (ibmgr в версии 1.0.x) предоставляет интерфейс для выполняемого модуля сервера fbmgr.bin (ibmgr.bin в версии 1.0.x). Детальное описание представлено в этой главе.

instsvc.exe

Это интерфейс командной строки сервиса Суперсервера на платформах Windows NT для инсталляции, запуска и останова Суперсервера Firebird в Windows. Детальное описание представлено в этой главе.

gbak

Эта утилита предназначена для резервного копирования и восстановления баз данных. Поскольку она работает на уровне структур и форматов данных, gbak является единственной корректной утилитой для копирования. Она также обнаруживает разрушения базы данных, освобождает дисковое пространство, появившееся в результате удалений, разрешает незавершенные транзакции, позволяет разделять базы данных на несколько файлов. Она также используется для создания переносимой копии с целью восстановления вашей базы данных на другой аппаратной платформе или для обновления ODS (On-Disk Structure) вашей базы данных.

! ! !

ВНИМАНИЕ! Никогда не используйте утилиты копирования файлов типа tar/gzip, WinZip, Microsoft Backup, средства копирования файловой системы или утилиты сторонних разработчиков для копирования и переноса баз данных, если сервер работает или у вас нет твердой уверенности, что база данных не повреждена. Базы данных, которые переносятся как копии файлов, будут содержать неубранный мусор.

. ! .

Подробности использования gbak см. в главе 38.

gsec

Этот инструмент поддержки списка пользователей и их паролей является интерфейсом командной строки для базы данных security.fdb; он управляет записями пользователей на сервере Firebird. Подробности использования gsec см. в главе 34.

gfix

Это набор общих вспомогательных утилит для изменения свойств баз данных, устранения небольших повреждений базы данных, выполнения различных задач чистки и т.д. Утилита также предоставляет средство администратора для отключения конкретных баз данных до завершения работы сервера. Она может быть использована вместе с утилитой gbak для восстановления некоторых типов нарушений в базе данных (см. разд. "Ремонт базы данных" приложения 4).

Подробности использования gfix см. в главе 39.

gstat

Этот инструмент получения статистики собирает и отображает статистические сведения по индексам и данным базы данных. Подробную информацию об использовании gstat см. в разд. "Темы оптимизации" главы 18.

fb_lock_print

Эта утилита формирует статистические данные файла блокировок, который поддерживается в Firebird для управления последовательностью изменений базы данных несколькими транзакциями. Она может быть полезным инструментом анализа проблем взаимной блокировки.

Подробности использования fb_lock_print см. в главе 40.

Введение в isql

Утилита командной строки isql (Interactive SQL) объединяет инструменты и техники использования SQL для поддержки объектов базы данных, управления транзакциями, отображения метаданных и обработки скриптов определения базы данных. Интерфейс командной строки доступен на всех платформах. Настоящее краткое введение даст вам возможность начать работу по подключению к базе данных и созданию вашей первой базы данных.

Запуск isql

Есть несколько различных способов соединения с базой данных при использовании isql. Один способ- стартовать утилиту из командной строки в интерактивном режиме. Для начала в окне командной строки перейдите к каталогу /bin корневого каталога инсталляции Firebird, где инсталлирована программа isql, и запустите isql следующим образом.

Для сервера POSIX:

[chick@hotchicken]# ./isql <нажмите Return/Enter> Для сервера Windows:

C:\Program Files\Firebird\Firebird_1_5\bin>isql <нажмите Return/Entei>

Утилита выведет следующее сообщение:

Use CONNECT or CREATE DATABASE to specify a database (Используйте CONNECT или CREATE DATABASE для указания базы данных)

Использование isql

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