Felhasználói kézikönyv

A leggyakoribb DB2 Connect problémák

Ez a fejezet a DB2 Connect termék használatakor leggyakrabban jelentkező hibajelenségeket (tüneteket) sorolja fel. Minden probléma esetén a fejezetben megtalálhatja az alábbi információkat:

Megjegyzések:

  1. Az ajánlott szoftver javítási szintekkel kapcsolatos naprakész információkat a termék Repülőrajt kézikönyvében és a legutóbbi Kiadási megjegyzésekben találhat.

  2. Az APPC kommunikációra jellemző üzenetszám és visszatérési kód kombinációknál néha meg van adva SNA értelmezési kód is. Jelenleg egy adott üzenettel társított SNA értelmezési kódot az SNA alrendszertől kell lekérdezni.

    Néha az SNA értelmezési kódok megtalálhatók a rendszernaplókban. Hogy ez az adott esetben megtehető-e, az a használt SNA alrendszertől függ. Némely esetben az értelmezési kódok csak úgy kaphatók meg, ha újra előállítja a problémát aktív SNA nyomkövetés közben.

  3. Az átjáró kifejezés a DB2 Connect Enterprise Edition termékre utal.

SQL0965 vagy SQL0969

Tünet

Az SQL0965 és SQL0969 üzenetek több különböző visszatérési kóddal jelenhetnek meg a DB2 Universal Database for AS/400, DB2 Universal Database for OS/390, DB2 for MVS/ESA és DB2 for VM &VSE rendszerek esetében.

Ha ezekkel az üzenetekkel találkozik, keresse meg az eredeti SQL kódot az üzenetet kiadó adatbázis-kiszolgáló termék leírásában.

Megoldás

A gazdaadatbázisból kapott SQL kód nem lefordítható. A hibakód alapján hárítsa el a problémát, és küldje el újra a meghiúsult parancsot.

SQL1338 CONNECT közben

Tünet / Ok

Nincs, vagy nem megfelelően van a jelképes célnév meghatározva.

Ez például akkor történhet, ha APPC csomópontot használnak és a DB2 csomópont-katalógusban megadott jelképes célnév nem egyezik a helyi APPC kommunikációs alrendszer konfigurációban lévő CPI-C bejegyzéssel.

Egy másik lehetséges ok, ha több SNA verem van telepítve a gépen. A PATH és LIBPATH környezeti változók ellenőrzésével győződhet meg arról, hogy a használni kívánt veremre hivatkozik-e először.

Megoldások

  1. Ellenőrizze, hogy a DB2 csomópont-katalógus bejegyzésben megadott CPI-C segédinformáció-profil egyezik-e az SNA konfigurációval (ezek megkülönböztetik a kis- és nagybetűket).
  2. Ellenőrizze, hogy a PATH és LIBPATH paraméterek a használni kívánt SNA veremre hivatkoznak-e először!

SQL1403N CONNECT közben

Tünet

SQL1403N A megadott felhasználói név és/vagy jelszó érvénytelen.

Megoldás

  1. A felhasználó hitelesítése sikertelen a DB2 Connect munkaállomáson. Először határozza meg, hogy a felhasználó hitelesítése sikeres kellene-e legyen a DB2 Connect munkaállomáson.

    Ha igen, ellenőrizze, hogy (ennek szükségességekor) a megfelelő jelszó van-e megadva a CONNECT utasításban.

    Ha nem, akkor a rendszeradatbázis-katalógus bejegyzése az AUTHENTICATION SERVER segítségével, helytelenül keletkezett (ez az alapértelmezett, ha az AUTHENTICATION nincsen kifejezetten megadva). Ebben az esetben AUTHENTICATION DCS vagy CLIENT használatával vegye fel újra a bejegyzést a katalógusba.

  2. Nem áll rendelkezésre a cél kiszolgáló-adatbázisba történő küldéshez szükséges jelszó. Ha a rendszeradatbázis-katalógus bejegyzés az AUTHENTICATION DCS használatával készült, akkor egy jelszót kell küldeni a DB2 ügyfél terméktől a cél kiszolgáló-adatbázisba. Némely (pl. AIX) környezetben a jelszót csak akkor lehet megszerezni, ha az szerepel a CONNECT utasításban.

SQL5043N

Tünet

Egy vagy több kommunikációs protokolltámogatás indítása meghiúsult. Az alapvető adatbáziskezelő működése azonban sikeresen elindult.

Lehet, hogy a TCP/IP protokoll nem indult el a DB2 Connect átjárón. Lehet, hogy már volt előzőleg sikeres ügyfélkapcsolat.

Ha a diaglevel = 4, akkor a db2diag.log fájlban lehet egy hasonló bejegyzés, például:

   1997-05-30-14.09.55.321092   Instance:svtdbm5   Node:000
PID:10296(db2tcpcm)   Appid:none
common_communication  sqlcctcpconnmgr_child   Probe:46
DIA3205E Socket address "30090" configured in the TCP/IP
services file and
required by the TCP/IP server support is being used by another
process.

Megoldás

Ez a figyelmeztetés azt jelzi, hogy a távoli ügyfelek számára átjáróként működő DB2 Connect egyes ügyfél kommunikációs protokollokat nem képes kezelni. Ezek lehetnek TCP/IP, APPC és egyéb protokollok, és az üzenet általában arra utal, hogy a DB2 számára meghatározott kommunikációs protokollok egyike nincsen megfelelően konfigurálva.

Az ok gyakran az, hogy a DB2COMM profilváltozó nincs, vagy helytelenül van meghatározva. Rendszerint a probléma a DB2COMM változó és az adatbáziskezelő konfigurációjában meghatározott nevek (pl. svcename, nname vagy tpname) közötti eltérésből adódik.

Egy lehetséges eset, ha egy korábban sikeres kapcsolat használata során érkezik az SQL5043 hibaüzenet, miközben a konfiguráció változatlan maradt. Ez TCP/IP protokoll használata közben állhat elő, amikor a távoli rendszer valamilyen okból rendellenesen fejezi be a kapcsolatot. Ha ez történik, az ügyfélen úgy tűnhet, hogy a kapcsolat még mindig létezik, és lehet, hogy további beavatkozás nélkül még visszaállítható a kapcsolat az alábbi parancsok kiadásával.

Valószínűleg az átjáróhoz kapcsolódó ügyfelek egyike még hozzáfér a TCP/IP porthoz. Minden, az átjáróhoz kapcsolódó ügyfél gépen kiadandóak a következő parancsok:

  1. db2 terminate
  2. db2stop

SQL30020

Tünet

SQL30020N A végrehajtás elosztott protokoll hiba miatt hiúsult meg, amely kihatással lesz az ezután következő parancsok és SQL utasítások sikeres végrehajtására is.

Megoldás

E hiba esetén forduljon a ügyfélszolgálathoz.

Keresse meg a db2dumpkönyvtárban az ffdc memóriakiíratást (pid.000). Ezután formázza ezt a memóriakiíratás fájlt a db2fdump segítségével, és keresse meg az eredményfájlban az "ERROR"-t! Lehet, hogy itt talál egy MVS ABEND bejegyzést. Ebben az esetben további információt talál az MVS kezelőpulton, és keresse meg a rendellenes befejezés kódot a DB2 for MVS Messages and Codes kézikönyvben!

SQL30060

Tünet

SQL30060N "<jogosultságazonosító>" nem rendelkezik a <művelet>" művelet végrehajtásához szükséges jogosultságokkal.

Megoldás

A DB2 for MVS vagy a DB2 for OS/390 termékhez kapcsolódáskor a Kommunikációs adatbázis (CDB, Communications database) táblák nincsenek megfelelően frissítve. Erről többet:

SQL30061

Tünet

Nem a megfelelő gazdagép vagy AS/400 adatbázis-kiszolgáló helyhez kapcsolódott - nem található céladatbázis.

Megoldás

Lehet, hogy a DCS katalógusbejegyzésben van a rossz kiszolgáló adatbázis megadva. Ha ez a helyzet, az alkalmazáshoz az SQLCODE -30061 visszatérési kód érkezik.

Ellenőrizze a DB2 csomópontot, az adatbázist és a DCS katalógusbejegyzéseket! A DCS katalógusbejegyzésben lévő céladatbázis-név mezőnek a környezettől függően meg kell egyeznie az adatbázis nevével. Például DB2 Universal Database for OS/390 adatbázis esetében a használandó név meg kell egyezzen a rendszerbetöltő adathalmaz (Boot Strap Data Set, BSDS) "LOCATION=locname" mezőjében lévővel, amely a DSNL004I üzenetben is (LOCATION=location) szerepel az elosztott adat szolgáltatás (Distributed Data Facility, DDF) indulásakor. Erről bővebben az alábbi helyeken olvashat: helyeken: Az adatbázis fogalma és Az adatbázis-hozzáférési katalógusok frissítése.

A DB2 Connect Repülőrajt kézikönyvben is vannak példák DB2 katalógusok frissítésére. Tekintse át a "DB2 katalógusok frissítése" című szakaszokat az SNA konfigurációt leíró fejezetekben, vagy tekintse át a "Gazda vagy AS/400 adatbázisok konfigurálása DB2 Connect esetén" és a "TCP/IP kapcsolat konfigurálása" című szakaszt!

A helyes parancsok APPC vagy APPN csomópont esetén:

   db2 catalog appc node <csomópontnév> remote
<jelképes_célnév> security program
   db2 catalog dcs database <helyi_név> as <valódi_adatbázisnév>
   db2 catalog database <helyi_név> as <fedőnév> at node
<csomópontnév>
                authentication dcs

TCP/IP csomópont esetén a megfelelő parancsok:

   db2 catalog tcpip node <csomópontnév> remote
<gazdanév_vagy_cím>
                server <portszám_vagy_szolgáltatásnév>
   db2 catalog dcs database <helyi_név> as <valódi_adatbázisnév>
   db2 catalog database <helyi_név> as <fedőnév> at node
<csomópontnév>
                authentication dcs

Ezután a következő parancs kiadásával kapcsolódhat az adatbázishoz:

   db2 connect to <fedőnév> user <felhasználói_név> using
<jelszó>

SQL30073 119C visszatérési kóddal CONNECT során

Tünet

Az SQL30073 üzenet a 119C visszatérési kóddal jön létre. Ez akkor történik, ha a cél kiszolgáló adatbázis nem támogatja a (DB2 Connect terméken keresztül kapcsolódó) DB2 ügyfél által használt kódlapot. A kódlap a DB2 ügyfelet futtató működési környezet konfigurációjából származik.

További információt talál a következő helyen: Administration Guide.

Megoldás

Ezt a problémát általában úgy oldhatja meg, hogy egy javítást telepít a cél kiszolgáló adatbázis rendszerbe. Lépjen kapcsolatba a megfelelő szolgáltató szervezettel és szerezze be, illetve alkalmazza azokat a javításokat, amelyeket a tünetre javasolnak!

Ideiglenesen úgy kerülheti meg a problémát, ha felülbírálja az alapértelmezett kódlapot a DB2CODEPAGE környezeti változó beállításával. Ellenőrizze a területi beállításokat vagy állítsa be a változó értékét a következőképpen: DB2CODEPAGE=850.

UNIX környezetekben lehet, hogy a felhasználó át tud kapcsolni egy másik kódlapra, ha a LANG környezeti változót más értékre állítja.

SQL30081N 1 visszatérési kóddal

Tünet

A tünet a következő üzenet és egy SNA értelmezési kód:

  db2 connect to
<adatbázisnév> user <felhasználói_azonosító>
  Enter password for <felhasználói_azonosító>:
  SQL30081N  A communication error has been detected.
  Communication protocol
  being used: "APPC".  Communication API being used: "CPI-C".
  Location where
  the error was detected: "".  Communication function detecting
  the error:
  "cmallc".  Protocol specific error code(s): "1", "*",
  "0x10030021".
   SQLSTATE=08001

Megoldás(ok)

Ebben a mintában az érzékelési kód 10030021.

Az ezen hibaüzenettel társított leggyakoribb érzékelési kódok és ezen esetek megoldására tett javaslatok a következők:

  1. SQL30081N 1 visszatérési kóddal és 0877002C SNA értelmezési kóddal
    

    Rossz hálózatnév van megadva.

  2. SQL30081N 1 visszatérési kóddal és ffff0003 SNA értelmezési kóddal
    

    Rossz MAC cím van megadva, vagy az SNA csatolás nem aktív.

  3. SQL30081N 1 visszatérési kóddal és 10030021 SNA értelmezési kóddal
    

    LU típus nem egyezik.

  4. SQL30081N 1 visszatérési kóddal és 084B6031 SNA értelmezési kóddal
    

    DB2 for MVS vagy DB2 for OS/390 gazdagépen a DSNZPARM-ban lévő MAXDBAT értéke 0.

Más javaslatok:

  1. A Helyi LU profil létrehozásakor alapértelmezett LU-ként határozza meg az LU-t. Például CM/2-ben az SNA szolgáltatáslista panelen ezt kétféle módon is megteheti. Vagy:
  2. Ellenőrizze, hogy az SNA elindult-e a DB2 Connect átjárón.
  3. Ha a DB2 for MVS vagy a DB2 for OS/390 terméket használja, ellenőrizze, hogy az elosztott adat szolgáltatás (Distributed Data Facility, DDF) címtartomány elindult-e és a DB2 fut-e.

SQL30081N 2 visszatérési kóddal

Tünet

Az SQL30081N üzenet 2 visszatérési kóddal és 08120022 SNA értelmezési kóddal érkezik.

Megoldás

Az NCP-n (a csatolás gazdagép végén) lévő NUMILU paraméter esetleg az alapértékre (0) van állítva. Ellenőrizze! A szükséges módosítás végrehajtása után próbálkozzon újra!

SQL30081N 9 visszatérési kóddal

Tünet

A tünet a következő üzenet (az SNA értelmezési kód nem kötelező ebben az esetben):

   
   db2 connect to <adatbázis> user <felhasználói_azonosító>
   SQL30081N  A communication error has been detected.
   Communication protocol
   being used: "APPC".  Communication API being used: "CPI-C".
   Location where
   the error was detected: "".  Communication function detecting
   the error:
   "cmsend".  Protocol specific error code(s): "9", "*",
   "0x10086021".
   SQLSTATE=08001

Megoldás

A probléma az, hogy a tranzakcióprogram-név (TPNAME) nincs helyesen meghatározva a DB2 Connect rendszeren. Lehet például, hogy frissítette az SNA konfigurációt, de még nem ellenőrizte a DB2 Connect átjárónál. További részleteket talál a következő kézikönyvekben: DB2 Connect Enterprise Edition for OS/2 and Windows Quick Beginnings vagy DB2 Connect Personal Edition Repülőrajt.

SQL30081N 10 visszatérési kóddal

Tünet

A tünet a következő üzenet (az SNA értelmezési kód nem kötelező):

   SQL30081N  A communication error has been detected.
   Communication protocol
   being used: "APPC".  Communication API being used: "CPI-C".
   Location where
   the error was detected: "".  Communication function detecting
   the error:
   "cmrcv".  Protocol specific error code(s): "10", "*", "*".
   SQLSTATE=08001

Megoldás

Ellenőrizze, hogy a DB2 helyesen van-e telepítve.

Ha DB2 Connect for OS/2 átjárót használ, a következőt fogja látni, ha a TP (tranzakcióprogram) -név nincsen megfelelően meghatározva:

   Protocol specific error code(s): "10", "*", "0x084C0000".
   SQLSTATE=08001

Például CM/2-ben ebben az esetben így kell a TP nevet meghatározni:

   Transaction
program name        = 'tpname'    (a felhasználó adja meg)
   OS/2 program path and file name = notused

és (a következő CM/2 konfigurációs képernyőn)

   Presentation type - background
   Operation type - Queued, operator preloaded

SQL30081N 20 visszatérési kóddal

Tünet

   SQL30081N  A communication error has been detected.
   Communication protocol
   being used: "APPC".  Communication API being used: "CPI-C".
   Location where
   the error was detected: "".  Communication function detecting
   the error:
   "xcstp".  Protocol specific error code(s): "20", "*", "*".
   SQLSTATE=08001

Megoldás

Ellenőrizze, hogy elindult-e az SNA alrendszer a DB2 Connect rendszeren!

SQL30081N 27-es visszatérési kóddal

Tünet

Az SQL30081N üzenet 27-es visszatérési kóddal és 800Axxxx SNA értelmezési kóddal érkezik.

Megoldás

A VTAM elérési útvonal tájékoztató egység (Path Information Unit, PIU) túl nagy.

SQL30081N 79 visszatérési kóddal

Tünet

   SQL30081N  A communication error has been detected.
   Communication protocol
   being used: "TCP/IP".  Communication API being used: "SOCKETS".
   Location
   where the error was detected: "".  Communication function
   detecting the error:
   "connect".  Protocol specific error code(s): "79", "*", "*".
   SQLSTATE=08001

Megoldás(ok)

Ez a hiba akkor fordulhat elő, ha egy távoli ügyfél nem kapcsolódik DB2 Connect átjáróhoz. Akkor is előfordulhat, ha valaki a DB2 Connect átjáróról gazdagépre kapcsolódik.

  1. Lehet, hogy a DB2COMM profilváltozó helytelenül van beállítva a DB2 Connect átjárón. Ellenőrizze! Például a DB2 Extended Enterprise Edition AIX rendszerben történő futtatásakor az db2set db2comm=tcpip parancsnak meg kell jelenni az sqllib/db2profile-ban.
  2. Lehet, hogy a DB2 ügyfélen és a DB2 Connect átjárón megadott TCP/IP szolgáltatásnév és/vagy portszám specifikációk között eltérés van. Ellenőrizze a bejegyzéseket a TCP/IP services fájlokban mindkét gépen.
  3. Ellenőrizze, hogy a DB2 elindult-e a DB2 Connect átjárón. Állítsa be az adatbáziskezelő konfiguráció diaglevel értékét 4-re a következő paranccsal:
    db2 update dbm cfg using diaglevel 4
    
    A DB2 leállítása és újraindítása után nézze meg a db2diag.log fájlban, hogy a DB2 TCP/IP kommunikáció elindult-e. Az alábbihoz hasonló kimenetet kell találnia:
       1998-02-03-12.41.04.861119   Instance:svtdbm2   Node:00
       PID:86496(db2sysc)   Appid:none
       common_communication  sqlcctcp_start_listen   Probe:80
       DIA3000I "TCPIP" protocol support was successfully started.
    

SQL30081N 10032 protokollfüggő hibakóddal

Tünet

   SQL30081N  A communication error has been detected.
   Communication protocol
   being used: "TCP/IP".  Communication API being used: "SOCKETS".
   Location
   where the error was detected: "9.21.85.159".  Communication
   function detecting
   the error: "send".  Protocol specific error code(s): "10032",
   "*", "*".
   SQLSTATE=08001

Megoldás

Ezt a hibaüzenetet akkor kaphatja, amikor olyan géptől próbál szétkapcsolódni, amelyen a TCP/IP kommunikáció már meghiúsult. Hárítsa el a problémát a TCP/IP alrendszerben.

A legtöbb gépen a TCP/IP protokoll egyszerű újraindítása megoldja a problémát. Néha az egész számítógép újraindítására is szükség lehet.


[ Oldal eleje | Előző oldal | Következő oldal | Tartalom | Tárgymutató ]