Dodatek za povezljivost

Najpogostejše težave v DB2 Connect

V tem razdelku so navedeni najpogostejši simptomi težav pri vzpostavljanju povezav, na katere lahko naletite med uporabo DB2 Connect. V vsakem primeru bo na voljo naslednje:

Opombe:

  1. Najnovejše informacije o priporočenih ravneh popravkov za programsko opremo lahko najdete v priročniku Hitri začetki za vaš izdelek in v najnovejših opombah k izdaji.

  2. Za kombinacije sporočil in povratnih kod, značilnih za komunikacije APPC, je lahko prikazana tudi koda zaznavanja SNA. Trenutno morate vse informacije o kodi zaznavanja SNA, povezane z določenim sporočilom, pridobiti iz podsistema SNA.

    Včasih lahko kode zaznavanja SNA poiščete tudi tako, da pregledate sistemske dnevnike. Ali je to mogoče, je odvisno od podsistema SNA, ki ga uporabljate; včasih boste morali za pridobitev informacij o kodah zaznavanja ponoviti težavo z aktivnim sledenjem SNA.

  3. Izraz prehod se nanaša na izdajo DB2 Connect za podjetja.

SQL0965 ali SQL0969

Simptom

Sporočili SQL0965 in SQL0969 sta lahko izdani z različnimi povratnimi kodami iz DB2 Universal Database za AS/400, DB2 Universal Database za OS/390, DB2 za MVS/ESA in DB2 za VM & VSE.

Če naletite na katerokoli izmed zgornjih sporočil, v dokumentaciji za strežnik baz podatkov, ki je izdal sporočilo, poiščite izvirno kodo SQL.

Ukrep

Kode SQL, ki ste jo prejeli iz baze podatkov gostitelja, ni mogoče prevesti. Na osnovi kode napake odpravite težavo, nato pa ponovite neuspeli ukaz.

SQL1338 med CONNECT

Simptom / Vzrok

Simbolično ciljno ime ni bilo definirano ali pa je bilo definirano napačno.

Do tega lahko na primer pride, če uporabljate vozlišče APPC in se simbolično ciljno ime, podano v imeniku vozlišč DB2, ne ujema s postavko CPI-C v konfiguraciji lokalnega komunikacijskega podsistema APPC.

Do te težave lahko pride tudi, če imate na računalniku nameščen več kot en sklad SNA. Preglejte stavka PATH in LIBPATH in zagotovite, da je sklad, ki ga želite uporabiti, naveden prvi.

Ukrep

  1. Zagotovite, da se ime profila stranskih informacij CPIC, podano v postavki imenika vozlišč DB2, ujema s konfiguracijo SNA (ta upošteva velike in male črke).
  2. Preglejte stavka PATH in LIBPATH in zagotovite, da je sklad SNA, ki ga želite uporabiti, naveden prvi.

SQL1403N med CONNECT

Simptom

SQL1403N Podano ime uporabnika in/ali geslo ni pravilno.

Ukrep

  1. Overjanje uporabnika v delovni postaji DB2 Connect ni uspelo. Določite, ali je to sploh potrebno.

    Če je potrebno, preverite, ali ste za stavek CONNECT podali pravilno geslo.

    Če to ni potrebno, postavke imenika sistemske baze podatkov niste pravilno katalogizirali z uporabo strežnika za overjanje (če overjanja ne podate izrecno, je to privzetek). V tem primeru znova katalogizirajte postavko z uporabo DCS-ja ali odjemalca za overjanje.

  2. Geslo za pošiljanje v bazo podatkov ciljnega strežnika ni na voljo. Če ste postavko imenika sistemske baze podatkov katalogizirali z uporabo DCS-ja za overjanje, morate geslo premakniti iz odjemalca DB2 v bazo podatkov ciljnega strežnika. Na določenih platformah, kot je na primer AIX, lahko geslo pridobite samo, če sta ga podali v stavku CONNECT.

SQL5043N

Simptom

Podpora za enega ali več komunikacijskih protokolov se ni uspela zagnati, Vendar pa se je osnovno delovanje upravljalnika baze podatkov uspešno zagnalo.

Morda protokol TCP/IP ni zagnan v prehodu DB2 Connect. Uspešna povezava z odjemalcem je bila lahko vzpostavljena že predhodno.

Če je diaglevel = 4, potem lahko db2diag.log vsebuje podobno postavko, kot je npr:

   1997-05-30-14.09.55.321092   Primerek:svtdbm5   Vozlišče:000
PID:10296(db2tcpcm)   IDapl:none
common_communication  sqlcctcpconnmgr_child   Sonda:46
DIA3205E Naslov vtičnice "30090", konfiguriran v datoteki storitev TCP/IP,
ki
ga potrebuje podpora za strežnik TCP/IP, uporablja drug
postopek.

Ukrep

To opozorilo kaže, da ima DB2 Connect, ki deluje kot prehod za oddaljene odjemalce, težave pri obravnavanju enega ali več komunikacijskih protokolov odjemalcev. Ti protokoli so lahko TCP/IP, APPC in drugi; sporočilo običajno kaže, da eden izmed komunikacijskih protokolov, ki je definiran za DB2 Connect, ni pravilno konfiguriran.

Pogosto je vzrok za to težavo v tem, da spremenljivka profila DB2COMM ni definirana, ali je definirana napačno. Običajno težava nastane kot posledica neujemanja spremenljivke DB2COMM in imen, definiranih v konfiguraciji Upravljalnika baz podatkov (na primer svcename, nname ali tpname).

Zgodi se lahko tudi, da ste povezavo predhodno uspešno vzpostavili, nato pa se sporočilo o napaki SQL5043 prikaže kljub temu, da konfiguracije niste spremenili. Do tega lahko pride, če uporabljate protokol TCP/IP in oddaljeni sistem iz nekega razloga nenormalno prekine povezavo. V tem primeru je obstoj povezave še vedno lahko prikazan na odjemalcu in povezavo bo mogoče obnoviti brez nadaljnjega posredovanja z uporabo spodnjih ukazov.

Najverjetneje je, da ima eden izmed odjemalcev, ki vzpostavlja povezavo s prehodom, na vratih TCP/IP še vedno ročko. V vseh odjemalskih delovnih postajah, ki so povezane s prehodom, izdajte naslednja ukaza:

  1. db2 terminate
  2. db2stop

SQL30020

Simptom

SQL30020N Izvajanje ni uspelo zaradi napake porazdeljenega protokola, ki bo vplivala na uspešno izvajanje nadaljnjih ukazov in stavkov SQL.

Ukrep

Če pride do te napake, se obrnite na servisno službo.

V imeniku db2dump poiščite ffdc dump (pid.000). Nato to datoteko izpisa pomnilnika formatirajte z db2fdump in v nastali datoteki poiščite stavek "ERROR". Naveden bo lahko stavek MVS ABEND. V tem primeru za podrobnejše informacije preglejte ukazno mizo MVS in v priročniku DB2 for MVS Messages and Codes poiščite kodo abend.

SQL30060

Simptom

SQL30060N "<pooblastitveni_ID>" nima pooblastila za izvajanje operacije "<operacija>".

Ukrep

Pri vzpostavljanju povezave z DB2 za MVS ali z DB2 za OS/390 tabele komunikacijske baze podatkov (CDB) niso bile pravilno ažurirane. Preglejte priročnika:

SQL30061

Simptom

Vzpostavljate povezavo z napačnim nahajališčem strežnika baz podatkov gostitelja ali AS/400 - ciljne baze podatkov ni mogoče najti.

Ukrep

V postavki imenika DCS je morda podano napačno ime baze podatkov strežnika. Če pride do te težave, bo aplikaciji vrnjena koda 30061.

Preglejte postavke vozlišča, baze podatkov in imenika DCS DB2. Polje s ciljnim imenom baze podatkov v postavki imenika DCS se mora ujemati z imenom baze podatkov, ki temelji na platformi. Tako na primer za bazo podatkov DB2 Universal Database za OS/390 uporabite enako ime, kot ste ga uporabili v polju BSDS (Boot Strap Data Set) "LOCATION=locname", ki se prikaže tudi v sporočilu DSNL004I (LOCATION=location), ko zaženete pomožni program za porazdeljene podatke (DDF).

Priročnik Hitri začetki za DB2 Connect vsebuje zglede, ki kažejo, kako se ažurirajo katalogi DB2. V vseh poglavjih, ki opisujejo konfiguracijo SNA, preberite razdelek "Ažuriranje imenikov DB2" ali pa poglavje "Konfiguriranje baz podatkov gostitelja ali AS/400 za DB2 Connect" in razdelek "Konfiguriranje povezave TCP/IP".

Pravilni ukazi za vozlišče APPC ali APPN so:

   db2 catalog appc node <ime_vozlišča> remote <ciljno_ime> security program
   db2 catalog dcs database <lokalno_ime> as <resnično_ime_baze_podatkov>
   db2 catalog database <lokalno_ime> as <vzdevek> at node <ime_vozlišča> 
        authentication dcs

Pravilni ukazi za vozlišče TCP/IP so:

   db2 catalog tcpip node <ime_vozlišča> remote <ime_ali_naslov_gostitelja>
                server <št_vrat_ali_ime_storitve>
   db2 catalog dcs database <lokalno_ime> as <resnično_ime_baze_podatkov>
   db2 catalog database <lokalno_ime> as <vzdevek> at node <ime_vozlišča>
        authentication dcs

Če želite vzpostaviti povezavo z bazo podatkov, izdajte naslednji ukaz:

   db2 connect to <vzdevek> user <ime_uporabnika> using <geslo>

SQL30073 s povratno kodo 119C med CONNECT

Simptom

Sporočilo SQL30073 je izdano s povratno kodo 119C. Do te težave pride, če baza podatkov ciljnega strežnika ne podpira kodne strani, ki jo uporablja odjemalec DB2 (ki uporablja DB2 Connect). Kodna stran je pridobljena iz konfiguracije operacijskega okolja, v katerem se izvaja odjemalec DB2.

Dodatne informacije poiščite v Administration Guide.

Ukrep

To težavo lahko pogosto rešite tako, da v sistem baze podatkov ciljnega strežnika namestite popravek. Obrnite se na ustrezno službo za pomoč in uveljavite popravke, ki vam jih priporoči za ta simptom.

Uporabnik lahko težavo začasno reši tako, da s spremenljivko okolja DB2CODEPAGE nadomesti privzeto kodno stran. Preverite državne nastavitve ali pa nastavite DB2CODEPAGE=850.

Na platformah UNIX lahko uporabniki preklopijo v drugo kodno stran tako, da spremenljivko okolja LANG nastavijo na drugo vrednost.

SQL30081N s povratno kodo 1

Simptom

Simptom je sestavljen iz naslednjega sporočila in iz kode zaznavanja SNA:

  db2 connect to <ime_baze_podatkov> user <ID_uporabnika>
  Vnesite geslo za <ID_uporabnika>:
SQL30081N  Odkrita je bila komunikacijska
napaka.
   Uporabljen komunikacijski
  protokol: "APPC".  Uporabljen komunikacijski API: "CPI-C".
  Mesto, kjer je
  bila odkrita napaka: "".  Komunikacijska funkcija, ki je odkrila
  napako:
  "cmallc".  Koda napake, specifična za protokol: "1", "*",
  "0x10030021".
   SQLSTATE=08001

Ukrep(i)

V tem primeru je koda zaznavanja 10030021.

Najpogostejše kode zaznavanja, ki so povezane s tem sporočilom o napaki, in predlagani ukrepi so naslednji:

  1. SQL30081N s povratno kodo 1 in kodo zaznavanja SNA 0877002C
    

    Podali ste napačno omrežno ime.

  2. SQL30081N s povratno kodo 1 in s kodo zaznavanja SNA ffff0003
    

    Podali ste napačen naslov MAC ali pa povezava SNA ni aktivna.

  3. SQL30081N s povratno kodo 1 in s kodo zaznavanja SNA 10030021
    

    V tipu LU je prišlo do neujemanja.

  4. SQL30081N s povratno kodo 1 in s kodo zaznavanja SNA 084B6031
    

    MAXDBAT v DSNZPARM (v DB2 za MVS ali v DB2 za gostitelja OS/390) je nastavljen na 0.

Drugi predlogi:

  1. Pri izdelavi profila lokalnega LU definirajte LU kot privzeti LU. Tako lahko na primer v oknu seznama funkcij SNA v CM/2 naredite naslednje:
  2. Preverite, ali je SNA zagnan v prehodu DB2 Connect.
  3. Če uporabljate DB2 za MVS ali DB2 za OS/390, preverite, ali je zagnan naslovni prostor pripomoček za porazdeljene podatke (DDF) in ali se DB2 izvaja.

SQL30081N s povratno kodo 2

Simptom

Sporočilo SQL30081N je izdano s povratno kodo 2 in s kodo zaznavanja SNA 08120022.

Ukrep

Parameter NUMILU v NCP (gostiteljski del povezave) je lahko nastavljen na privzetek (0). To morate preveriti, preden nadaljujete. Ko uveljavite spremembo, po potrebi pred vnovičnim poskusom spremenite definicijo NCP.

SQL30081N s povratno kodo 9

Simptom

Simptom je naslednje sporočilo (koda zaznavanja SNA v tem primeru ni potrebna):

   db2 connect to <baza_podatkov> user <ID_uporabnika>
SQL30081N  Odkrita je bila komunikacijska
napaka.
   Uporabljen komunikacijski
  protokol: "APPC".  Uporabljen komunikacijski API: "CPI-C".
  Mesto, kjer je
  bila odkrita napaka: "".  Komunikacijska funkcija, ki je odkrila
  napako:
  "cmsend".  Koda napake, specifična za protokol: "9", "*",
  "0x10086021".
   SQLSTATE=08001

Ukrep

Vzrok težave je ime programa za transakcije (TPNAME), ki v sistemu DB2 Connect ni pravilno definirano. Možno je, da ste ažurirali konfiguracijo SNA, niste pa je še preverili v prehodu DB2 Connect. Za podrobnejše podatke preglejte priročnik Hitri začetki za izdajo DB2 za podjetja za OS/2 in Windows ali Hitri začetki izdaje DB2 Connect za osebno uporabo.

SQL30081N s povratno kodo 10

Simptom

Simptom je naslednje sporočilo (koda zaznavanja SNA ni potrebna):

SQL30081N  Odkrita je bila komunikacijska
napaka.
   Uporabljen komunikacijski
  protokol: "APPC".  Uporabljen komunikacijski API: "CPI-C".
  Mesto, kjer je
  bila odkrita napaka: "".  Komunikacijska funkcija, ki je odkrila
  napako:
  "cmrcv". Koda napake, specifična za protokol: "10", "*", "*".
   SQLSTATE=08001

Ukrep

Preverite, ali je DB2 pravilno nameščen.

Če uporabljate DB2 Connect za prehod OS/2, se lahko v primeru, da ime TP ni pravilno definirano, prikaže naslednje:

   Koda napake, specifična za protokol: "10", "*", "0x084C0000".
   SQLSTATE=08001

V tem primeru bo v CM/2 definirana tako:

   Ime programa za transakcije    = 'tpname'    (definira uporabnik)
   Ime datoteke in pot programa OS/2 = notused

in (na naslednjem konfiguracijskem zaslonu CM/2)

   Tip predstavitve - ozadje
   Tip delovanja - v čakalni vrsti, operator je vnaprej naložen

SQL30081N s povratno kodo 20

Simptom

   SQL30081N  Odkrita je bila komunikacijska
napaka.    Uporabljen komunikacijski
  protokol: "APPC".  Uporabljen komunikacijski API: "CPI-C".
  Mesto, kjer je
  bila odkrita napaka: "".  Komunikacijska funkcija, ki je odkrila
  napako:
  "xcstp".  Koda napake, specifična za protokol: "20", "*", "*".
   SQLSTATE=08001

Ukrep

Preverite, ali je podsistem SNA zagnan v sistemu DB2 Connect.

SQL30081N s povratno kodo 27

Simptom

Sporočilo SQL30081N je izdano s povratno kodo 27 in s kodo zaznavanja SNA 800Axxxx.

Ukrep

Informacijska enota poti (PIU) VTAM je prevelika.

SQL30081N s povratno kodo 79

Simptom

   SQL30081N  Odkrita je bila komunikacijska
napaka.    Uporabljen komunikacijski
   protokol: "TCP/IP". Uporabljen komunikacijski API: "SOCKETS".
   Mesto, kjer
   je bila odkrita napaka: "".  Komunikacijska funkcija,
   ki je odkrila napako:
   "connect". Koda napake, specifična za protokol: "79", "*", "*".
   SQLSTATE=08001

Ukrep(i)

Do te težave lahko pride, če oddaljenemu odjemalcu ne uspe vzpostaviti povezave s prehodom DB2 Connect. Pojavi se lahko tudi pri vzpostavljanju povezave prehoda DB2 Connect z gostiteljem.

  1. Spremenljivka okolja DB2COMM morda ni pravilno nastavljena v prehodu DB2 Connect. To morate preveriti, preden nadaljujete. Če v okolju AIX izvajate razširjeno izdajo DB2 za podjetja, mora biti ukaz db2set db2comm=tcpip prikazan v sqllib/db2profile.
  2. V prehodu odjemalca DB2 in DB2 Connect je neujemanje med specifikacijo imena storitve TCP/IP in/ali številko vrat. Preverite postavke v datotekah storitev TCP/IP v obeh delovnih postajah.
  3. Preverite, ali je DB2 zagnan v prehodu DB2 Connect. Konfiguracijo Upravljalnika baz podatkov diaglevel nastavite na 4, za kar uporabite naslednji ukaz:
    db2 update dbm cfg using diaglevel 4
    
    Ko DB2 zaustavite in znova zaženete, preglejte datoteko db2diag.log in preverite, ali so komunikacije TCP/IP DB2 zagnane. Prikaže se lahko izpis, podoben naslednjemu:
       1998-02-03-12.41.04.861119   Primerek:svtdbm2   Vozlišče:00
       PID:86496(db2sysc)   Appid:none
       common_communication  sqlcctcp_start_listen   Vozlišče:80
       DIA3000I Podpora za protokol "TCPIP" je bila uspešno zagnana.
    

SQL30081N s kodo napake 10032, specifično za protokol

Simptom

   SQL30081N  Odkrita je bila komunikacijska
napaka.    Uporabljen komunikacijski
   protokol: "TCP/IP". Uporabljen komunikacijski API: "SOCKETS".
   Mesto, kjer
   je bila odkrita napaka: "9.21.85.159". Komunikacijska
   funkcija, ki je odkrila
   napako: "send".  Koda napake, specifična za protokol: "10032",
   "*", "*".
   SQLSTATE=08001

Ukrep

To sporočilo o napaki se lahko prikaže, če poskusite prekiniti povezavo z delovni postajo, na kateri komunikacije TCP/IP ne delujejo več. Težavo odpravite s podsistemom TCP/IP.

V večini delovnih postaj lahko težavo odpravite tako, da za delovno postajo znova zaženete protokol TCP/IP. Včasih morate delovno postajo znova zagnati.


[ Vrh Strani | Predhodna Strani | Naslednja Strani | Obsah | Seznam ]