Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
Шрифт:
* нет ошибок в имени хоста в записи файла;
* сетевой кабель подключен, провод и контакты не повреждены и не ржавые;
* конфигурация сети позволяет направлять сетевой трафик между клиентом и сервером. Ограничения подсети или системы сетевой защиты могут препятствовать серверу в получении данных от клиента.
• Ограничения подсети: TCP/IP может быть сконфигурирован для ограничения трафика между подсетями. Если ваша клиентская машина является частью сложной сети или подсети, уточните у сетевого администратора, имеет ли она неограниченный доступ к серверу.
! ! !
ВНИМАНИЕ! WNet не позволяет направлять сетевой трафик между подсетями.
. ! .
• Система сетевой защиты (firewall): ваша проверка соединения может дать ошибку, если сервер базы данных находится под программной или аппаратной
Проблемы с событиями
Несмотря на то, что каждый клиент соединяется с сервером через один канал, события Firebird - механизм обратной связи, который позволяет передавать сообщения о событиях назад клиентам с помощью триггеров и хранимых процедур, - используют произвольные доступные порты. В статических замкнутых сетях без внутренних систем сетевой защиты это обычно не вызывает проблем. В сетях, где существует множество подсетей, динамическая IP-адресация и строго сконфигурированная система сетевой защиты, передача событий может закончиться неудачей.
В Firebird 1.0.x ваш сетевой администратор должен установить некий способ, чтобы гарантировать наличие доступного порта, который всегда свободен, открыт и является статическим. Проблема может быть решена тем или иным образом в большинстве сетей.
Firebird 1.5 упрощает дело. Он делает возможным явно задавать IP-адрес в сети для трафика событий. Используйте параметр RemoteAuxPort в файле firebird.conf с целью статической установки IP-адреса для интерфейса (карта, маршрутизатор, шлюз и т.д.), который будет доступен для направления событий.
Более подробно о событиях Firebird см. главу 32.
Другие сетевые проблемы
Если дела идут плохо, вы можете найти немало советов в приложении 2.
Куда дальше? Если у вас все в порядке с установками сети, и вам не терпится идти дальше, переходите прямо к главе 4 для изучения "основ", которые помогут вам соединиться с базой данных. Если же вы инсталлировали Firebird в мультипроцессорной системе, или вы подозреваете, что некоторые элементы конфигурации вашей машины могут вызвать проблемы, читайте дальше. Несмотря на то, что редко бывает нужным изменять конфигурацию Firebird для основных операций, в главе 3 описывается несколько опций конфигурации, которые могут помочь вам избавиться от головной боли.
ГЛАВА 3. Конфигурирование Firebird.
После инсталляции Firebird, как правило, готов к запуску. Конфигурирование не требуется или минимально. Если инсталляция и настройка сети прошли по плану, нет необходимости что-нибудь делать для нового пользователя, нужно лишь продолжать узнавать возможности Firebird и экспериментировать с программным обеспечением. Вы можете просто пропустить эту главу и перейти к следующей.
Тем не менее, это заявление может оказаться не совсем верным для некоторых платформ, или когда определенная операционная система заблокировала одну или две функции автоматического конфигурирования инсталляционного скрипта или программы. Данная глава будет интересна новым пользователям при решении некоторых из этих проблем.
В первом разделе главы указано, как конфигурировать переменные окружения и ресурсы файловой системы для использования Firebird. Здесь описывается проверка параметров конфигурации сервера, как их модифицировать в случае особого использования и требований совместимости.
Конфигурация на уровне базы данных
Эта глава посвящена конфигурации на уровне сервера. Один сервер Firebird может работать с несколькими базами данных одновременно. Каждая база данных может быть сконфигурирована таким образом, чтобы соответствовать предъявляемым к ней требованиям. Конфигурирование на уровне базы данных см. в главах 15 и 39.
Переменные окружения
Переменные окружения - глобальные установки системы, которые используются при первоначальной загрузке операционной системы. В Windows, Linux и в большинстве систем UNIX сервер Firebird распознает и использует некоторые переменные окружения, если они установлены. Процессы fbserver (архитектура Суперсервера) и fb inet server (архитектура Классического сервера) не распознают установок, которые ссылаются на сетевые ресурсы (диски и файловые системы), не управляемые физически серверной машиной.
Где устанавливаются переменные окружения
Тип
Таблица 3.1. Установки переменных окружения для Windows
Версия Windows | Тип переменной | Описание | Наличие |
Windows 95/98 | He применяется | Используйте Блокнот и установите переменные окружения в autoexec.bat или config.sys. Формат установки: SET <имя переменному = значение переменному. Пример: SET FIREBIRD=C:\PROGRAM\FIREBIRD. Для просмотра всех текущих установок переменных окружения наберите SET в командной строке | Нет |
Windows NT/2000/XP | Переменные пользователя. Делает переменные доступными для приложений, запускаемых конкретным пользователем, если этот пользователь подключен | Используется для ограничения видимости переменных определенным пользователям. Диалоговое окно Свойства системы (System Properties), доступное через апплет Система (System applet) на Панели управления или через контекстное меню, появляющееся при щелчке правой кнопкой мыши на объекте Мой Компьютер и выборе элемента Свойства | Да |
Windows NT | – //- | Выберите Расширенное окружение | Новое (Advanced Environment | New) | |
Windows 2000/XP | – //- | Выберите Расширенное окружение | Переменные окружения | Новое (Advanced Environment | Variables | New) | |
Windows NT/2000/XP | Системные переменные. Доступны для всей системы (все сервисы, все пользователи). Команды SET записаны в командной строке. Переменные доступны только процессам, запущенным из командной строки | Используйте, если Firebird запущен как сервис. Выберите Расширенное окружение | Переменные окружения | Новое (Advanced Environment | Variables | New) или Редактировать (Edit), если доступно | Да |
– //- | – //- | Полезно для установки переменной окружения для временного использования (например, ISC_USERH ISC_PASSWORD для упрощения доступа из утилит командной строки при выполнении задач администратора). Используйте SET <имя_переменной> = <значение переменной> для установки значения переменной; используйте SET <имя_переменной> =, чтобы установить пустое значение | Нет |
POSIX
В Linux и UNIX самый простой путь установления переменных окружения - добавить их определения в общесистемный профиль значений по умолчанию.
Пользователь root также может:
* выдать команды setenv из командной строки wu командного скрипта;
* для временного использования установить и экспортировать переменную из командной строки, например, export ISC_USER=SYSDBA.
ISC_USER и ISC_PASSWORD
Эффект этой опасной пары переменных окружения - дать доступ с правами пользователя SYSDBA к серверу Firebird и его базам данных через утилиты командной строки или клиентские приложения любому, кто может соединиться с хост-машиной. Они удобны для разработчиков.
Если вы не указываете имя пользователя и пароль при локальном соединении с базой данных, или когда вы запускаете утилиты командной строки, такие как gbak, gstat или gfix, Firebird проверяет, установлены ли переменные окружения ISC_USER и ISC PASSWORD. Если установлены, Firebird позволяет вам соединиться без указания пароля. Никогда не оставляйте эти переменные установленными на сервере, который содержит важные базы данных, если помещение, где располагается сервер, не является физически хорошо защищенным!