Дополнение по возможностям соединений

Реализация DB2 Universal Database for OS/390

DRDA определяет типы функций системы управления распределенными базами данных. DB2 Universal Database for OS/390 поддерживает удаленные единицы работы. Удаленные единицы работы позволяют прикладной программе, работающей в одной системе, обращаться к данным удаленной СУБД, используя SQL, поддерживаемый этой удаленной СУБД.

DB2 Universal Database for OS/390 поддерживает также распределенные единицы работы. С их помощью прикладная программа, работающая в одной системе, может обращаться к данным нескольких удаленных СУБД, используя SQL, предоставляемый удаленными СУБД. Дополнительные сведения о типах распределенной обработки в DRDA смотрите в руководстве DRDA Connectivity Guide.

Как показано на Рис. 14, DB2 Universal Database for OS/390 поддерживает три конфигурации соединений распределенных баз данных с использованием двух способов доступа:

[1] Доступ, управляемый системой (другое название - собственный протокол DB2 Universal Database for OS/390), позволяет реквестеру DB2 Universal Database for OS/390 соединяться с одним или несколькими серверами DB2 Universal Database for OS/390. Соединение, устанавливаемое между реквестером и сервером DB2 Universal Database for OS/390, не придерживается протоколов, определенных в DRDA и не может использоваться для соединения продуктов не-DB2 Universal Database for OS/390 с DB2 Universal Database for OS/390. Этот тип соединения устанавливается путем указания трехчастных имен или алиасов в коде прикладной программы.

[2] Доступ, управляемый программой, позволяет реквестеру DB2 Universal Database for OS/390 или не-DB2 Universal Database for OS/390, например, DB2 Connect, соединяться с одним или несколькими серверами прикладных программ DB2 Universal Database for OS/390 или не-DB2 Universal Database for OS/390, например, DB2 Universal Database или DB2 Universal Database for AS/400, использующей протоколы DRDA. Число серверов прикладных программ, с которыми может одновременно соединиться реквестер, зависит от уровня DB2 Universal Database for OS/390 реквестера прикладных программ. Если реквестер прикладных программ - DB2 for MVS/ESA V2R3, в каждый момент времени соединения могут быть установлены только с одним сервером. Эти соединения устанавливаются вызовом оператора SQL CONNECT из прикладной программы. Если используется реквестер DB2 for MVS/ESA V3R1 или более поздний, одновременно может быть установлено соединение с несколькими серверами прикладных программ.

[3]Для установления соединений программный и системный доступ могут быть использованы совместно. В одном потоке нельзя использовать для соединений DRDA и системно-управляемую память.

Термин вторичный сервер описывает системы, работающие как серверы для сервера прикладных программ.

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

Рис. 14. Распределенные соединения DB2 Universal Database for OS/390

                                                                                  
                                                                                 
 

REQTEXT

В Табл. 2 сравниваются виды соединений распределенных баз данных DB2 Universal Database for OS/390.

Табл. 2. Сравнение соединений распределенной базы данных DB2 Universal Database for OS/390
[1] Системный доступ [2] Программный доступ (со всеми системами, имеющими двухфазное принятие) [3] Программный и системный доступ
Все партнеры должны быть системами DB2 Universal Database for OS/390 Может связать две любые системы DRDA Реквестер прикладных программ может быть любой системой DRDA; серверы должны быть системами DB2 Universal Database for OS/390
Может устанавливать прямые соединения с несколькими партнерами Может устанавливать прямые соединения с несколькими партнерами Реквестер прикладных программ устанавливает соединение непосредственно с сервером прикладных программ; серверы прикладных программ могут устанавливать соединения с несколькими вторичными серверами DB2 Universal Database for OS/390
Каждая прикладная программа SQL может поддерживать несколько диалогов с каждым сервером Каждая прикладная программа SQL поддерживает с каждым сервером один диалог Прикладная программа SQL поддерживает один диалог с каждым сервером; сервер прикладных программ DB2 Universal Database for OS/390 может открыть несколько диалогов с каждым сервером для прикладной программы
Может иметь доступ как к локальным, так и к удаленным ресурсам в одной области принятия Может иметь доступ как к локальным, так и к удаленным ресурсам в одной области принятия Реквестер прикладных программ и сервер прикладных программ могут обращаться как к локальным, так и к удаленным данным
Эффективнее для больших запросов или при большом количестве одновременных запросов Эффективнее для операторов SQL, которые выполняются очень небольшое число раз в одной области принятия Соединение реквестер прикладных программ-сервер прикладных программ ведет себя как [2]; соединения вторичного сервера ведут себя как [1]
Может поддерживать статический или динамический SQL, однако сервер динамически связывает статический SQL, когда он исполняется первый раз в области принятия Может вызывать статический или динамический SQL Реквестер прикладных программ и Сервер прикладных программ могут вызывать статические или динамические команды SQL; вторичные серверы поддерживают статический или динамический SQL, однако динамически связывают статические операторы SQL при их первом выполнении в области принятии
Ограничивается операторами SQL INSERT, DELETE и UPDATE, а также операторами, поддерживающими SELECT Может использовать любой оператор, поддерживаемый исполняющей системой Серверы прикладных программ поддерживают любой SQL; вторичные серверы поддерживают только DML SQL (например, CREATE или ALTER)

Дополнительные средства защиты

Расширенные коды защиты

В версиях DB2 Universal Database for OS/390 до Версии 5.1 требования на соединение с ID пользователя или паролем могли завершиться неудачно с кодом причины SQL30082, равным 0, но никакой уточняющей информации о причинах ошибки не выдавалось.

В Версии 5.1 DB2 Universal Database for OS/390 была введена поддержка расширенных кодов защиты. При использовании расширенного кода защиты можно, в дополнение к коду причины, получать дополнительную диагностику, например, (PASSWORD EXPIRED) (срок действия пароля истек).

Для этого параметр установки DB2 Universal Database for OS/390 ZPARM должен иметь значение YES. На панели установки DB2 Universal Database for OS/390 DSN6SYSP задайте EXTSEC=YES. Для задания этого параметра можно также использовать панель 1 DDF (DSNTIPR). По умолчанию используется значение EXTSEC=NO. В таком случае при истечении срока действия пароля программы PC, UNIX, Apple Macintosh и программы Web, использующие DB2 Connect, получат сообщение об ошибке SQL01404.

Защита TCP/IP уже проверена

Если вы хотите обеспечить поддержку опции защиты DB2 Universal Database AUTHENTICATION=CLIENT, на панели установки DB2 Universal Database for OS/390 DSNTIP4 (панель 2 DDF) задайте в поле "TCP/IP already verified" значение YES.

Защита программ ODBC и Java на настольных системах

Программы ODBC и Java на рабочих станциях используют динамический SQL. На некоторых установках это может привести к проблемам с защитой. В DB2 Universal Database for OS/390 введена новая опция связывания DYNAMICRULES(BIND), которая позволяет по выбору выполнять динамический SQL с авторизацией владельца или же того, кто выполнял связывание. Посмотрите в справочнике Command Reference, как задать DYNAMICRULES через DB2 Connect.

В DB2 Universal Database и DB2 Connect в файле конфигурации DB2CLI.INI введен новый параметр конфигурации CLI/ODBC CURRENTPACKAGESET. Его значением должно быть имя схемы с соответствующими привилегиями. При каждом соединении такой программы автоматически будет выполняться оператор SQL SET CURRENT PACKAGESET схема.

Для исправления файла DB2CLI.INI используйте менеджер ODBC. Дополнительную информацию смотрите в книге Дополнение по установке и настройке.

Поддержка изменения пароля

Если в ответ на оператор SQL CONNECT пользователь получает сообщение об истечении срока действия его пароля, в DB2 Connect Версии 5.2 и более новых он может изменить пароль, не регистрируясь на TSO. DB2 Universal Database for OS/390 может сменить пароль для вас через DRDA.

Пользователь должен задать старый пароль, новый пароль и его подтверждение. Если на сервере DB2 Connect Enterprise Edition задана защита DCS, требование изменения пароля посылается на сервер баз данных DB2 Universal Database for OS/390. Если задана защита SERVER, изменяется пароль на сервере DB2 Connect.

Дополнительное преимущество состоит в том, что отдельное определение LU не требуется. Дополнительную информацию смотрите в руководстве DB2 Connect Enterprise Edition Быстрый старт.


[ Начало страницы | Страница назад | Страница вперед | Содержание | Индекс ]