Gebruikershandleiding

De meestvoorkomende problemen bij DB2 Connect

Deze paragraaf geeft een overzicht van de meestvoorkomende verbindingsproblemen bij het gebruik van DB2 Connect. Voor elk probleem wordt de volgende informatie verstrekt:

Opmerkingen:

  1. Raadpleeg de handleiding Aan de slag en de laatste uitgave van de release-opmerkingen voor de meest recente informatie over de aanbevolen fixes voor het door u gebruikte product.

  2. Voor combinaties van bericht- en retourcodes voor APPC-communicatie is het mogelijk dat er ook een SNA-aftastcode wordt vermeld. Op dit moment moet informatie over de SNA-aftastcode bij een bepaald bericht uit het SNA-subsysteem worden verkregen.

    In enkele gevallen kunnen SNA-aftastcodes worden bekeken door de systeemlogboeken te raadplegen. Of dit het geval is, hangt af van het SNA-subsysteem dat wordt gebruikt. In sommige gevallen moet u de fout opnieuw laten optreden terwijl de SNA-tracering actief is om de informatie over de aftastcode te verkrijgen.

  3. De term gateway heeft betrekking op DB2 Connect Enterprise Edition.

SQL0965 of SQL0969

Probleem

De berichten SQL0965 en SQL0969 kunnen met een aantal verschillende retourcodes worden verzonden vanaf DB2 Universal Database for AS/400, DB2 Universal Database for OS/390, DB2 for MVS/ESA en DB2 for VM &VSE.

Wanneer u met een van beide berichten wordt geconfronteerd, moet u de oorspronkelijke SQL-code opzoeken in de documentatie van de databaseserver die het bericht verzendt.

Oplossing

De SQL-code die van de hostdatabase is ontvangen, kan niet worden vertaald. Corrigeer het probleem op basis van de foutcode en geef de opdracht opnieuw op.

SQL1338 tijdens CONNECT

Probleem / oorzaak

De symbolische bestemming is niet of onjuist gedefinieerd.

Dit kan voorkomen wanneer er een APPC-knooppunt wordt gebruikt en de symbolische bestemming die is opgegeven in de DB2-knooppuntdirectory niet overeenkomt met een CPI-C-item in de lokale configuratie van het APPC-communicatiesubsysteem.

Een andere mogelijke oorzaak is dat er meer dan een stack op uw computer is geïnstalleerd. Wellicht moet u PATH en LIBPATH controleren om er zeker van te zijn dat eerst wordt verwezen naar de stack die u wilt gebruiken.

Oplossingen

  1. Controleer of de profielnaam voor extra CPIC-informatie in de DB2-knooppuntdirectory overeenkomt met de SNA-configuratie (deze is hoofdlettergevoelig).
  2. Wellicht moet u PATH en LIBPATH controleren om er zeker van te zijn dat eerst wordt verwezen naar de SNA-stack die u wilt gebruiken.

SQL1403N tijdens CONNECT

Probleem

SQL1403N De gebruikersnaam en/of het wachtwoord is onjuist.

Oplossing

  1. De verificatie van de gebruiker kan niet worden uitgevoerd op het DB2 Connect-werkstation. Controleer of de gebruikersmachtigingen op het DB2 Connect-werkstation moeten worden geverifieerd.

    Zo ja, dan moet u controleren of het juiste wachtwoord is opgegeven in de instructie CONNECT.

    Zo nee, dan is de systeemdatabasedirectory onjuist in de catalogus opgenomen met gebruik van AUTHENTICATION SERVER (dit is de standaardwaarde wanneer AUTHENTICATION onjuist is opgegeven). In dat geval kunt u dit item opnieuw in de catalogus opnemen door gebruik te maken van AUTHENTICATION DCS of CLIENT.

  2. Het wachtwoord is niet beschikbaar om naar de doelserverdatabase te worden gezonden. Wanneer de systeemdatabasedirectory in de catalogus is opgenomen door middel van AUTHENTICATION DCS, dan moet er een wachtwoord van de DB2 Client naast de doelserverdatabase worden overgebracht. Op sommige platforms, zoals AIX, kan het wachtwoord alleen worden verkregen als het in de instructie CONNECT wordt opgegeven.

SQL5043N

Probleem

Ondersteuning van een of meer communicatieprotocollen is niet op de juiste manier gestart. De kernfuncties van Database Manager zijn echter wel correct gestart.

Wellicht is het protocol TCP/IP niet gestart op de gateway van DB2 Connect. Het is mogelijk dat een eerdere clientverbinding correct is gestart.

Als diaglevel = 4, kan db2diag.log een vergelijkbaar item bevatten, zoals:

   
   1997-05-30-14.09.55.321092   Instance:svtdbm5   Node:000
   PID:10296(db2tcpcm)   Appid:none
   common_communication  sqlcctcpconnmgr_child   Probe:46
   DIA3205E Het ingestelde socketadres "30090" in het bestand
   met TCP/IP-functies is vereist voor
   TCP/IP-serverondersteuning maar is in gebruik door een
   ander proces.

Oplossing

Deze waarschuwing geeft aan dat DB2 Connect, als gateway voor clients op afstand, moeite heeft met een of meer communicatieprotocollen van clients. Het kan hierbij gaan om TCP/IP, APPC of andere protocollen; het bericht geeft doorgaans aan dat een van de communicatieprotocollen voor DB2 Connect onjuist is geconfigureerd.

De oorzaak is vaak dat de profielvariabele niet of onjuist is gedefinieerd. In het algemeen wordt het probleem veroorzaakt doordat de variabele DB2COMM en de namen die in de configuratie van Database Manager zijn gedefinieerd niet overeenkomen (bijvoorbeeld svcename, nname of tpname).

In een mogelijk scenario is er een eerder succesvolle verbinding, waarbij vervolgens het foutbericht SQL5043 optreedt terwijl de configuratie niet is gewijzigd. Dit kan optreden bij gebruik van het protocol TCP/IP als het systeem op afstand de verbinding om een of andere reden abnormaal beëindigt. Wanneer dit gebeurt, lijkt het soms alsof er nog een verbinding op de client bestaat en kan de verbinding misschien zonder verdere tussenkomst worden hersteld door de onderstaande opdrachten op te geven.

Waarschijnlijk heeft een van de clientverbindingen met de gateway nog steeds een handle op de TCP/IP-poort. Geef op elke client die is verbonden met de gateway een van de volgende opdrachten op:

  1. db2 terminate
  2. db2stop

SQL30020

Probleem

SQL30020N Een instructie kon niet worden uitgevoerd als gevolg van een fout in een distributieprotocol. Deze fout is van invloed op het correct uitvoeren van opeenvolgende opdrachten en SQL-instructies.

Oplossingen

Bij deze fout moet u contact opnemen met een servicemedewerker.

Controleer de directory db2dump op een ffdc-dump (pid.000). Deel dit dumpbestand vervolgens in met db2fdump en zoek in het resulterende bestand op "ERROR". Hier vindt u mogelijk een MVS ABEND. Raadpleeg in dat geval de MVS-console voor aanvullende informatie en zoek de code voor abnormaal einde op in de handleiding DB2 for MVS Messages and codes.

SQL30060

Probleem

SQL30060N "<machtigings-ID>" is niet gemachtigd om bewerking "<bewerking>" uit te voeren.

Oplossing

Bij het maken van een verbinding met DB2 for MVS of DB2 for OS/390, zijn de CDB-tabellen (Communications Database) onjuist bijgewerkt. Raadpleeg:

SQL30061

Probleem

Er wordt een verbinding tot stand gebracht met een onjuiste locatie voor de host- of AS/400-databaseserver - er is geen doeldatabase gevonden.

Oplossing

Mogelijk is een onjuiste naam opgegeven voor de databaseserver in de DCS-directory. Wanneer dit gebeurt, wordt SQLCODE -30061 naar de toepassing teruggezonden.

Controleer het DB2-knooppunt, de database en de items van de DCS-directory. Het veld met de doeldatabasenaam in het DCS-directorygegeven moet overeenkomen met de naam van de database op het platform. Voor een DB2 Universal Database for OS/390 database moet bijvoorbeeld de naam worden gebruikt die ook is opgegeven in het BSDS-veld (Boot Strap Data Set) "LOCATION=locnaam" dat ook wordt vermeld in het bericht DSNL004I (LOCATION=locatie) wanneer de Distributed Data Facility (DDF) wordt gestart. Zie ook Het concept database en Databasedirectory's bijwerken.

In de handleiding Aan de slag met DB2 Connect vindt u ook voorbeelden om de DB2-catalogi bij te werken. Zie de paragraaf "De DB2-directory's bijwerken" in elk hoofdstuk waarin de SNA-configuratie wordt beschreven of het hoofdstuk "Host- en AS/400-databases configureren voor DB2 Connect" en de paragraaf "De TCP/IP-verbinding configureren".

De juiste opdrachten voor een APPC- of APPN-knooppunt zijn:

   db2 catalog appc node <knooppuntnaam> remote <sym_best_naam> security program
   db2 catalog dcs database <lokale_naam> as <werkelijke_dbnaam>
   db2 catalog database <lokale_naam> as <alias> at node <knooppuntnaam>
                authentication dcs

De juiste opdrachten voor een TCP/IP-knooppunt zijn:

   db2 catalog tcpip node <knooppuntnaam> remote <hostnaam_of_adres>
                server <poortnr_of_servicenaam>
   db2 catalog dcs database <lokale_naam> as <werkelijke_dbnaam>
   db2 catalog database <lokale_naam> as <alias> at node <knooppuntnaam>
                authentication dcs

Voor een verbinding met de database geeft u het volgende op:

   b2 connect to <alias> user <gebruikersnaam> using <wachtwoord>

SQL30073 met retourcode 119C tijdens CONNECT

Probleem

Bericht SQL30073 wordt verzonden met retourcode 119C. Dit gebeurt wanneer de doelserverdatabase de codetabel niet ondersteunt die wordt gebruikt door de DB2-client (via DB2 Connect). De codetabel wordt afgeleid van de configuratie van de verwerkingsomgeving waarin de DB2-client werkt.

Zie de Administration Guide voor meer informatie.

Oplossing

Dit probleem kan veelal worden opgelost door het installeren van een fix op het systeem van de doelserverdatabase. Vraag de desbetreffende serviceorganisatie naar een fix die dit probleem kan verhelpen.

Als tijdelijke oplossing kan de gebruiker de standaardcodetabel omzeilen door het instellen van de omgevingsvariabele DB2CODEPAGE. Controleer de locale of stel DB2CODEPAGE=850 in.

Op UNIX-platforms is de gebruiker mogelijk in staat om naar een andere codetabel over te schakelen door de omgevingsvariabele LANG op een andere waarde in te stellen.

SQL30081N met retourcode 1

Probleem

Bij dit probleem wordt het volgende bericht verzonden met een SNA-aftastcode:

  db2 connect to <databasenaam> user <gebruikers-id>
  Geef wachtwoord op voor <gebruikers-id>:
  SQL30081N  Er is een communicatiefout gevonden.
  Communicatieprotocol
  dat wordt gebruikt: "APPC". Communicatie-API die wordt gebruikt: "CPI-C".
  Locatie waar de fout is opgetreden: "". Communicatiefunctie die
  de fout heeft vastgesteld:
  "cmallc". Protocolspecifieke foutcode(s): "1", "*",
  "0x10030021".
   SQLSTATE=08001

Oplossing(en)

In dit voorbeeld is de aftastcode 10030021.

De meest voorkomende aftastcodes bij dit foutbericht en de aanbevolen oplossingen in deze gevallen zijn:

  1. SQL30081N met retourcode 1 en SNA-aftastcode 0877002C
    

    Er is een onjuiste netwerknaam opgegeven.

  2. SQL30081N met retourcode 1 en SNA-aftastcode ffff0003
    

    Er is een onjuist MAC-adres opgegeven of de SNA-koppeling is niet actief.

  3. SQL30081N met retourcode 1 en SNA-aftastcode 10030021
    

    Het LU-type komt niet overeen.

  4. SQL30081N met retourcode 1 en SNA-aftastcode 084B6031
    

    MAXDBAT in DSNZPARM (op een DB2 for MVS- of DB2 for OS/390-host) is ingesteld op 0.

Andere suggesties zijn:

  1. Definieer de LU als de standaard-LU wanneer u het profiel lokale LU maakt. Doe het volgende in de SNA Feature-lijst in CM/2:
  2. Controleer of SNA is gestart op de DB2 Connect-gateway.
  3. Controleer, wanneer u gebruikmaakt van DB2 for MVS of DB2 for OS/390, of de DDF-adresruimte (Distributed Data Facility) is gestart en of DB2 actief is.

SQL30081N met retourcode 2

Probleem

Bericht SQL30081N wordt ontvangen met retourcode 2 en SNA-aftastcode 08120022.

Oplossing

De parameter NUMILU op de NCP (hostzijde van de koppeling) kan zijn ingesteld op de standaardwaarde (0). Controleer dit. Wijzig voordat u het opnieuw probeert zonodig de NCP-definitie nadat u de wijziging hebt geactiveerd.

SQL30081N met retourcode 9

Probleem

Het volgende bericht wordt verzonden (de SNA-aftastcode is in dit geval niet vereist.):

   db2 connect to <database> user <gebruikers-id>
   SQL30081N  Er is een communicatiefout gevonden.
   Communicatieprotocol
   dat wordt gebruikt: "APPC". Communicatie-API die wordt gebruikt: "CPI-C".
   Locatie waar de fout is opgetreden: "". Communicatiefunctie die
   de fout heeft vastgesteld:
   "cmsend". Protocolspecifieke foutcode(s): "9", "*",
   "0x10086021".
   SQLSTATE=08001

Oplossing

De naam van het transactieprogramma (TPNAME) is onjuist gedefinieerd op het DB2 Connect-systeem. U hebt bijvoorbeeld wel uw SNA-configuratie bijgewerkt, maar deze nog niet op de DB2 Connect-gateway geverifieerd. Raadpleeg DB2 Connect Enterprise Edition for OS/2 and Windows NT Quick Beginnings of Aan de slag met DB2 Connect Personal Edition voor meer details.

SQL30081N met retourcode 10

Probleem

Het volgende bericht wordt verzonden (de SNA-aftastcode is niet vereist):

SQL30081N  Er is een communicatiefout gevonden.
   Communicatieprotocol
   dat wordt gebruikt: "APPC". Communicatie-API die wordt gebruikt: "CPI-C".
   Locatie waar de fout is opgetreden: "". Communicatiefunctie die
   de fout heeft vastgesteld:
   "cmrcv". Protocolspecifieke foutcode(s): "10", "*", "*".
   SQLSTATE=08001

Oplossing

Controleer of DB2 op de juiste manier is geïnstalleerd.

Als u gebruikmaakt van een DB2 Connect voor OS/2-gateway, kunt u het volgende bericht zien als de TP-naam niet juist is gedefinieerd:

   Protocolspecifieke foutcode(s): "10", "*", "0x084C0000".
   SQLSTATE=08001

In CM/2 moet u deze naam bijvoorbeeld als volgt definiëren:

   Transaction program name        = 'tpname'    (user defined)
   OS/2 program path and file name = notused

en (in het volgende configuratiescherm van CM/2)

   Presentation type - background
   Operation type - Queued, operator preloaded

SQL30081N met retourcode 20

Probleem

   SQL30081N  Er is een communicatiefout gevonden.
   Communicatieprotocol
   dat wordt gebruikt: "APPC". Communicatie-API die wordt gebruikt: "CPI-C".
   Locatie waar de fout is opgetreden: "". Communicatiefunctie die
   de fout heeft vastgesteld:
   "xcstp". Protocolspecifieke foutcode(s): "20", "*", "*".
   SQLSTATE=08001

Oplossing

Controleer of het SNA-subsysteem is gestart op het DB2 Connect-systeem.

SQL30081N met retourcode 27

Probleem

Bericht SQL30081N is ontvangen met retourcode 27 en SNA-aftastcode 800Axxxx.

Oplossing

De VTAM-padinformatie (PIU) is te groot.

SQL30081N met retourcode 79

Probleem

   SQL30081N  Er is een communicatiefout gevonden.
   Communicatieprotocol
   dat wordt gebruikt: "TCP/IP". Communicatie-API die wordt
   gebruikt: "SOCKETS".
   Locatie waar de fout is opgetreden: "". Communicatiefunctie
   die de fout heeft vastgesteld:
   "connect". Protocolspecifieke foutcode(s): "79", "*", "*".
   SQLSTATE=08001

Oplossing(en)

Deze fout kan optreden wanneer een client op afstand er niet in slaagt een verbinding te maken met een DB2 Connect-gateway. Het probleem kan zich ook voordoen wanneer er een verbinding tot stand wordt gebracht van een DB2 Connect-gateway met een host.

  1. De profielvariabele DB2COMM is mogelijk onjuist ingesteld op de DB2 Connect-gateway. Controleer dit. De opdracht db2set db2comm=tcpip moet bijvoorbeeld in sqllib/db2profile voorkomen wanneer DB2 Extended Enterprise Edition wordt uitgevoerd op AIX.
  2. Het is mogelijk dat de functienaam van TCP/IP en/of poortnummerspecificaties niet overeenkomen op de DB2-client en de DB2 Connect-gateway. Controleer de gegevens in de services-bestanden van TCP/IP op beide computers.
  3. Controleer of DB2 op de gateway van DB2 is gestart. Stel het diaglevel van de Database Manager Configuration in op 4 met de opdracht:
    db2 update dbm cfg using diaglevel 4
    
    Bekijk na het beëindigen en opnieuw opstarten het bestand db2diag.log om te controleren of de DB2 TCP/IP-communicatie is gestart. De uitvoer moet er ongeveer als volgt uitzien:
       1998-02-03-12.41.04.861119   Instance:svtdbm2   Node:00
       PID:86496(db2sysc)   Appid:none
       common_communication  sqlcctcp_start_listen   Probe:80
       DIA3000I Protocolondersteuning van "TCPIP" is gestart. 
    

SQL30081N met protocolspecifieke foutcode 10032

Probleem

   SQL30081N  Er is een communicatiefout gevonden.
   Communicatieprotocol
   dat wordt gebruikt: "TCP/IP". Communicatie-API die wordt
   gebruikt: "SOCKETS".
   Locatie waar de fout is opgetreden: "9.21.85.159".
   Communicatiefunctie die de fout heeft
   vastgesteld: "send". Protocolspecifieke foutcode(s): "10032",
   "*", "*".
   SQLSTATE=08001

Oplossing

Dit foutbericht kan worden ontvangen wanneer wordt geprobeerd de verbinding te verbreken met een computer waarop TCP/IP-communicatie al is mislukt. Corrigeer het probleem met het TCP/IP-subsysteem.

Op de meeste computers kan het probleem worden opgelost door het TCP/IP-protocol opnieuw te starten. Soms is het nodig om de communicatie opnieuw te configureren.


[ Begin van pagina | Vorige pagina | Volgende pagina | Inhoud | Trefwoordenregister ]