Connect schlägt fehlt: SQL1031N
- Dieses Thema hat 5 Antworten und 1 Teilnehmer, und wurde zuletzt aktualisiert vor 16 Jahre, 10 Monaten von
Anonym.
-
AuthorPosts
-
31. Oktober 2006 um 12:27 Uhr #2734
AnonymInaktivHallo,
ich möchte folgendes Problem schildern:
Windows 2003-Server, DB2 UDB 8.1
Auf eine lokale Datenbank kann "von heute auf morgen" nicht mehr zugegriffen werden. Fehlermeldung beim connect:
[IBM][CLI Driver] SQL1013N The database alias name or database
name could not be found. SQLSTATE=42705"db2 list db directory" listet die Datenbank jedoch noch:
Database alias = XXXXXXXX
Database name = XXXXXXXX
Database drive = D:DB2
Database release level = a.00
Comment =
Directory entry type = Indirect
Catalog database partition number = -1Database drive ist ok, Tablespaces sind noch vorhanden. Was kann die Ursache hierfür sein? Was bedeutet insbesondere "Catalog database partition number = -1, normalerweise ist dieser Wert 0? Würde mich über Ideen sehr freuen!
Vielen Dank und Gruß,
Andreas
2. November 2006 um 19:39 Uhr #3128
AnonymInaktivHallo Andreas,
ist vielleicht das Node oder Database Directory beschädigt? Schau mal unter lw:ProgrammeIBMsqllibinstance z.B. DB2SQLDBDIR und SQLDBBAK und SQLNODIR und SQLNOBAK.
Um welchen DB2 Stand (db2level) handelt es sich?
Ist die DB2 Instance bzw der DB2 Server mal durchgestartet worden?
Viele Grüße
Gernot
3. November 2006 um 11:27 Uhr #3401
AnonymInaktivHallo Gernot,
die Installation (bei uns auf c:appssqllib) sieht in Ordnung aus. db2start und db2stop haben wir schon mehrfach durchgeführt, auch Reboot der Maschine usw. Andere Datenbanken funktionieren einwandfrei.
db2level ergibt:
DB21085I Â Instance "DB2" uses "32" bits and DB2 code release "SQL08010" with
level identifier "01010106".
Informational tokens are "DB2 v8.1.0.36", "s021023", "", and FixPak "0".
Product is installed at "C:APPSSQLLIB".Es wäre klasse, wenn Du einen Tipp hättest.
viele Grüße,
Andreas
3. November 2006 um 17:30 Uhr #3573
AnonymInaktivHi Andreas,
mit Starten, Stoppen oder Booten ist das Problem nicht zu beheben, da es ein Problem mit den Einträgen in den DB2-DB-/Node-Directories ist.
IBM sagt:
Problem: SQL1031 error occurs when using switchname in the db2nodes.cfg fileSolution
Symptom: Error SQL1031 occurs intermittently even though the database name does exist in the system and local database directory.Possible Cause: DB2 could not resolve the correct nodenumber and therefore defaulted to -1.
Action: Change the switchname to the hostname in the second column in the db2nodes.cfg file.
Ich würde zuerst ein "db2 list node directory machen" (und auch erwarten, daß nichts drin steht), dann ein "db2 list db directory on …" für das lokale DB-Directory. Wenn der Eintrag ok ist, würde ich die Datenbank aus dem zentralen DB Directory entkatalogisieren und nochmal neu katalogisieren – in der Hoffnung, daß dann die Partitionsnummer wieder 0 ist. Ob es hilft, weiß ich aber nicht.
MfG
AxelP
6. November 2006 um 14:38 Uhr #3696
AnonymInaktivHallo Axel,
danke für die Antwort! db2 list node directory ergibt in der Tat
SQL1037W The node directory is empty. SQLSTATE=01606
"db2 list db directory on D:" (was korrekt sein sollte") gibt jedoch nicht den Eintrag für die Datenbank. Uncatalog und catalog hilft ebenfalls nicht – das Problem bleibt weiterhin bestehen.
Gruss Andreas
7. November 2006 um 9:02 Uhr #3781
AnonymInaktivHi Andreas,
zunächst müßte der lokale Eintrag der DB gefunden werden – mit db2 list db directory on D:DB2 (?).
Dann frage ich mich, wie die DB wieder korrekt katalogisiert werden kann, wenn der Eintrag im lokalen Directory nicht zu finden ist. Irgendwo in dieser Ecke muß das Problem liegen.
MfG
AxelP
Nachtrag: Auch ich habe im Directory (unter dem letzten noch verbliebenen Windows) Partitionsnummern = -1 – allerdings für "ferne" Datenbanken – und kann dennoch auf sie zugreifen. Bei den lokalen DBs ist der Wert jedoch 0.
Dann wäre vielleicht noch interessant, welch DB2-Edition installiert ist (Workgroup oder ESE).
-
AuthorPosts
You must be logged in to reply to this topic.