Posts Tagged: ‘IBM DB2’

Quick-Tipp: Nach Umbenennung eines Sametime-Servers startet DB2 nicht mehr

21. Oktober 2014 Posted by Thomas Bahn

Quick-TippIBM Sametime
Kürzlich habe ich den Namen eines Sametime-Servers geändert, genauer den Hostnamen der (virtuellen) Maschine. Auf der gleichen Box läuft auch der IBM DB2-Server, der für den System Console-Server und den Proxy-Server benötigt wird. Alles läuft unter Microsoft Windows 2008 R2.

Nach dem für die Umbenennung notwendigen Neustart begrüßte mich der DB2-Dienst mit "SQL1042C Ein Systemfehler ist aufgetreten" ("SQL1042C An unexpected system error occurred") und weigerte sich fortan zu starten - weder als Dienst, noch manuell. Sogar das DB2-Befehlsfenster beendete sich immer sofort wieder.

In den Details der Protokolldateien fand ich die - mehr oder wendiger - informative Meldung: "SQL1022C There is not enogh memory available to process the command".
Zu diesem Zeitpunkt waren aber mehr als 6 GB physischer und sogar ungefähr 20 GB logischer Arbeitsspeicher noch frei!?!

Nach langer, ausgiebiger Recherche kam ich zu dem Schluss, dass mich die Fehlermeldung erfolgreich komplett auf die falsche Fährte gelockt hatte.

DB2 speichert unter Windows einige Informationen, u.a. über lokale Benutzer (in der Form ServerName\Benutzername) und den Hostnamen des Server in der Windows-Registrierung unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\InstalledCopies\DB2COPY1\GLOBAL_PROFILE. (ändere "DB2COPY1", wenn deine Instanz anders heißt).

Wenn ich es vorher gekannt hätte, wäre ich einfach den Anweisungen in diesem Dokument gefolgt: Changing hostname of the DB2 server. Aber ich wollte jetzt nicht erst die Umbenennung rückgängig machen, um alles jetzt einmal "richtig" zu wiederholen.

In diesem Blog-Eintrag How do you rename the Windows machine name for a DB2 v9.1.x database? und vor allem in den zugehörigen Kommentaren fand ich doch noch einen schnellere, einfacheren und direkteren Weg, um das DB2-System zu wieder zum Laufen zu bringen.

Da ich einen Workgroup-Server (WSE = Workgroup Server Edition) habe, entfällt das Anpassen der db2nodes.cfg.

In einer als Administrator gestarteten Eingabeaufforderung habe ich folgende Befehle ausgeführt:
  •  db2extsec -r
  •  db2extsec /a DB2ADMNS /u DB2USERS
  •  db2set -g DB2SYSTEM={NewHostName}
danach die Maschine noch einmal durch gestartet und DB2 lief wieder wie gewohnt!