Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - Хелен Борри
Шрифт:
Интервал:
Закладка:
. ! .
* ExtemaiFiieAccess - заменяет параметр EXTERNAL_FILE_DIRECTORY, введенный в версии 1,0. Этот параметр обеспечивает три уровня безопасности для External Files (внешние файлы - текстовые файлы фиксированного формата, к которым возможен доступ, как и к таблицам базы данных). Если вы переносите базу данных, в которой определены внешние файлы таблиц, вам нужно установить этот параметр для версии 1.5, потому что он отключен по умолчанию. Конфигурация необязательная, тем не менее рекомендуется для версии 1.0.x.
* UDFAccess - предназначен для защиты местоположения кода внешних модулей. Он заменяет не только необязательный параметр версии 1.0.x externai_function_ directory, но также и форму представления значения. Firebird 1.5 инсталлируется с отключенным по умолчанию доступом к библиотекам внешних функций, в то время как большинство серверов до этого давали полный доступ.
* TempDirectories (TMP_DIRECTORY в версии 1.0.x)- конфигурирование этого параметра является одним из способов задания размещения временного пространства сортировки для сервера, указав местоположение на диске. Синтаксис Firebird 1.5 отличается от синтаксиса Firebird 1.0.x.
Другие полезные параметрыСледующие параметры могут быть полезными в некоторых аппаратных конфигурациях.
* cpuAffinityMask (CPU_AFFINITY в версии 1.0.x)- может быть использован для назначения процессоров, которые Суперсервер в Windows будет использовать на машинах SMP. Эта проблема известна как эффект "see-saw", когда операционная система постоянно переключает выполнение Суперсервера между процессорами на некоторых машинах SMP. Свойство CPU должно быть установлено для одного процессора, если вам встретилась такая проблема.
По умолчанию маска свойств устанавливается для использования первого процессора в массиве.
* LockMemSize- параметр специфичен для Классических серверов; он определяет количество байтов разделяемой памяти, которая отводится для таблицы памяти, используемой менеджером блокировки. Вам может понадобиться изменить это количество, если вы встретите в Классическом сервере ошибку "Lock manager is out of room" (Менеджеру блокировки не хватает памяти). В связи с этой проблемой см. также параметр LockHashsiots.
* sortMemBiocksize и sortMemOpperLimit - эти два параметра были добавлены в версию 1.5, чтобы позволить устанавливать и ограничивать объем оперативной памяти, которую использует сервер при внутренней сортировке. Для Классического сервера этот размер по умолчанию слишком велик, чтобы поддерживать достаточно большое количество соединений.
* DummyPacketinterval(DUMMY_PACKET_INTERVAL в 1.0.x)- параметр - пережиток 16-битовых систем; он может стать причиной проблем в 32-битовых Windows. Это был старый параметр времени ожидания InterBase, предполагалось устанавливать количество секунд (целое число), в течение которых сервер должен был ожидать от клиента сообщений, после чего сервер должен был посылать пустой пакет для получения подтверждения. По умолчанию он установлен в 0 для Firebird 1.5(неактивен) и в 60 для Firebird 1.0.x. Он должен быть неактивным (установленным в 0) для всех систем Windows. Также настоятельно рекомендуется отключать его для других операционных систем[5].
* RemoteBindAddress - по умолчанию могут соединиться клиенты из любой сети, из которой сервер принимает трафик. Этот параметр позволяет связать сервис Firebird с исходными запросами через один IP-адрес (например, сетевая карта) и отклонять запросы соединения от любых других сетевых интерфейсов. Это помогает решать проблемы некоторых сетей, где сервер является хостом для нескольких подсетей. Не поддерживается в версии 1.0.x.
* compieteBooieanEvaiuation - параметр может быть использован для преобразования логики вычисления логических значений в виде сокращенного вычисления булевских выражений, используемой в Firebird 1.5 и выше, в полное вычисление булевских выражений, используемое в Firebird 1.0.x.
* oldparameterordering- восстанавливает старый способ обработки порядка параметров для запросов с подзапросами - сначала параметры подзапроса, затем параметры внешнего запроса. Firebird 1.5 по умолчанию обрабатывает параметры в точном порядке их следования, что может быть несовместимо со старыми версиями различных компонентов доступа, которые ориентировались на поведение InterBase/Firebird 1.0.
Пора дальшеТеперь нам больше ничего не осталось, кроме как соединиться с базой данных и начать выполнять серьезные эксперименты. Глава 4, последняя в нашем "учебном лагере", даст вам возможность соединиться с примером базы данных или с любой другой совместимой с Firebird базой данных, которая может находиться на вашем сервере.
ГЛАВА 4. Основные операции.
Теперь у вас есть установленный сервер Firebird, что дальше? Эта глава быстро обучит вас основам Firebird.
Запуск Firebird на Linux/UNIX
Суперсервер
Каталог инсталляции по умолчанию /opt/firebird. В каталоге /bin находится в двоичном формате сервер Firebird fbserver (ibserver для Firebird 1.0.x), который запускается как процесс-демон в Linux/UNIX. Он запускается автоматически после инсталляции посредством RPM или скрипта и каждый раз при перезагрузке сервера запуском скрипта демона firebird, находящегося в /etc/rc.d/init.d (или /etc/init.d в SuSE), который вызывает утилиту командной строки Firebird Manager - fbmgr.bin. Firebird Manager может быть использована из командной строки для запуска и остановки процесса вручную.
Запуск сервераЕсли вы по разным причинам запустили Firebird вручную, соединитесь с ним как пользователь root или firebird. Запомните, какую учетную запись вы использовали при запуске fbserver, потому что все созданные объекты будут принадлежать пользователю с этой учетной записью. Если позже другой пользователь запустит процесс с использованием другой учетной записи пользователя, то эти объекты будут ему недоступны.
Настоятельно рекомендуется создать системного пользователя с именем firebird и запускать сервер Firebird с этой учетной записью.
Для запуска процесса выполните из командной строки следующую команду:
./fbmgr.bin -start -forever
Для версий Firebird, предшествующих 1.5, выполните:
./ibmgr -start -forever
Переключатель -forever означает, что Guardian будет управлять запуском. При использовании Guardian процесс сервера будет заново запущен, если он по каким-либо причинам завершится аварийно.
Для запуска сервера без использования Guardian введите:
./fbmgr.bin -start -once
Для версий Firebird, предшествующих 1.5, выполните:
./ibmgr -start -once
Переключатель -once означает, что если сервер будет аварийно завершен, перезапустить его можно будет только вручную.
Остановка сервераВ целях безопасности убедитесь, по возможности, что все соединения с базой данных отключены, прежде чем вы остановите сервер.
Переключатель -shut отменяет все текущие транзакции и прекращает работу сервера немедленно.
Вам не требуется быть подключенным как пользователь root для остановки сервера Firebird fbmgr, но вы должны иметь полномочия пользователя SYSDBA. Выполните следующую команду.
./fbmgr.bin -shut -password <пароль SYSDBA>
Используйте команду для версий, предшествующих 1.5:
./ibmgr.bin -shut -password <пароль SYSDBA>
Управляемое завершение работыНа этой платформе Firebird не имеет утилиты для подсчета количества пользовательских соединений с базой данных для Суперсервера. Если вам нужно предоставить клиентам интервал времени для завершения работы и корректного отключения, завершайте работу индивидуальных баз данных с использованием инструмента gfix с переключателем -shut и одним из доступных аргументов для управления отключением. (См. разд. "Останов базы данных" в главе 39.)
Другие команды fbmgrСинтаксис
Из командной строки:
./fbmgr.bin -команда [-режим [параметр] ...]
Альтернативно вы можете стартовать интерактивную сессию fbmgr или ibmgr из командной строки (например, перейдя в режим с подсказкой). Наберите:
./fbmgr <нажмите Return/Enter>
для того чтобы перейти к следующей подсказке:
FBMGR>
В режиме с подсказкой синтаксис команд:
FBMGR> команда [-режим [параметр] ...]
Например, вы можете запустить сервер одним из следующих способов. Из командной строки:
./fbmgr -start -password пароль В режиме с подсказкой:
FBMGR> start -password пароль
Переключатели fbmgrВ табл. 4.1 представлен список переключателей fbmgr и ibmgr, доступных из командной строки и из режима с подсказкой.
Таблица 4.1. Переключатели fbmgr/ibmgr
Переключатель
Аргумент
Другие переключатели
Описание
-start
-forever | once
-user, -password
Запускает fbserver, если он не был еще запущен
-shut
-user, -password
Останавливает fbserver
-show
Показывает хост и пользователя
-user
Имя пользователя
SYSDBA; используется с переключателями -start и -stop, если пользователь системы не является root или эквивалентным ему
-password