Ръководство за потребителя

Свързване на приложения и помощни програми

Приложните програми, разработени с вграден SQL, трябва да се свържат с всяка база данни, с която ще работят. На платформите, където тези функции са достъпни, можете да направите това с Командния център и с Помощника за конфигуриране на клиенти.

Свързването трябва да се изпълни еднократно за всяко приложение и за всяка база данни. По време на свързването плановете за достъп до базата данни се съхраняват за всеки SQL оператор, който ще се изпълни. Те се доставят от разработчиците на приложението и се съдържат във файлове за свързване, които се създават по време на предкомпилирането. Свързването просто е процес на обработка на тези файлове за свързване от хоста или AS/400 сървъра на базата данни. За допълнителна информация за свързване на приложения се обърнете към Ръководство за разработка на приложения.

Тъй като редица помощни програми, доставени с DB2 Connect, са разработени с помощта на вграден SQL, те трябва да се свържат към хоста или AS/400 сървъра, преди да ги използвате с тази система. Ако не използвате DB2 Connect помощните програми и интерфейси, изброени в Таблица 4, не е необходимо да ги свързвате с всеки хост или AS/400 сървър на база данни. Списъците с файловете за свързване, необходими за тези помощни програми, се съдържат в следните файлове:

ddcsmvs.lst
За MVS или OS/390

ddcsvse.lst
За VSE

ddcsvm.lst
За VM

ddcs400.lst
За OS/400

При свързването на един от тези списъци с файлове с база данни ще се свърже всяка отделна помощна програма с тази база данни.

Ако е инсталиран DB2 Connect Enterprise Edition, DB2 Connect помощните програми трябва да се свържат с всеки хост или AS/400 сървър на база данни; еднократно от всеки тип платформа на клиент, преди да може да се използват с тази система.

Например, ако имате 10 OS/2 клиенти, 10 Windows клиенти и 10 AIX клиенти, които се свързват към DB2 Universal Database за OS/390 чрез DB2 Connect Enterprise Edition за Window NT сървър, направете следното:

  1. Свържете ddcsmvs.lst от един от Windows клиентите.
  2. Свържете ddcsmvs.lst от един от OS/2 клиентите.
  3. Свържете ddcsmvs.lst от един от AIX клиентите.
  4. Свържете ddcsmvs.lst от DB2 Connect сървъра.
Забележка:Тук се приема, че всички клиенти имат едно и също ниво на услуги. Ако това не е така, допълнително може да се наложи да свържете от всеки клиент с определено ниво на услуги. Обърнете се към Приложение E, Средства за свързване на клиенти от предишни версии, ако имате клиенти преди DB2 версия 2.1.

Освен DB2 Connect помощните програми, всички други приложения, които използват вграден SQL, трябва също да се свържат с всяка база данни, с която искате да работят. При изпълнението на приложение, което не е свързано, обикновено се генерира съобщение за грешка SQL0805N. Вероятно ще искате да създадете допълнителен файл със списък за свързване за всички приложения, които трябва да се свържат.

За всеки хост или AS/400 сървър на база данни, с който се свързвате, направете следното:

  1. Проверете дали имате достатъчно права за системата за управление на вашия хост или AS/400 сървър на база данни:

    MVS или OS/390
    Необходимата оторизация е:
    • SYSADM или
    • SYSCTRL или
    • BINDADD и  CREATE IN COLLECTION NULLID
    Забележка:Правата на достъп BINDADD и CREATE IN COLLECTION NULLID са достатъчни само когато пакетите все още не съществуват. Например, ако ги създавате за първи път.

    Ако пакетите вече съществуват и ги свързвате отново, тогава необходимите права на достъп за изпълнението на задачата(ите) зависи от това кой е изпълнил първоначалното свързване.

    A Ако вие сте извършили първоначалното свързване и искате да го изпълните отново, тогава с един от горните типове права ще можете да направите свързването.

    B Ако първоначалното свързване е изпълнено от някой друг и искате да извършите второ свързване, тогава ще са ви необходими права за управление SYSADM или SYSCTRL. Ако имате само BINDADD и CREATE IN COLLECTION NULLID, няма да можете да изпълните свързване. Все пак е възможно да създадете пакет, ако нямате правата за управление SYSADM или SYSCTRL. В този случай ще ви е необходимо право на достъп BIND за всеки от съществуващите пакети, които смятате да замените.

    VSE или VM
    Оторизацията изисква DBA права. Ако искате да използвате опцията GRANT на командата bind (за да избегнете предоставянето на права за достъп отделно за всеки DB2 Connect пакет), потребителският идентификатор NULLID трябва да има право за предоставяне на права на други потребители в следните таблици:
    • system.syscatalog
    • system.syscolumns
    • system.sysindexes
    • system.systabauth
    • system.syskeycols
    • system.syssynonyms
    • system.syskeys
    • system.syscolauth

    На VSE или VM система можете да изпълните:

        grant select on table to nullid with grant option
    

    OS/400
    *CHANGE право или по-високо на NULLID колекцията.
  2. Генерирайте команди, подобни на следните:
       db2 connect to DBALIAS user USERID using PASSWORD
       db2 bind path@ddcsmvs.lst blocking all
             sqlerror continue messages ddcsmvs.msg grant public
    db2 connect reset
    

    Където DBALIAS, USERID и PASSWORD се прилагат за хоста или AS/400 сървъра на базата данни, ddcsmvs.lst е файла със списъка за свързване за MVS, а path представлява пътеката до файла със списъка за свързване.

    Например drive:\sqllib\bnd\ се отнася за всички Intel операционни системи, а INSTHOME/sqllib/bnd/ за всички UNIX операционни системи, където drive представлява логическото устройство, където е инсталирана DB2 Connect, а INSTHOME е собствената директория на DB2 Connect потребителския модел.

    Можете да използвате опцията за предоставяне на права на командата bind, за да предоставите права ЕXECUTE на PUBLIC или на определен идентификатор на потребител или на група. Ако не използвате опцията за предоставяне на права на командата bind, трябва да изпълните отделно за всеки пакет GRANT EXECUTE (RUN).

    За да разберете имената на пакетите за файловете за свързване, въведете следната команда:

      ddcspkgn @bindfile.lst
    

    Например:

       ddcspkgn @ddcsmvs.lst
    

    може да генерира следния резултат:

                                                                          
    Файл за свързване                      Име на пакет                          
     ------------------------------ ------------------------------        
     f:\sqllib\bnd\db2ajgrt.bnd     SQLAB6D3
                                                                          
    

    За информация Таблица 4 показва файловете за свързване и имената на пакетите, които се използват от различните компоненти на DB2 Connect. В някои случаи на различните операционни системи се използват различни файлове за свързване и пакети.

    Таблица 4. Файлове за свързване и пакети
    Компонента Файл за свързване Пакет MVS или OS/390 VSE VM OS/400
    Свързващ (използван при опцията за свързване GRANT) db2ajgrt.bnd sqlabxxx да да да да
    DB2 интерфейс за вградени SQL оператори
    Ниво на изолация CS db2clics.bnd sqll1xxx да да да да
    Ниво на изолация RR db2clirr.bnd sqll2xxx да да да да
    Ниво на изолация UR db2cliur.bnd sqll3xxx да да да да
    Ниво на изолация RS db2clirs.bnd sqll4xxx да да да да
    Ниво на изолация NC db2clinc.bnd sqll5xxx не не не да
    Използване на MVS имена на таблици db2clims.bnd sqll7xxx да не не не
    Използване на OS/400 имена на таблици (OS/400 3.1 или следваща) db2clias.bnd sqllaxxx не не не да
    Използване на VSE/VM имена на таблици db2clivm.bnd sqll8xxx не да да не
    Процесор за обработка на команди
    Ниво на изолация CS db2clpcs.bnd sqlc2xxx да да да да
    Ниво на изолация RR db2clprr.bnd sqlc3xxx да да да да
    Ниво на изолация UR db2clpur.bnd sqlc4xxx да да да да
    Ниво на изолация RS db2clprs.bnd sqlc5xxx да да да да
    Ниво на изолация NC db2clpnc.bnd sqlc6xxx не не не да
    REXX
    Ниво на изолация CS db2arxcs.bnd sqla1xxx да да да да
    Ниво на изолация RR db2arxrr.bnd sqla2xxx да да да да
    Ниво на изолация UR db2arxur.bnd sqla3xxx да да да да
    Ниво на изолация RS db2arxrs.bnd sqla4xxx да да да да
    Ниво на изолация NC db2arxnc.bnd sqla5xxx не не не да
    Помощни програми
    Експорт db2uexpm.bnd sqlubxxx да да да да
    Импорт db2uimpm.bnd sqlufxxx да да да да

    За да определите тези стойности за DB2 Connect, изпълнете помощната програма ddcspkgn, например:

       ddcspkgn @ddcsmvs.lst
    

    Допълнително тази помощна програма може да се използва, за да се определи името на пакета за отделните файлове за свързване, например:

       ddcspkgn bindfile.bnd
    

    Ако във вашата DB2 за MVS/ESA система е инсталирана корекцията за APAR PN60988 (или ако е след версия 3 подверсия 1), можете също така да добавите файловете за свързване към изолационното ниво NC към файла ddcsmvs.lst.

    За допълнителна информация за възможностите за свързване се обърнете към Справочник на командите.

    Забележки:

    1. Необходимо е използването на опцията за свързване sqlerror continue; тази опция автоматично се определя вместо вас, когато свързвате приложения с помощта на DB2 средствата или процесора за обработка на команди. Определянето на тази опция превръща грешките при свързването в предупреждения, така че може да се създаде пакет дори и при свързване на файл, в който има грешки. Така един файл за свързване може да се използва спрямо няколко сървъра, дори когато реализацията на определения сървър може да посочи като невалиден SQL синтаксисът на друг сървър. Поради тази причина при свързването на файловете със списъци ddcsxxx.lst спрямо определен хост или AS/400 сървър на база данни би трябвало да се очаква, че ще се получат някои предупреждения. Например, когато свързвате спрямо DB2 за VM, може да се получат редица предупредителни съобщения, защото DB2 за VM не позволява курсорите да се декларират като "WITH HOLD".

    2. Ако се свързвате към DB2 Universal Database база данни чрез DB2 Connect, използвайте списъка за свързване db2ubind.lst и не определяйте sqlerror continue, защото е валидно само когато се свързвате към хост или AS/400 сървър на база данни. Освен това за свързване към DB2 Universal Database база данни ви препоръчваме да използвате DB2 клиентите, осигурени с DB2, а не с DB2 Connect.
  3. Използвайте подобни изрази, за да свържете всяко приложение или списък с приложения.
  4. Ако имате отдалечени клиенти с предишна версия на DB2, може да се наложи да свържете помощните програми на тези клиенти към DB2 Connect. За допълнителна информация вижте Приложение E, Средства за свързване на клиенти от предишни версии.


[ Начало на страницата | Предишна страница | Следваща страница ]