DeepEdit!

Программирование баз данных на Oracle, техническая документация, литература, статьи и публикации

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта

Конфигурирование менеджера соединений Oracle

Решив использовать в своей системе один или несколько менеджеров соединений Oracle, вы должны их сконфигурировать. Заглянув в каталог $ORACLE_HOME/network/admin/samples (в UNIX) или ORACLE. HOME\network\admin\samples (в Windows NT), вы найдете там файл с именем cman.ora. Его можно использовать как образец при конфигурировании процессов менеджера соединений. В данном случае Net8 Assistant или Net8 Configuration Assistant не помогут. Вам придется редактировать файл конфигурации вручную.
Начнем с изучения разделов образцового файла cman.ora.

Cman.ora
Файл cman.ora используется для хранения параметров конфигурации менеджера соединений Oracle. Этот файл аналогичен по своему назначению файлу listener.ora и tnsnames.ora. прослушивающего процесса или файлу names.ora сервера имен Oracle.
Образцовый файл cman.ora начинается с комментариев, объясняющих синтаксис и назначение каждого из доступных параметров. После комментариев дается полный пример конфигурации. Приведу здесь только две первые строки. Единственное, что я добавила,- это имя своего хоста, MARLENES-PC.
Как следует из комментария, в этих строках определяются адреса, по которым процессы будут принимать запросы на соединения. Первый параметр относится к процессу CMGW, а второй — к процессу CMADMIN.
Указанные номера портов используются по умолчанию. Если ваши процессы будут использовать протокол TCP/IP и прослушивать стандартные порты, то эти две строки вообще не нужны. Однако для большей наглядности их все же следует включить. В этом случае вы быстро проверить, какие порты используются процессами. Поскольку процесс CMGW выполняет все основные функции менеджера соединений Oracle, его можно запускать без процесса CMADMIN.
Посмотрим, какие еще параметры можно включать в файл cman.ora. В таблице 10.1 приведены четыре параметра менеджера соединений Oracle, а также (за исключением cman_profile) их значения.

Таблица 10.3.
Установки по умолчанию и диапазоны значений для параметров cman profile

Параметр со значением по умолчанию
Возможные значения
answer_timeout=0
0-n
authentication_level=0
ОМ
log_level=0

max_freelist_buffers=0
0-10240
maximum_connect_data=1024
257-4096
maximum_relays=128
1-2048
relay_statistics=NO
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
remote_admin=NO
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
show_tns_info=NO
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
trace directory=$ORACLE HOME/network/trace/ в UNIX, ORACLE_HOME\network\trace
в Windows NT
Местонахождение каталога
trace_filelen=unlimited
Размер файла в килобайтах (не ограничен)
trace_fileno=1
Число
trace_timestamp=NO
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
tracing=NO
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
use_async_call=YES
[YES | TRUE | ON | 1 | NO | FALSE | OFF | 0]
В данном случае параметр cmanrules сообщает менеджеру соединений Oracle о том, что нужно принимать все запросы на соединении, исходящие от сервера SKDL. Символы — это шаблоны, означающие, что хосту SKDI. разрешено соединяться с любой базой данных на любом сервере. Другое возможное значение переменной act — REJECT. При использовании параметра cmanrules менеджер соединений действует по принципу "запрещено все, что не разрешено", поэтому вы должны явно указать все соединения, которые должны быть разрешены.
Конфигурирование концентрации соединений
Чтобы использовать концентрацию соединений, необходимо в первую очередь сконфигурировать менеджер соединений Oracle. Из предыдущего раздела вы уже знаете, как это делается. Затем конфигурируется сервер, и в завершение — клиенты.
Для поддержки концентрации соединений сервер назначения должен быть сконфигурирован так, чтобы он работал в режиме многопоточного сервера. Кроме этого, необходимо включить мультиплексирование. Обе задачи решаются с помощью Database Configuration Assistant. Если вы не хотите использовать этот инструмент, можете вручную установить параметр mts_dispatchers в файле параметров базы данных init.ora. Ниже показано, как задать протокол и включить мультиплексирование:
mts_oispatchers = "(urotocol=ICP)(multiplex=ON)"
имеет несколько других параметров, но для поддержки концентрации соединений достаточно только тех, что приведены выше. Возможные значения параметров protocol и multiplex перечислены в таблице 10.4.

Таблица 10.4.
Параметры protocol и multiplex многопоточного сервера

Параметр
protocol (prot, pro)
Описание
Сетевой протокол (в нашем примере TCP), для которого диспетчер

генерирует конечную точку прослушивания.
multiplex (mult)
Разрешает/запрещает концентрацию соединений. Значение  YES, TRUE или BOTH разрешает концентрацию как входящих, так и исходящих сетевых соединений. Значение IN разрешает концентрацию
только входящих сетевых соединений клиентов. Значение OUTразрешает концентрацию только исходящих сетевых соединений.
Значение О, NO, OFF или FALSE запрещает концентрацию как  входящих, так и исходящих сетевых соединений.

Итак, сервер сконфигурирован. Теперь займемся конфигурированием клиента. Чтобы клиенты могли использовать концентрацию соединений, необходимо создать два адреса: один для менеджера соединений Oracle, a другой — для прослушивающего процесса. Процедура конфигурирования зависит от используемого метода именования.
В случае локального именования или именования по каталогу вы должны модифицировать файл tnsnames.ora так, чтобы в запросах на соединение использовался менеджер соединений Oracle. Для этого нужно создать список адресов, где на первом месте будет стоять адрес менеджера соединений Oracle, а на втором — адрес прослушивающего процесса. Чтобы клиент сначала соединялся с менеджером соединений Oracle, а затем с прослушивающим процессом, необходимо присвоить значение YES параметру source_route. Вот пример записи в файле tnsnames.ora:
Использование менеджера соединений обеспечивается параметрами source_route, protocol, host и port, указанными непосредственно после ключевого слова description. CMAN-PC — это имя машины, на которой запущен менеджер соединений. Если бы менеджер соединений находился на машине то в качестве значения host нужно было использовать именно это имя. Второй адрес определяет местонахождение базы данных. Менеджер соединений будет использовать эту информацию для соединения со службой базы данных через прослушивающий процесс.
При использовании серверов имен Oracle ситуация немного упрощается, поскольку информация о прослушивающем процессе и менеджере соединений передается серверу имен автоматически. На стороне клиента достаточно поместить в файл sqlnet.ora параметр use_cman=TRUE. Такой же параметр должен присутствовать в файле sqlnet.ora на каждом из серверов имен Oracle.
Конфигурирование мультипротокольной поддержки
Конфигурирование мультипротокольной поддержки, как и концентрации соединений, необходимо начинать с конфигурирования менеджера соединений. Менеджер соединений может принимать запросы на соединения по любому протоколу, поддерживаемому Oracle. Это означает, что
SPX-клиент, не имеющий возможности напрямую соединяться с сервером, использующим        сможет соединиться с менеджером соединений, который, в свою очередь,        соединение с базой данных.
Сконфигурировав менеджер соединений Oracle, вы должны сконфигурировать клиент. 
 









jAntivirus