Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Название:Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2006
- Город:Санкт-Петербург
- ISBN:5-94157-609-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ краткое содержание
Рассмотрены вопросы, необходимые разработчику для создания клиент-серверных приложений с использованием СУБД Firebird, явившейся развитием СУБД Borland Interbase 6. Содержится обзор концепций и моделей архитектуры клиент/сервер, а также практические рекомендации по работе с клиентскими библиотеками Firebird. Детально описаны особенности типов данных SQL, язык манипулирования данными (Data Manipulation Language, DML), а также синтаксис и операторы языка определения данных ( Data Definition Language, DDL). Большое внимание уделено описанию транзакций и приведены советы по их использованию при разработке приложений. Описано программирование на стороне клиента и сервера написание триггеров и хранимых процедур, создание и использование событий базы данных, обработка ошибок в коде на сервере и многое другое. Материал сопровождается многочисленными примерами, советами и практическими рекомендациями.
Для разработчиков баз данных
Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Для версий 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.bin -команда [-режим [параметр] ...]
Альтернативно вы можете стартовать интерактивную сессию fbmgr или ibmgr из командной строки (например, перейдя в режим с подсказкой). Наберите:
./fbmgr <���нажмите Return/Enter>
для того чтобы перейти к следующей подсказке:
FBMGR>
В режиме с подсказкой синтаксис команд:
FBMGR> команда [-режим [параметр] ...]
Например, вы можете запустить сервер одним из следующих способов. Из командной строки:
./fbmgr -start -password пароль В режиме с подсказкой:
FBMGR> start -password пароль
В табл. 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 |
Пароль SYSDBA |
Используется с переключателями -start и -stop, если пользователь системы не является root или эквивалентным ему |
|
-help |
Выводит короткий текст помощи fbmgr |
||
-quit |
Используется для выхода из режима с подсказками |
Классический сервер
Классический сервер Firebird использует процессы xinetd или inetd для обработки поступающих запросов. (Применяемый процесс зависит от версии Linux.) Нет необходимости явно запускать сервер. Процесс xinetd или inetd запускается автоматически; когда он получает запрос от клиента Firebird на соединение, он порождает копию процесса fbinetserver для этого клиента.
Если Классический сервер Firebird был установлен инсталлятором, использующим скрипты или RPM, то файл конфигурации запуска для fb inet server с именем firebird должен быть добавлен в сервисы, о которых знает [x]inetd. В большинстве дистрибутивов Linux этот файл размещается в каталоге /etc/xinetd.d. Чтобы [x]inetd "слушал" запросы на соединение от клиентов для вашего Классического сервера Firebird, скрипт firebird должен находиться в том же каталоге, где стартует процесс [x]inetd.
! ! !
СОВЕТ. Если [x]inetd запущен, и ни одного запроса на соединение клиента не последовало вовсе, проверьте, действительно ли скрипт firebird находится там, где он должен быть. Если нет, то вы можете выделить скрипт firebird.xinetd из файлового комплекта инсталляции, скопировать в нужный каталог и переименовать в firebird. Чтобы [x]inetd "видел" сервис Firebird, остановите и заново запустите [x]inetd.
. ! .
Демон [x]inetd сам является сервисом, который по запросу управляет другими сервисами, например Классическим демоном Firebird. Остановка [x]inetd приведет к тому, что все процессы, которыми он управляет, будут также остановлены. Его запуск или повторный запуск приведет к возобновлению прослушивания запросов и запуску управляемых им процессов.
Если все сервисы в каталоге ../rc.d являются безопасными для остановки, соединитесь как пользователь root и остановите [x]inetd следующей командой из командной строки:
ft service xinetd stop или командой:
# service inetd stop
Если [x]inetd не был сконфигурирован для автоматического перезапуска после остановки, запустите его командой [6] По умолчанию [x]inetd в своем файле конфигурации имеет ограничение на число стартуемых экземпляров конктретного сервиса. Это может проявляться как ошибка при подключении очередного пользователя (напрмер, невозможно подключить более 60 пользователей). Отредактируйте файл конфигурации [x]inetd и установите желаемый лимит количества сервисов fb_inet_server, т.е. количества подключний к Классическому серверу FireBird. Прим. науч. ред.
:
# service xinetd restart
Если вам нужно остановить вышедший из-под контроля процесс Firebird в Классическом сервере, вы можете это сделать. Найдите ошибочный процесс, выполнив команду top из командной строки. Эта утилита отображает список наиболее интенсивно использующих CPU процессов, постоянно обновляя этот список. Любой экземпляр fb inet server с необычным использованием ресурсов должен появиться в этом списке.
Выберите идентификатор (process ID, PID) ошибочного процесса fb_inet_server из самой левой колонки в списке. Вы можете использовать этот PID в команде kill для посылки сигнала ошибочному процессу. Например, для PID 12345 вы можете попытаться остановить процесс, выдав:
# kill 12345
Если процесс остается видимым в списке утилиты top, вы можете попытаться форсировать остановку процесса:
# kill -9 12345
! ! !
ВНИМАНИЕ! Проявляйте величайшую осторожность при использовании команды kill, особенно если вы подключились как пользователь root.
. ! .
Запуск сервера Firebird в Windows
Суперсервер
Выполняемая программа Суперсервера Firebird - fbserver.exe. Хотя он может запускаться и как самостоятельная программа, он также может находиться под управлением Guardian - fbguard.exe. Guardian обеспечивает возможность эмулировать автоматический рестарт сервисов в Windows и POSIX, запущенных с переключателем -forever. Если приложение fbserver.exe аварийно завершается, Guardian пытается заново его запустить. Рекомендуется использовать Guardian на хостах, работающих на платформах Windows 95/98 и ME, а также NT/XP, если сервер выполняется как приложение.
Читать дальшеИнтервал:
Закладка: