Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книга по БД(Вальке А.А.).doc
Скачиваний:
18
Добавлен:
29.04.2019
Размер:
4.5 Mб
Скачать

6.4. Запуск и останов сервера

У сервера базы данных Informix Dynamic Server существует несколько режимов работы. Можно выделить два основных режима работы – рабочее (on‑line) и полный останов (off‑line).

Запуск сервера в работу (перевод сервера в рабочий режим из выключенного состояния)производится командой

oninit

Останов (выключение) работающего сервера производится командой:

onmode –ky

Для того, чтобы узнать в каком режиме в данный момент времени находится сервер, можно выполнить команду:

onstat -c

Если указанная команда выдает сообщение вида

shared memory not initialized for INFORMIXSERVER 'tcp_ods'

то это означает, что сервер по имени ‘tcp_ods’ остановлен (выключен), а если выдача имеет вид:

INFORMIX-OnLine Version 7.20.UC2 -- On-Line -- Up 16 days 00:54:23 -- 8936 Kbytes

то такая выдача сообщает, что сервер включен (указан режим On-Line).

Кроме двух основных режимов (рабочее и полный останов) сервера Informix Dynamic Server существуют еще и несколько промежуточных режимов. Некоторые из них являются системными, то есть перевод сервера в эти режимы производится автоматически. Кроме этого, существует еще и специальный, однопользовательский административный режим, вход и выход из которого производится по команде администратора.

Очень часто обеспечение работы сервера баз данных является основным назначением некоторого компьютера. Поэтому целесообразно автоматически запускать сервер базы данных в работу, как только производится запуск компьютера. Аналогично, при выключении ОС желательно обеспечить автоматический останов сервера базы данных. В ОС Unix подобные возможности реализуются с помощью редактирования специальных файлов, находящихся в директории /etc/rc*.

Если в качестве серверной платформы вы используете MS Windows NT/95, или управляете сервером Informix DS с помощью специально выделенного компьютера, на котором установлен Informix Enterprise Command Center, то куправлять запуском и остановкой сервера можно и из графического режима:

Для обеспечения автоматического запуска и остановки сервера БД Informix DS в случае использования MS Windows NT следует воспользоваться встроенными в Windows NT возможностями автоматического запуска служб. Для этого надо открыть Control Panel (Панель управления) и выбрать управление службами (Services). Далее, для всех служб, относящихся к данному экземпляру сервера (их две, и они легко видны по названию) следует в диалоге StartUp установить опцию «Automatic»:

6.5. Работа с русским языком

Informix Dynamic Server, как другие продукты фирмы Informix, поддерживают работу с русским языком. Поддержка русского языка осуществляется на основе стандарта GLS (Global Language Support – поддержка национального языка). Суть этой поддержки в следующем – существуют специальные файлы, в которых описываются набор допустимых символов, порядок сортировки букв в данном алфавите, способы перекодировки из одной кодовой таблицы в другую (если для данного языка есть несколько кодовых страниц). На основе этой информации сервер БД определяет

  • является ли тот или иной символ допустимым для данного языка;

  • как определять какое слово «раньше», если производится сортировка по полям с русскими символами;

  • как преобразовывать символ, если клиент работает с одной кодовой таблицей, а данные в БД находятся в другой кодовой таблице.

Как известно, в отечественной практике используется несколько кодовых страниц для работы с русским языком. В стандартной поставке имеются следующие локали (локаль – это описание конкретной кодовой страницы):

  • cp866 – кодировка, используемая для MS DOS программ (соответствует так называемой «альтернативной» кодировке;

  • 1251 – кодировка, применяемая при работе с русским языком в MS Windows;

  • ISO8859-5 – кодировка для русского языка, определенная Международной Организацией по Стандартам, обычно используется в современных Unix-системах;

  • КОИ-8 – самая старая кодировка для символов русского языка, используется в некоторых Unix-системах.

Если Вы применяете кодировку, отличную от перечисленных выше, то в службе технической поддержки Informix специально для вас могут скомпилировать файл с поддержкой конкретной локали.

В сервер баз данных Informix Dynamic Server введены два новых специальных типа данных, максимально полно обеспечивающих работу с национальными языками – это типы NCHAR и NVARCHAR. Эти типы используются вместо типов CHAR и VARCHAR соответсвенно. То есть, при создании таблицы с текстовыми полями с русскими символами следует использовать типы NCHAR и NVARCHAR. Использование этих модифицированных типов данных прозрачно для приложений.

Для корректной работы с русскими данными в сервере БД Informix следует выполнить следующие действия. Первое – надо создать базу данных с поддержкой русского языка, то есть с конкретной русской кодировкой. Второе, для обеспечения доступа к этой базе данных, на клиенте надо корректно прописать кодировку клиентской программы и кодировку в базе данных.

Если вы работаете в алфавитно-цифровом режиме, то для этого используются переменные окружения DB_LOCALE и CLIENT_LOCALE. Первая отвечает за кодировку в базе данных, а вторая – за кодировку на клиенте. Естественно, значения этих переменных могут различаться. Возможные значения данных переменных, соответсвенно: ru_ru.866, ru_ru.1251, ru_ru.8859-5 и ru_ru.koi-8. Если вы, например, хотите запустить некоторое терминальное приложение my_application, ваш терминал работает в кодировке КОИ-8, а данные в БД лежат в кодировке ISO, то надо выполнить следующие команды:

DB_LOCALE=ru_ru.8859-5; export DB_LOCALE CLIENT_LOCALE=ru_ru.koi-8; export CLIENT_LOCALE my_application

Переменные DB_LOCALE и CLIENT_LOCALE должны быть установлены и тогда, когда вы только создаете базу данных. В этом случае оператор CREATE DATABASE, явно или неявно выполненный из данной сессии, создаст БД с кодировкой, которая задана переменной DB_LOCALE.

Если вы используете графическое окружение, например MS Windows, то переменные DB_LOCALE и CLIENT_LOCALE следует установить в окне настроек:

С одной и той же базой данных, использующей вполне конкретную кодировку для хранения русских символов, одновременно могут работать несколько клиентов с разной кодировкой. Для каждого клиента следует установить свое значение переменной CLIENT_LOCALE и сервер БД будет автоматически проводить преобразование символов для каждого клиента.

Для того, чтобы узнать, какие кодовые страницы поддерживаются в конкретном сервере Informix, следует запустить команду glfiles –lc, которая сформирует в текущей директории текстовый файл, содержащий все возможные кодировки.