IBM DB2 Universal Database Release-Informationen Version 8.2 FixPak 4 (äquivalent zu Version 8.1 FixPak 11) und nachfolgende FixPaks Vor Verwendung dieser Informationen und des darin beschriebenen Produkts sollten die allgemeinen Informationen unter Bemerkungen gelesen werden. Diese Veröffentlichung ist eine Übersetzung des Handbuchs Version 8.2 FixPak 4 (equivalent to Version 8.1 FixPak 11) and subsequent FixPaks , herausgegeben von International Business Machines Corporation, USA (C) Copyright International Business Machines Corporation 2005 (C) Copyright IBM Deutschland Informationssysteme GmbH 2005 Möglicherweise sind nicht alle in dieser Übersetzung aufgeführten Produkte in Deutschland angekündigt und verfügbar; vor Entscheidungen empfiehlt sich der Kontakt mit der zuständigen IBM Geschäftsstelle. Änderung des Textes bleibt vorbehalten. Inhaltsverzeichnis Anmerkungen zu den Release-Informationen Informationen zu diesem Release Neuheiten in diesem Release Übersicht der bisherigen Programmkorrekturen Kompatibilitätsanforderungen Abwärtskompatibilität Produktkompatibilität Informationen zu Installation, Migration, Upgrade und Konfiguration Hardware- und Softwarevoraussetzungen Installationshinweise Neue Optionen für den DB2-Installationsassistenten (Windows) Änderungen des DB2-Installationsassistenten (Windows) Einschränkungen bei der Installation der erweiterten Sicherheit (Windows) Verzeichnispfad darf keine Leerzeichen enthalten (Linux und UNIX) Voraussetzung für Red Hat Enterprise Linux 4 JDK-Stufen für DB2 UDB (Linux für IA64 und Linux für POWER) Dekomprimieren von Installationsimages (Linux und UNIX) Nur englische Zeichen im Installationspfad für DB2 UDB zulässig (Windows) Herunterladen und Dekomprimieren von FixPaks für mehrere Produkte (Windows) Installieren von DB2 UDB von Installationsimages (Linux und UNIX) Installieren von DB2 UDB von Installationsimages (Windows) Für Installation über DB2 UDB-Antwortdatei erforderlicher Plattenspeicherplatz Einschränkungen für das Hinzufügen von Produkten mit dem Befehl 'db2setup' (Linux und UNIX) DB2-Webtools Binden von Query Patroller-Paketen nach Anwendung von FixPaks Installieren von Query Patroller mit FixPak 3 oder höher Installieren des Query Patroller-Servers Definieren einer neuen Datenbankpartitionsgruppe in Query Patroller Installieren der Query Patroller-Clienttools Erneutes Erstellen von Betaversionen der Datenbanken Installieren der MDAC-Dateien für die landessprachlichen Versionen von DB2 UDB DB2-Lizenzierungsmaßnahme für DB2 Universal Database Workgroup Server Edition Installieren zusätzlicher asiatischer Schriftarten (Linux) Konfigurieren der Entwicklungszentrale für die Verwendung von Java Development Kits (Linux) Erstellen von Gruppen- und Benutzer-IDs unter den Linux-Varianten United Linux 1.0 und SuSE Linux Hilfesystemdämon startet nicht nach der Installation mit dem Befehl 'db2_install' (UNIX und Linux) Ready for Tivoli-Unterstützung (UNIX) Tool zur Verkleinerung des Installationsimages - db2iprune (Windows) Einschränkungen der Installation der Dokumentation zu DB2 Universal Database Version 8 (Windows) Frühere Installationen auf den neuesten Stand aktualisiert (Windows) Systemvoraussetzungen für DB2 .NET Data Provider (Windows) Installieren von DB2 Version 8-Clients und DB2 Connect PE ohne Administratorrechte (Windows) Anmerkungen zur Migration Technische Hinweise für db2updv8 Rücksetzung auf Version 8.1 nach der Ausführung von db2updv8 nicht unterstützt Migration von EXPLAIN-Tabellen Migrieren von XML Extender von früheren Versionen Migrieren von DB2 Universal Database bei Verwendung von Data Joiner oder einer Replikation Migrieren von DB2 Universal Database (Windows) Migrieren einer 32-Bit-Datenbank von DB2 Version 8 für Windows auf Windows (64 Bit) Migrieren auf DB2 UDB Version 8.2.2 von Version 7 in einer MSCS-Umgebung Datenbankmigration (HP-UX unter IA64) Informationen zur Deinstallation Automatisches Deinstallieren von DB2 UDB (Windows) Produktcode für die Entfernung von 'DB2 Information - Unterstützung' über eine automatische Deinstallation (Windows) Bekannte Einschränkungen, Probleme und Fehlerumgehungen Einschränkungen db2look - Einschränkungen für dynamischen Speichertabellenbereich Tabellenfunktion SNAP_GET_DB gibt unvollständige Ergebnisse zurück IMPORT REPLACE berücksichtigt nicht die Klausel 'NOT LOGGED INITIALLY' Spalten mit sehr langen Zeichenfolgen und LOB-Daten können nicht über die Inplace-Tabellenreorganisation reorganisiert werden In Clientanwendungen kann das Sperren von Blockcursorn inkonsistent sein Data Warehouse-Programm 'Daten mit ODBC in Datei exportieren' Nicht unterstützte Datentypen im integrierten SQL-Debugger der Entwicklungszentrale Strukturierte Typen in der Entwicklungszentrale Einschränkungen der Entwicklungszentrale bei 64-Bit-Betriebssystemen Entwicklungszentrale (Linux) Debug für gespeicherte Prozeduren mit doppelten Anführungszeichen Pfadeinstellungen zur Aktivierung von Java-Routinen für die Kompilierung in der Entwicklungszentrale Einschränkungen der Entwicklungszentrale beim gleichzeitigen Ausführen und Debug gespeicherter Java-Prozeduren Methode DB2SystemMonitor.getServerTimeMicros nicht unterstützt Obligatorische Installation der Laufzeitumgebung für IBM XL C/C++-Compiler (Linux auf iSeries- und pSeries-Systemen, 64 Bit) Universal JDBC Driver Type 2 unter DB2 UDB Version 8.2.2 nicht unterstützt (Linux AMD64) Cursor in PHP-Anwendungen Einschränkung für das CLI/ODBC-Konfigurationsschlüsselwort ConnectNode Einschränkung für die CLI-Funktion SQLColumns Einschränkungen der Bindeoption bei CLI-Paketen Einschränkungen für das CLI-Dienstprogramm LOAD Erstellung der Toolskatalogdatenbank nicht unterstützt (Linux für AMD64) Erstellung der Toolskatalogdatenbank nicht unterstützt (AIX, Solaris-Betriebsumgebung und HP-UX) Speicherbegrenzungen für DB2 UDB Express und DB2 Workgroup Server Edition Version 8.2 Planen eines Warehouse-Prozesses zur Ausführung in Intervallen Einschränkungen der SNA-Unterstützung in Version 8 Problem und Einschränkung bei Sicherheits-Plug-in für DB2 UDB-Clients (Windows) Fehler beim Melden einer erfolgreichen Anmeldung während einer Verbindungsherstellung (AIX) Zweiteilige Benutzer-ID nicht unterstützt (Windows ME) Die Seite zum Laden und Importieren von Spalten unterstützt keine DBCS-Zeichen in IXF-Dateien GUI-Tools für Linux-Betriebssysteme auf AMD64-Systemen Mindestanzeigeeinstellungen für GUI-Tools Falsche Anzeige von GB18030-Zeichen in der Titelleiste von Fenstern Tabellen der Informationskatalogzentrale können nicht partitioniert werden Query Patroller-Einschränkungen bei Inaktivierung von DYN_QUERY_MGMT Query Patroller-Ergebnistabellen jetzt mit Schema DB2QPRT Einschränkungen bezüglich des Diagnoseanzeigers Bekannte Probleme und Fehlerumgehungen Export in eine IXF-Datei mit Indizes in Spalten, die die Zeichen - und + enthalten Fehler CLI0116E oder SQL0428N beim Aufruf der API db2ReadLog Der Befehl "db2gcf -k" schlägt in DB2 UDB Workgroup Server Edition fehl Fehler SQL1224 vom DRDA-Wrapper (AIX) Direktaufrufe in Microsoft Visual Studio .NET Framework 1.1 funktionieren nicht Ländereinstellung für vereinfachtes Chinesisch (AIX) Ländereinstellung für vereinfachtes Chinesisch (Red Hat Linux) Inkompatibilität bei Merant Driver Manager (UNIX) NFS-APAR IY32512 - Nicht verfügbare Threads (AIX) Fehler in der Precompileroption SQLFLAG(STD) Das Verbindungspooling muss bei Einsatz von Sysplex in DB2 Connect aktiviert sein DB2 Connect Custom Advisor Erstellung der Toolskatalogdatenbank schlägt fehl (HP-UX) Anzeigen von indischen Schriftzeichen in den GUI-Tools von DB2 GUI-Tools werden für zSeries-Server nicht unterstützt (Linux) Einschließen von Suchbegriffen für 'DB2 Information - Unterstützung' in Anführungszeichen, sofern die Suchbegriffe Ziffern enthalten Protokolldatei der Informationskatalogzentrale beim Importieren von Befehlssprachendateien nicht generiert Binden von Query Patroller-Paketen Nichtverfügbarkeit von Ports bei Query Patroller (Windows) Sichere Umgebungen (Windows) Beispielprogramme für XML Extender umbenannt Zerlegen von Dokumenten in XML Extender, die nicht eindeutige Attribute und Elementnamen enthalten Unterschiede zwischen SNA und TCP/IP bei Verwendung von DB2 Connect Dokumentationsaktualisierungen Systemverwaltung: Implementierung Konfiguration der automatischen Clientweiterleitung (DB2_MAX_CLIENT_CONNRETRIES und DB2_CONNRETRIES_INTERVAL) Erläuterung zur Registrierdatenbankvariablen DB2TIMEOUT Während der Erstellung von Tabellenbereichsbehältern erstellte Verzeichnisse Dynamischer Speicher Definieren einer generierten Spalte in einer vorhandenen Tabelle Kumulative Registrierdatenbankvariablen Authentifizierungsaspekte für ferne Clients Unterstützung von DIO (Direct I/O) und CIO (Concurrent I/O) Distributortechnologie und automatische Clientweiterleitung Aspekte der automatischen Clientweiterleitung für die Katalogisierung auf einem DB2 Connect-Server LSA-Unterstützung (Windows) Unterstützung zweiteiliger Benutzer-IDs Details zur Kerberos-Authentifizierung Zusätzliche Informationen für die Kerberos-Unterstützung Systemverwaltung: Optimierung Vergleich der Registrierdatenbankvariablen DB2_FORCE_FCM_BP in 32-Bit- und 64-Bit-Umgebungen RUNSTATS nach der Erstellung einer Tabelle empfohlen Neuer Ursachencode für SQL1169N Optimierungsstrategien für MDC-Tabellen Erläuterung zur Beschreibung der Konfigurationsparameter NEWLOGPATH, MIRRORPATH und OVERFLOWLOGPATH Standardwert für DB2_COLLECT_TS_REC_INFO Dienstprogramm Governor Auswählen einer Methode zur Tabellenreorganisation Unterstützung großer Seiten für FCM-Speicher (AIX 5L, 64 Bit) Registrierdatenbankvariable DB2_RESOURCE_POLICY akzeptiert ein neues Element Neue Systemumgebungsvariablen (Linux) Neue Kommunikationsvariable der Registrierdatenbank Neue Leistungsvariable Variablen des SQL-Compilers Aktualisierung von Konfigurationsparametern Datei SQLDBCONF für Datenbankkonfigurationsparameter Änderung des Standardwerts für DB2_HASH_JOIN Registrierdatenbankvariable DB2NTNOCACHE wird ersetzt EXPLAIN-Tabellen und Organisieren von EXPLAIN-Informationen Richtlinien zur Erfassung von EXPLAIN-Informationen Zusätzliche Rückkehrcodes von der API db2CfgGet, Parameter collate_info Automatische Einstellung der Standardgröße für den Vorablesezugriff und der Standardwerte für Aktualisierungen Systemverwaltung: Konzept Bereichsclustertabelle Konzept des Katalogtabellenbereichs Unterstützte Gebietscodes und Codepages Von DB2 Universal Database unterstützte XA-Funktionalität Aktualisierte TPM- und tp_mon_name-Werte für xa_open-Zeichenfolgeformate Aktivieren von Konvertierungstabellen für die Codepages 923 und 924 Konvertierungstabellendateien für Euro-fähige Codepages API Reference Parameter oBackupsize der API db2Backup Unterstützung der Option SYNCPOINT Neues Feld für die Struktur SQLEDBDESC Korrektur beim neuen Feld in der Struktur SQLB-TBSPQRY-DATA Anwendungsentwicklung: Erzeugen und Ausführen von Anwendungen Beispiele für die dynamische Rekonfiguration (AIX) Von Linux unterstützte Entwicklungssoftware Anpassen der Optionen für das Vorkompilieren und Binden für SQL-Prozeduren C/C++-Compileroption erforderlich (Linux auf POWER (64 Bit)) Kompilierungs- und Bindebefehl für gespeicherte Micro Focus COBOL-Prozeduren (HP-UX) Mindestens unterstützte Version von Micro Focus COBOL (HP-UX) Setzen der Umgebungsvariablen für gespeicherte Micro Focus COBOL-Prozeduren (Windows) Anwendungsentwicklung: CLI (Call Level Interface) CLI/ODBC-Konfigurationsschlüsselwort Trusted_Connection Diagnosetabellenaktualisierung für die Funktion SQLDescribeParam (CLI) Asynchrone Ausführung der CLI (Call Level Interface) Verbindungsattribut SQL_ATTR_PING_DB Funktion SQLBindParameter (CLI) Funktion SQLMoreResults (CLI) Zusätzliche Umgebungsattribute Voraussetzung für dynamische verschiebbare Cursor CLI/ODBC-Konfigurationsschlüsselwort RetCatalogAsCurrServer CLI/ODBC-Konfigurationsschlüsselwort ReceiveTimeout Verbindungsattribut SQL_ATTR_RECEIVE_TIMEOUT CLI/ODBC-Konfigurationsschlüsselwort Reopt Anweisungs- und Verbindungsattribut SQL_ATTR_REOPT CLI/ODBC-Konfigurationsschlüsselwort CurrentPackageSet Verbindungsattribut SQL_ATTR_CURRENT_PACKAGE_SET Schlüsselwort MapBigintCDefault für die CLI/ODBC-Konfiguration Schlüsselwort DescribeOutputLevel für die CLI/ODBC-Konfiguration Anwendungsentwicklung: Programmieren von Clientanwendungen Konnektivität des Typs 4 mit dem DB2 Universal JDBC-Treiber zu DB2 für VM/VSE nicht unterstützt Lastausgleich für DB2 Universal JDBC-Treiber über Verbindungskonzentrator und Sysplex CLI/ODBC-Konfigurationsschlüsselwort OleDbReportIsLongForLongTypes CLI/ODBC-Konfigurationsschlüsselwort OleDbSQLColumnsSortByOrdinal Eigenschaftsgruppe DB2 Data Source für IBM DB2 OLE DB Provider Falsche URL-Syntax im Syntaxdiagramm für DB2Binder Datenweiterleitung bei Clients mit DB2 Universal JDBC-Treiber Anpassen der Merkmale der DB2 Universal JDBC-Treiberkonfiguration Funktion db2secFreeToken entfernt Sorgfältiges Implementieren benutzerdefinierter Sicherheits-Plug-ins Sicherheits-Plug-ins Sicherheits-Plug-in-APIs Namenskonventionen für Sicherheits-Plug-ins (Linux und UNIX) Einschränkungen für Sicherheits-Plug-in-Bibliotheken GSS-API-Plug-in-Unterstützung für den DB2 Universal JDBC-Treiber GSS-API-Sicherheits-Plug-ins unterstützen keine Authentifizierung mit mehreren Tokens GSS-API-Sicherheits-Plug-ins unterstützen keine Nachrichtenverschlüsselung und keine Signaturen Implizite Beendung von Transaktionen in Standalone-Anwendungen Unterstützung verteilter Transaktionen Anwendungsentwicklung: Programmieren von Serveranwendungen Mehrere Ergebnismengen von CLR-Prozeduren Modi zur Ausführungssteuerung von CLR-Routinen (Klausel EXECUTION CONTROL) Maximale DECIMAL-Genauigkeit und Anzahl Kommastellen in CLR-Routinen Commands Reference Verwendungsbeispiele für db2demigdbd Korrektur des Hinweises für den Befehl db2ckbkp Namenskonventionen für Datenbankobjekte und IDs Befehl REORGCHK Befehl REORG INDEXES/TABLE Befehl BACKUP DATABASE Migrieren von Datenbanken db2inidb - Befehl zur Initialisierung einer Spiegeldatenbank Hinweis für den Befehl db2iupdt Neuer Parameter für den Befehl db2sqljcustomize Neuer Parameter für den Befehl sqlj Aktualisierungen für den Befehl zur Überwachung und Fehlerbehebung (db2pd) Aktualisierung zum Befehl SET CLIENT Aktualisierung zum Befehl PRECOMPILE Aktualisierung zum Befehl UPDATE HISTORY FILE Aktualisierungen zu den Befehlen EXPORT und IMPORT Aktualisierung zum Befehl LOAD Dateitypmodifikatoren für das Dienstprogramm LOAD Dateitypmodifikatoren für das Importdienstprogramm Befehl ATTACH Befehl RECOVER DATABASE Befehl UPDATE HISTORY FILE db2updv8 - Befehl zur Aktualisierung der Datenbank auf die aktuelle Stufe von Version 8 Formatieren von Trapdateien (Windows) Versetzen von Daten Von Export-, Import- und Ladedienstprogrammen verwendete Bindedateien Verwenden von IMPORT mit gepufferten INSERT-Operationen Verlust von Indexierungsinformationen bei Verwendung des Importdienstprogramms Datenwiederherstellung und hohe Verfügbarkeit Übersicht über das Sicherungsdienstprogramm Verwenden des Sicherungsdienstprogramms Übersicht über die HADR-Funktion (High Availability Disaster Recovery) Unterstützung für plattformübergreifende Sicherung und Wiederherstellung Sicherung auf Band (Linux) Tivoli Storage Manager Einschränkungen der Werte der HADR-Parameter für lokalen Host und lokalen Service Zusätzliche Systemvoraussetzungen für HADR (High Availability Disaster Recovery) Nicht replizierte Operationen für HADR HADR unterstützt keine Protokolle auf unformatierten Einheiten Vergleich von Fehlermonitor und Diagnosemonitor Inaktivieren der Fehlerüberwachung Data Warehouse-Zentrale Konfigurieren der Data Warehouse-Clientumgebung unter AIX- und Solaris-Betriebssystemen Aktualisieren der Datenbankmanagerkonfiguration vor der Installation der Data Warehouse-Umsetzungsprogramme Neue Umgebungsvariable VW_NETRC in der Data Warehouse-Zentrale (UNIX) DB2 Data Warehouse-Zentrale erfordert eine Datenbank im Unicode-Format Definieren von DB2-Warehouse-Quellen und -Zielen Aktualisierungen des Lernprogramms für das Informationsmanagement Festlegen des Grenzwerts für die Freigabe von Warehouse-Protokolldateien Unterstützung der Data Warehouse-Zentrale für cursorbasiertes Laden Migration auf und Einschränkungen der Unicode-Warehouse-Steuerungsdatenbank Änderung des Datumsformats für die Spalte 'Modifiziert' Definieren von statistischen Umsetzungsprogrammen in der Data Warehouse-Zentrale Vorbereiten der Installation von Data Warehouse-Agenten Voraussetzungen für den iSeries-Warehouse-Agenten DB2 .NET Data Provider Unterstützung von gleichzeitig ablaufenden aktiven Eingabeprogrammen für Daten Merkmal DB2Connection.ConnectionString DB2 Connect Änderung der Festlegung des Authentifizierungstyps über ein Gateway Neues Sicherheitsszenario Korrekturen an Abbildungen Entwicklungszentrale DB2-Entwicklungszentrale Version 8.2 erfordert Stufe 9.2.9 von Distributed Debugger Längenbeschränkung im Fenster 'Variablenbereich ändern' der DB2-Entwicklungszentrale Einschränkungen für DB2 Universal Driver Typ 2 und 4 GUI-Tools Modifizieren des Abschlusszeichens für die Anweisung Nicht verfügbarer Datenbankstatus im Teilfenster mit Datenbankdetails der Steuerzentrale Generierung der Standardausgabeoption für das Schreiben in die Tabelle (Ereignismonitor erstellen) Informationskatalogzentrale Beispielkonfigurationsprozeduren Web-Server-Konfiguration Installation und Konfiguration Ergänzung DB2-Knotenkonfigurationsdatei db2nodes.cfg Registrierdatenbankvariable DB2NOLIOAIO durch DB2LINUXAIO ersetzt (Linux) Anwendungsserver für DB2 UDB DB2 Embedded Application Server-Aktivierung Implementieren von DB2-Webtools Direkte Ein-/Ausgabe auf Blockeinheiten (Linux) Dämon für Information - Unterstützung für DB2 (Linux und UNIX) Schlüsselwörter und Beispieldateien für Antwortdateien Fehlercodes bei der Installation der Antwortdatei Erforderliche Benutzerkonten für die Installation von DB2-Servern (Windows) Unterstützung der asynchronen Ein-/Ausgabe (Linux) Geänderter Befehl db2ln zur Erstellung von DB2 UDB-64-Bit-Bibliotheksprogrammverbindungen (Linux und UNIX) Query Patroller Aktualisierung für das Verhalten von Abfrageklassen Definitionsaktualisierungen für den Status verwalteter Abfragen Erstellen von EXPLAIN-Tabellen vor der Ausführung des Query Patroller-Generators für Protokolldaten Überprüfen der Query Patroller-Protokolldateien für die Protokollanalyse Abnormale Beendigung des Generators für Protokolldaten Dynamische Aktualisierung von Abfrageklassen Verhalten verschachtelter Abfragen Einschränkungen nach SQL-Anweisungstyp Einschränkungen der Auflösung bei der Verwendung von Terminal Services Client Neue Unterstützung von Gruppen für Abfrageübergaben Query Patroller-Zeitplaneinschränkungen Berechtigung zum Verwenden des Befehls RUN IN BACKGROUND QUERY erforderlich Erstellen eines Aliasnamens für eine Ergebnistabelle Abgeschirmte Benutzer-ID erfordert den Schreibzugriff auf die Datei 'qpdiag.log' und auf deren Pfad Einstieg Aktualisieren der auf Ihrem Computer oder Intranet-Server installierten Version von 'DB2 Information - Unterstützung' Speicherbedarf Erläuterung der DB2 UDB-Clientunterstützung Modifizieren von Kernelparametern (Linux) Modifizieren von Kernelparametern (Solaris-Betriebsumgebung) Handbuch 'DB2 Universal Database Express Edition Version 8.2 Basics' zum Download verfügbar Prüfen, ob die Datenbanken für die Migration bereit sind Common Criteria-Zertifizierung für DB2 UDB Spatial Extender Prüfen der Spatial Extender-Installation SQL-Verwaltungsroutinen Falscher Spaltenname in der Ergebnismenge für die Tabellenfunktion SNAP_GET_DYN_SQL Snapshot Monitor-Tabellenfunktionen haben versionsspezifische Sichten Prozedur GET_DB_CONFIG erfordert eine Seitengröße von mindestens 8 KB für einen temporären Benutzertabellenbereich SQL Reference EXPLAIN_DIAGNOSTIC: Eine neue EXPLAIN-Tabelle EXPLAIN_DIAGNOSTIC_DATA: Eine neue EXPLAIN-Tabelle Von der EXPLAIN-Einrichtung verwendetes Schema Zeichenfolgedarstellung von Werten für Datum und Uhrzeit Systemmonitor Diagnoseanzeiger - Zusammenfassung Liste mit Anwendungen ohne Verbindung, obwohl der Verbindungskonzentrator nicht aktiviert ist Fortschrittsüberwachung des Laufzeit-ROLLBACK-Prozesses XML Extender Änderung der Parameter für die gespeicherten Prozeduren dxxGenXML, dxxGenXMLClob, dxxRetrieveXML und dxxRetrieveXMLClob Zerlegen von XML-Dokumenten in DB2 UDB-Daten Zerlegen von Dokumenten, die größer als 1 MB sind Konfigurieren von benutzerdefinierten MQ-XML-Funktionen mit XML Extender XML Extender-Umgebungsvariable DB2DXX_MIN_TMPFILE_SIZE Neudefinition des benutzerdefinierten Datentyps DB2XML.XMLVarchar Anhang A. Verzeichnisstruktur der DB2 UDB-FixPak-CD Anhang B. Kontaktaufnahme mit IBM B.1 Produktinformationen Anhang C. Bemerkungen C.1 Marken Anmerkungen zu den Release-Informationen Inhalt Die Release-Informationen enthalten die neuesten Informationen zu den folgenden DB2-Produkten der Version 8: DB2(R) Universal Database Personal Edition DB2(R) Universal Database(TM) Workgroup Server Edition DB2(R) Universal Database(TM) Workgroup Server Unlimited Edition DB2 Universal Database(TM) Enterprise Server Edition DB2 Personal Developer's Edition DB2 Universal Developer's Edition DB2 Warehouse Manager DB2 Warehouse Manager Sourcing Agent für z/OS(R) DB2 Data Links Manager DB2 Net Search Extender DB2 Spatial Extender DB2 Intelligent Miner(TM) Scoring DB2 Intelligent Miner(TM) Modeling DB2 Intelligent Miner(TM) Visualization DB2 Connect(TM) Application Server Edition DB2 Connect(TM) Enterprise Edition DB2 Connect(TM) Personal Edition DB2 Connect Unlimited Edition DB2 Query Patroller(TM) Die Themen in DB2 Information - Unterstützung (http://publib.boulder.ibm.com/infocenter/db2help/) werden regelmäßig aktualisiert, jedoch nicht unbedingt für jedes Release. Die Release-Informationen werden mit jedem Release ausgeliefert und enthalten daher sehr wahrscheinlich kritische Informationen. Diese kritischen Informationen sind in den folgenden Fällen auf jeden Fall in den Release-Informationen enthalten: * Die Themen in DB2 Information - Unterstützung werden für das entsprechende Release nicht aktualisiert. * Die kritischen Informationen wurden erst spät im Entwicklungszyklus entdeckt, nachdem DB2 Information - Unterstützung bereits aktualisiert wurde. Ihre primäre Informationsquelle sollte DB2 Information - Unterstützung sein. In den Release-Informationen sollten Sie aktuelle Informationen nachschlagen, die für ein bestimmtes Release Ihres DB2-Produkts gelten können. In der Readme-Datei des FixPaks sollten Sie ebenfalls Informationen zu besonderen Aspekten lesen, die Sie bei der Installation des DB2-Produkts beachten müssen. Weitere Details zu DB2 Information - Unterstützung finden Sie in diesem Abschnitt unter der Überschrift Zusätzliche Ressourcen. Versionsinformationen Über einen Browser können Sie auf die aktuelle Dokumentation zugreifen, die in der neuesten Version von DB2 Information - Unterstützung zur Verfügung steht. Die URL-Adresse, über die die aktuelle Dokumentation heruntergeladen werden kann, finden Sie weiter unten im Abschnitt zu weiteren Ressourcen. Änderungsmarkierungen in den DB2 UDB-Release-Informationen zeigen an, wo Text hinzugefügt oder geändert wurde. Ein vertikaler Balken ( | ) markiert Informationen, die im aktuellen Release hinzugefügt oder geändert wurden. Verzeichnispfade Windows-Systeme verwenden Backslashes (\), um Verzeichnisse in einem Verzeichnispfad voneinander abzugrenzen. Linux- und UNIX-Systeme verwenden Schrägstriche (/) als Begrenzer. Die Release-Informationen halten sich an diese Konvention, wenn es sich um plattformspezifische Informationen handelt. Sind die Informationen jedoch plattformunabhängig, müssen Sie den Verzeichnispfad unter Umständen anders als beschrieben eingeben. Wenn Sie beispielsweise mit einem Windows-System arbeiten, müssen Sie den Verzeichnispfad mit Backslashes (\) eingeben, auch wenn in den Release-Informationen Schrägstriche (/) angegeben sind. Wenn Sie mit einem Linux- oder UNIX-System arbeiten, müssen Sie andererseits den Verzeichnispfad mit Schrägstrichen (/) eingeben, auch wenn in den Release-Informationen Backslashes (\) angegeben sind. DB2 Information Integrator Informationen zu bekannten anstehenden Problemen im Zusammenhang mit DB2 Information Integrator und den zugehörigen Technologien, einschließlich Systemen zusammengeschlossener Datenbanken, SQL Replication, Q Replication, Event Publishing (Ereignisveröffentlichung), Webservices und Metadatenverwaltung finden Sie in den Release-Informationen zu DB2 Information Integrator. Die Release-Informationen zu DB2 Information Integrator finden Sie auf der DB2 Information Integrator-Unterstützungswebseite unter http://www.ibm.com/software/data/integration/db2ii/support.html. Zusätzliche Ressourcen Die neuste Version der DB2-Dokumentation finden Sie immer im Internet (http://publib.boulder.ibm.com/infocenter/db2help/) in 'DB2 Information - Unterstützung'. Diese Informationen werden durch die in diesen Release-Informationen enthaltenen aktuellen Änderungen ergänzt. Sie können 'DB2 Information - Unterstützung' auch von der mit Ihrem DB2-Produkt ausgelieferten CD mit der DB2-HTML-Dokumentation auf Ihrem Computer oder Intranet-Server installieren. Nach der Installation von 'DB2 Information - Unterstützung' müssen Sie das letzte Dokumentations-FixPak anwenden, das auf der DB2-Unterstützungssite unter http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html verfügbar ist. FixPaks für die DB2-Dokumentation werden in unregelmäßigen Abständen veröffentlicht und spiegeln eventuell nicht den aktuellen Stand der DB2-Dokumentation wider. DB2-Produkthandbücher im PDF-Format werden ebenfalls in unregelmäßigen Abständen aktualisiert und spiegeln eventuell nicht den aktuellsten Stand wider. Die DB2 UDB-Unterstützungswebsite enthält technische Hinweise und Service-FLASH-Aktualisierungen, die Änderungen an der Dokumentation sowie bekannte Einschränkungen und Umgehungen beschreiben, die nach Erstellung dieses Dokuments erkannt wurden. Die URL-Adresse der DB2 UDB-Unterstützungswebsite lautet http://www.ibm.com/software/data/db2/udb/support.html. Weitere Informationen zur Migration von DB2-Produkten sind unter der URL-Adresse http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21200005 (DB2-Migrationsportal). Weitere Informationen zur DB2-Entwicklungszentrale und zu DB2 für z/OS ist unter http://www.ibm.com/software/data/db2/os390/spb/ verfügbar. Zum Zeitpunkt der Veröffentlichung von FixPak 1 wurde das Handbuch Data Links Manager Administration Guide and Reference (IBM Form SC27-1221-01) aktualisiert und kann im PDF-Format von der DB2-Unterstützungssite unter http://www.ibm.com/software/data/db2/udb/support.html heruntergeladen werden. Dokumentation für DB2 Life Sciences Data Connect ist auf der IBM Software-Site zum Download verfügbar: http://www.ibm.com/software/data/db2/lifesciencesdataconnect/ Fordern Sie ein kostenloses Abonnement für das DB2-Magazin an, um aktuelle Informationen zur DB2-Produktfamilie zu erhalten. Die Online-Ausgabe dieser Zeitschrift finden Sie unter http://www.db2mag.com. Auf dieser Site finden Sie auch Anweisungen zum Abonnieren dieser Zeitschrift. Informationen zu diesem Release Neuheiten in diesem Release Dieser Abschnitt wurde seit Version 8.2 FixPak 3 (äquivalent zu Version 8.1 FixPak 10) nicht aktualisiert. Details zu Korrekturen finden Sie im Abschnitt 'Übersicht der bisherigen Programmkorrekturen' der Release-Informationen. Außerdem enthält die FixPak-Readme eventuell Beschreibungen neuer Elemente in diesem Release. Übersicht der bisherigen Programmkorrekturen Eine Liste der APARs (Authorized Program Analysis Reports) für dieses FixPak finden Sie auf der folgenden Webseite: http://www.ibm.com/software/data/db2/udb/support/apars.html Kompatibilitätsanforderungen Änderungsmarkierungen zeigen an, dass Text hinzugefügt oder geändert wurde. Ein vertikaler Balken ( | ) markiert Informationen, die in Version 8.2 FixPak 4 (äquivalent zu Version 8.1 FixPak 11). hinzugefügt oder geändert wurden. Abwärtskompatibilität FixPak-Stufe und Installation neuer Produkte Es kann vorkommen, dass Sie ein DB2(R)-Produkt installieren müssen, das eine andere Stufe aufweist als die Version eines anderen, momentan installierten DB2(R)-Produkts. DB2-Produkte müssen dieselbe Stufe aufweisen. Wenn das Produkt, das Sie installieren, neuer ist als die Version anderer DB2-Produkte auf demselben Computer, müssen Sie die vorhandenen DB2-Produkte aktualisieren. Wenn Sie z. B. die FixPak-Stufe 10 von DB2 Connect(TM) für iSeries(TM) installieren und die übrigen DB2-Produkte die FixPak-Stufe 9 aufweisen, müssen Sie FixPak 10 auf die momentan installierte DB2-Produkte anwenden, bevor Sie die FixPak-Stufe 10 von DB2 Connect(TM) für iSeries(TM) installieren. Wenn Sie umgekehrt ein Produkt auf einem Computer installieren, auf dem eine neuere Version eines DB2-Produkts installiert ist, müssen Sie einige Richtlinien beachten: Unter Windows(R)-Betriebssystemen Das FixPak kann zur direkten Installation des Produkts auf dem System mit derselben Stufe verwendet werden. Nach der Installation können Sie mit dem folgenden Befehl die Lizenz hinzufügen: db2licm -a dateiname Dabei ist dateiname der Name der Lizenzdatei, die sich auf dem Originaldatenträger im Verzeichnis db2\license befindet. Diese Lizenz können Sie auch dem Verzeichnis db2\license des FixPaks hinzufügen. Dann wird die Lizenz bei der Installation mitinstalliert. Unter UNIX(R)- und Linux(R)-Betriebssystemen Voraussetzungen Bevor Sie ein zusätzliches Produkt oder eine zusätzliche Komponente installieren, müssen Sie Folgendes stoppen: * Vorhandene DB2-Exemplare * DB2-Verwaltungsserver (DAS) Es müssen die Exemplare und der DB2-Verwaltungsserver gestoppt werden, die zu der DB2-Installation gehören, für die das zusätzliche DB2-Produkt oder die zusätzliche DB2-Komponente installiert werden soll. Weitere Anweisungen hierzu finden Sie in der Readme-Datei des FixPaks. Vorgehensweise 1. Es gibt drei Methoden zur Installation eines zusätzlichen Produkts oder einer zusätzlichen Komponente mit einer DB2-Stufe, die niedriger ist als das momentan auf dem System installierte DB2-Produkt oder die momentan installierten DB2-Produkte. Wählen Sie eine der folgenden Methoden: Ausführen des Programms db2setup Führen Sie das Programm db2setup im Dialogbetrieb über die GUI oder unbeaufsichtigt mit Hilfe einer Antwortdatei aus. Führen Sie während der Installation eines zusätzlichen Produkts oder einer zusätzlichen Komponente mit db2setup keinerlei Konfiguration wie z. B. eine Exemplarerstellung durch. Wenn der DB2-Verwaltungsserver auf dem aktuellen System nicht vorhanden ist und das zusätzliche Produkt oder die zusätzliche Komponente den DB2-Verwaltungsserver voraussetzt oder unterstützt, konfiguriert das Programm db2setup den DB2-Verwaltungsserver während der Installation. Auf einigen Plattformen können während der Erstellung des DB2-Verwaltungsservers mit Hilfe von db2setup Fehler auftreten. Diese Fehler werden erwartet und können ignoriert werden. Das Programm db2setup befindet sich auf der DB2-Produkt-CD oder im Image für das zusätzliche Produkt oder die zusätzliche Komponente, das/die Sie installieren. Detaillierte Informationen zur Verwendung von db2setup finden Sie im Handbuch Command Reference und im Handbuch DB2 Installation und Konfiguration Ergänzung. Ausführen der Installationsprozedur db2_install Die Prozedur db2_install installiert alle Komponenten, die momentan nicht in der DB2-Installation enthalten sind, mit Ausnahme der Komponenten für nichtenglische Sprachen und Nachrichten. Sie sollten daher neue Produkte oder Komponenten mit db2_install installieren, da vorhandene DB2-Komponenten damit nicht aktualisiert werden. Die Installationsprozedurdb2_install befindet sich auf der DB2-Produkt-CD oder im Image für das zusätzliche Produkt oder die zusätzliche Komponente, das/die Sie installieren. Detaillierte Informationen zur Verwendung der Prozedur db2_install finden Sie im Handbuch DB2 Installation und Konfiguration Ergänzung. Verwenden des Installationsprogramms des Betriebssystems Verwenden Sie das Installationsprogramm des Betriebssystems, um neue Produkte oder Komponenten zu installieren. Detaillierte Informationen zur Verwendung des Installationsprogramms des Betriebssystems finden Sie im Handbuch DB2 Installation und Konfiguration Ergänzung. 2. Nach der Installation eines zusätzlichen Produkts oder einer zusätzlichen Komponente müssen Sie die folgenden Tasks durchführen: a. Wenden Sie das reguläre FixPak erneut auf alle bereits vorhandenen Produkte an, so dass neue und zuvor bereits vorhandene Produkte dieselbe FixPak-Stufe aufweisen. Zur Veranschaulichung wird im folgenden Beispiel die folgende Konfiguration vorausgesetzt: * DB2 Universal Database(TM) Enterprise Server Edition ist momentan mit dem FixPak 10 installiert. * Als Nächstes installieren Sie gemäß den Anweisungen im vorherigen Schritt DB2 Query Patroller(TM) mit FixPak 7. Als Installationsabschluss müssen Sie das reguläre FixPak 10 erneut anwenden. Anmerkung: Während der FixPak-Installation erhalten Sie möglicherweise eine Fehlernachricht ähnlich der Folgenden: Das Paket db2cliv81 ist bereits auf dem System installiert. Die Installation des Patch-Codes nnnnnnn-nnn wurde abnormal beendigt. Zur Neuinstallation dieses Patch-Code diesen zuerst deinstallieren und danach neu installieren. Dieser Fehler tritt auf, weil db2cliv81 auf dem System bereits dieselbe Stufe aufweist wie das FixPak, das gerade installiert wird. Diese Art von Fehler können Sie ignorieren. Verwenden Sie das Installationsprogramm des Betriebssystems, um sicherzustellen, dass die DB2-Komponente oder das DB2-Paket dieselbe Stufe aufweist wie das FixPak, das gerade installiert wird. b. Führen Sie den Befehl db2iupdt aus, um die vorhandenen DB2-Exemplare zu aktualisieren, die zur aktuellen DB2-Installation gehören. c. Führen Sie den Befehl dasupdt aus, um den DB2-Verwaltungsserver zu aktualisieren, der der aktuellen DB2-Installation zugeordnet ist. d. Führen Sie bei Bedarf den Befehl db2isetup aus, um ein neues DB2 UDB-Exemplar zu erstellen oder ein vorhandenes Exemplar zu konfigurieren. Details zur FixPak-Installation, zur Aktualisierung von Exemplaren und vom DB2-Verwaltungsserver sowie zum Installationsabschluss finden Sie in der Readme-Datei des FixPaks. Abwärtskompatibilität der Datenbanken von DB2 UDB Version 8.2 Wenn Sie eine Datenbank mit DB2 Universal Database Version 8.2 erstellen, können Sie diese Datenbank nicht mit dem Versionsstand 8.1 verwenden. Diese Datenbank kann nur mit dem Versionsstand 8.2 oder höher verwendet werden. Datenbanken, die mit dem DB2 UDB-Versionsstand 8.2 erstellt wurden, verfügen unter Umständen über zusätzliche Funktionen, die in älteren Versionen nicht verfügbar waren. Dieser Unterschied kann zu unerwartetem und unerwünschtem Verhalten führen, wenn Sie versuchen, Ihre neue Datenbank in ein Vorgängerrelease von DB2 UDB zu versetzen. Anmerkung: Es ist nur dann möglich, eine Datenbank aus Version 8.2 zurück in Version 8.1 zu versetzen, wenn die Datenbank ursprünglich unter Version 8.1 erstellt worden ist. Aber selbst dann ist die Abwärtsmigration nur möglich, nachdem das Tool db2demigdb ausgeführt wurde. Es könnten jedoch Fehler auftreten, wenn Sie integrierte Funktionen verwendet haben, die in Version 8.2 geändert wurden. Erläuterung der DB2 UDB-Clientunterstützung Im Kapitel "Übersicht über DB2-Clients" des Handbuchs IBM DB2 UDB für DB2-Clients Einstieg heißt es wie folgt: DB2-Clients können eine Verbindung zu DB2-Servern, die zwei Releases höher bzw. ein Release niedriger als die Client-Release-Stufe liegen, und zu Servern auf derselben Releasestufe herstellen. Eine Ergänzung zu dieser Aussage lautet wie folgt: Verbindungen von Clients mit Version N zu Servern mit Version N+2 sind zwar in einigen Umgebungen möglich, das DB2-Unterstützungsteam unterstützt diese Konfiguration jedoch nur so lange, wie Version N vertrieben wird. Sobald Version N nicht mehr vertrieben wird, wird diese Konfiguration vom DB2-Unterstützungsteam nicht mehr unterstützt. DB2-Clients der Version 7, die eine Verbindung zu einem DB2-Server der Version 8 herstellen, werden vom DB2-Unterstützungsteam nicht mehr unterstützt, da Version 7 vom Markt genommen wurde. Änderung des Status der Registrierdatenbank bei der Migration von DB2 UDB Version 8.2 zurück auf DB2 UDB Version 8.1 Alle in DB2 UDB Version 8.2 vorgenommenen Änderungen der Registrierdatenbank gehen verloren, wenn Sie zurück auf DB2 UDB Version 8.1 migrieren. Die Registrierungsdatenbank wird auf die Datei 'HealthRules.reg' von Version 8.1 zurückgesetzt. Diese Datei enthält die Einstellungen, die vor dem Upgrade auf DB2 UDB Version 8.2 galten und bevor die Einstellungen in der Datei 'HealthRules2.reg' verwendet wurden. Alternative FixPaks (Linux und UNIX) Vor DB2 Universal Database (UDB) Version 8 konnten FixPaks nur als Aktualisierungen installierter DB2 UDB-Pakete oder -Dateigruppen an einer bestimmten Speicherposition verwendet werden. Dies bedeutete, dass FixPak-Installationen vorhandene Dateien durch aktualisierte Dateien ersetzten, die im FixPak enthalten waren. Mehrere DB2-FixPak-Stufen konnten nicht parallel auf einem System vorhanden sein. Ab sofort können auf Linux(TM)-- und UNIX(R)--Systemen mehrere FixPak-Stufen von DB2 UDB Enterprise Server (ESE) auf einem System verwendet werden. Diese Funktion, die in der Produktionsumgebung ab Version 8.1.2 unterstützt wird, wird mit folgenden beiden FixPak-Typen sichergestellt: Reguläre FixPaks * Sind nicht nur für ESE verfügbar, sondern für alle unterstützten Produkte von DB2 Version 8 für die entsprechenden Plattformen. * Können direkt über die vorhandene Installation installiert werden, entweder im Verzeichnis /usr/opt/db2_08_01 unter AIX oder im Verzeichnis /opt/IBM/db2/V8.1 auf anderen Plattformen. * Kann nicht auf installierte alternative FixPaks angewendet werden. Alternative FixPaks * Können als ganz neue Kopien von DB2 UDB ESE installiert werden. * Werden an einer vordefinierten Speicherposition installiert, die nicht der Position für eine reguläre DB2 UDB-Installation entspricht. * Für alternative FixPaks gibt es kein GUI-Installationsverfahren. Anmerkungen: 1. Es ist nicht erforderlich, eine Installation mehrerer FixPaks auszuführen, wenn dies für Ihre Umgebung nicht notwendig ist. Falls Sie DB2 UDB Version 8 ESE-Exemplare mit unterschiedlichen FixPak-Stufen auf demselben System benötigen, können Sie mehrere FixPaks installieren. Mit Hilfe der Installation mehrerer FixPaks können Sie z. B. innerhalb der Testumgebung die Änderungen überprüfen, die im FixPak enthalten sind, ohne damit das Produktionssystem zu beeinflussen. 2. Ab IBM DB2 UDB Enterprise Server Edition (ESE) für Linux und UNIX Version 8.1.2 werden FixPaks in Produktionsumgebungen unterstützt, wenn sie als Mehrfach-FixPaks installiert werden. 3. Unter Linux stehen alternative FixPaks nur für die folgenden Plattformen zur Verfügung: * x86 (32 Bit) * S/390 (31 Bit) 4. Werden zwei oder mehr DB2-Exemplare mit unterschiedlichen FixPak-Stufen auf demselben System ausgeführt, so unterstützen diese Exemplare Operationen nicht, die interne DB2-Prozeduraufrufe (IPC) durchführen, beispielsweise Abfragen für zusammengeschlossene Datenbanken. Alle Exemplare, die auf einem System an solchen Operationen beteiligt sind, müssen dieselbe DB2-FixPak-Stufe haben. 5. Alternative FixPaks für DB2 UDB Version 8 unterstützen auf Linux- und UNIX-Plattformen nur DB2 ESE. Führen Sie eine der folgenden Operationen aus, um ein Exemplar mit mehreren FixPaks auf eine andere FixPak-Stufe zu aktualisieren: * Installieren Sie das entsprechende reguläre FixPak über die GA-Installation (General Availability - allgemeine Verfügbarkeit), und aktualisieren Sie das Exemplar, indem Sie db2iupdt vom vorhandenen GA-Pfad aus durchführen. * Installieren Sie das entsprechende alternative FixPak in seinem eindeutigen Pfad, und aktualisieren Sie das Exemplar, indem Sie db2iupdt von diesem Pfad aus durchführen. Weitere Informationen zu alternativen FixPaks finden Sie an folgenden Stellen: * In der Readme-Datei des aktuellen FixPaks * Über die IBM Unterstützungsfunktion unter der URL-Adresse http://www.ibm.com/software/data/db2/udb/support.html Kompatibilität der Abfragedaten von Query Patroller Version 8.2.2 mit den Daten früherer FixPaks Ab Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) kann der Inhalt der Query Patroller-Steuertabelle TRACK_QUERY_INFO, die in einer 32-Bit-Umgebung erfasst wurde, in einer 64-Bit-Umgebung verwendet werden. Dadurch wird die Migration auf einer 64-Bit-Umgebung erleichtert. Die in Version 8.2.2 erfassten Informationen der Query Patroller-Steuertabelle können nicht verwendet werden, um unter einer älteren FixPak-Stufe Protokolldaten für diese Abfrage zu generieren oder angehaltene Abfragen auszuführen. Einschränkungen für die Unterstützung von Servern einer älteren Version durch die Data Warehouse-Zentrale Die folgenden Einschränkungen gelten für die Unterstützung von Servern einer älteren Version durch die Data Warehouse-Zentrale von DB2 Universal Database (UDB) Enterprise Server Edition Version 8: Unterstützung für große Objekte (LOB) * Wenn Sie eine Warehouse-Steuerungsdatenbank auf einem Server verwenden, der älter als DB2 UDB Enterprise Server Edition Version 8 ist, können Sie nicht mit LOBs arbeiten. Sie müssen einen Upgrade der Warehouse-Steuerungsdatenbank auf die korrekte Stufe ausführen oder die Steuerungsdatenbank auf das System versetzen, auf dem der Warehouse-Server von DB2 UDB Enterprise Server Edition Version 8 installiert ist, und die Steuerungsdatenbank von diesem System aus lokal verwenden. * Wenn Sie LOBs zwischen der Data Warehouse-Zentrale und DB2 UDB versetzen möchten, müssen Sie einen Upgrade auf DB2 UDB Enterprise Server Edition Version 8 vornehmen. SNA-Unterstützung Wenn Sie SNA (Systems Network Architecture - Systemnetzwerkarchitektur) verwenden, um eine Verbindung zu Ihren Warehouse-Quellen und Warehouse-Zielen herzustellen, müssen Sie die Konfiguration in 'TCP/IP über SNA' ändern oder den Warehouse-Agenten von Windows NT verwenden. Unterstützung für Dienstprogramme EXPORT und LOAD Das Dienstprogramm LOAD von Version 8 der Data Warehouse-Zentrale unterstützt keine Zieldatenbanken von Version 7. Wenn Sie Ihr Ziel als Datenbank der Version 7 beibehalten möchten, müssen Sie den Schritt LOAD in einen Schritt 'SQL SELECT und INSERT' umwandeln. Die Schritte 'SQL SELECT und INSERT' verwenden eine DELETE*-Anweisung, auf die SELECT- und INSERT-Anweisungen folgen. Für die Schritte 'SQL SELECT und INSERT' muss die Datenbank alle Transaktionen protokollieren. Daher ist die Leistung von den Schritten 'SQL SELECT und INSERT' nicht so hoch wie die der Dienstprogramme EXPORT und LOAD. Für SQLJ- und SQL Assist-Unterstützung unter DB2 UDB für OS/390 Version 6 und DB2 UDB für z/OS Version 7 erforderliche APARs der Entwicklungszentrale Bei Verwendung der Entwicklungszentrale auf einem Anwendungsentwicklungsclient für DB2 Universal Database (UDB) Version 8 unter Windows oder UNIX müssen die folgenden APARs auf dem Server installiert werden, um die Unterstützung für SQLJ und SQL Assist zu aktivieren: DB2 UDB für z/OS Version 7 * PQ65125 - Bietet SQLJ-Unterstützung für die Erstellung gespeicherter Java-SQLJ-Prozeduren * PQ76858 - Bietet Unterstützung für SQL Assist DB2 UDB für OS/390 Version 6 * PQ76858 - Bietet Unterstützung für SQL Assist Zwei Versionen von SQL Assist werden über DB2 UDB gestartet Sie können über DB2 Universal Database Version 8 sowohl Version 7 als auch Version 8 von SQL Assist aufrufen. Version 7 können Sie über die DB2 Data Warehouse-Zentrale starten. Alle übrigen Zentralen starten die neueste Version 8. Die Onlinehilfefunktion des Produkts enthält weitere Informationen zu SQL Assist Version 7. Änderung in der Funktionsweise des Unicode-Servers In Version 7 ignorierten Unicode-Server grafische Codepages von Anwendungen während der Verbindungsdauer, und es wurde angenommen, dass UCS2 Unicode (Codepage 1200) verwendet wurde. Unicode-Server der Version 8 akzeptieren nun die vom Client gesendete Codepage. Änderungen an Datenbankkonfigurationsparametern während der Migration DB2 UDB Version 8.2 verwendet eine neue 16-KB-Datenbankkonfigurationsparameterdatei mit dem Namen SQLDBCONF. Dies ist andere Datei als die 4-KB-Datenbankkonfigurationsparameterdatei von DB2 UDB Version 8.1 mit dem Namen SQLDBCON. Nach der Migration auf DB2 UDB Version 8.2 migriert das Produkt den Inhalt der 4-KB-Datei von Version 8.1 und verwendet die 16-KB-Datei zum Protokollieren der Änderungen an den Datenbankkonfigurationsparametern. Die 4-KB-Datei der Version 8.1 wird beibehalten, aber nicht verwendet. Wenn Sie zurück auf DB2 UDB Version 8.1 migrieren, verwendet DB2 UDB Version 8.1 wieder die ursprüngliche 4-KB-Datei der Version 8.1 zum Protokollieren der Änderungen an den Datenbankkonfigurationsparametern. Die 16-KB-Datei der Version 8.2 wird beibehalten, aber nicht von DB2 UDB Version 8.1 erkannt. Änderungen, die zwischen der Migration auf Version 8.2 und der Migration zurück auf Version 8.1 an der 16-KB-Datenbankkonfigurationsparameterdatei vorgenommen wurden, sind für die frühere DB2 UDB-Stufe verborgen, da die Änderungen nicht in die ursprüngliche 4-KB-Datei migriert werden. Wenn Sie wieder auf DB2 UDB Version 8.2 migrieren, erkennt DB2 UDB Version 8.2 darüber hinaus, dass die 16-KB-Datenbankkonfigurationsdatei bereits vorhanden ist, und verwendet wieder die 16-KB-Datei der Version 8.2 zum Protokollieren der Änderungen an den Datenbankkonfigurationsparametern. Die 4-KB-Datei der Version 8.1 wird beibehalten, sie wird aber von DB2 UDB Version 8.2 nicht erkannt. Änderungen, die zwischen der Migration zurück auf Version 8.1 und der erneuten Migration auf Version 8.2 an der 4-KB-Datenbankkonfigurationsparameterdatei vorgenommen wurden, sind für die aktuellere DB2 UDB-Stufe verborgen, da die Änderungen nicht in die vorhandene 16-KB-Datei migriert werden. Erweiterungen für Nachrichten im Format db2diag.log Das Format der Datei 'db2diag.log' weist in Version 8.2 eine Reihe von Verbesserungen auf. Es ist jetzt einfacher, die Protokolldatei manuell zu lesen und im Rahmen von Software syntaktisch zu analysieren. Folgende Verbesserungen wurden vorgenommen: * Jeder Eintrag verfügt über einen vollständigen Headerdatensatz. * Die Nachrichten- und Datenabschnitte des Protokollsatzes sind deutlich markiert, sodass der Protokollsatz einfacher zu verwenden und zu verstehen ist. * Jeder Datensatz umfasst Zeitmarken (einschließlich Zeitzone). * Jedes Feld ist deutlich mit einem Feldnamen in Großbuchstaben gekennzeichnet. * Die Zeilenlängen von Header- und Nachrichtenfeldern sind auf 80 Zeichen begrenzt. * Neue Felder wurden hinzugefügt, insbesondere ein Feld für Bewertungsstufen zur Kennzeichnung der wichtigsten Einträge. Darüber hinaus wurden weitere Änderungen vorgenommen. Zum Beispiel wurde der Name des Datenbankfelds in DB geändert. In die Datei 'db2diag.log' wurden Ereignisdatensätze als Diagnosenachricht aufgenommen. Beispiele für solche Ereignisse: * Aktualisierungen der Profilregistrierdatenbank * Aktualisierungen von Konfigurationsparametern Bei Ereignisdatensätzen ist im Feld LEVEL "Event" angegeben. Obwohl es sich bei Ereignissen nicht um Fehler handelt, können sie je nach ihrer Wichtigkeit trotzdem mit einer anderen Diagnosestufe als 4 (Informativ) oder 3 (Warnung) protokolliert werden. Die db2set-Variablen der Profilregistrierdatenbank und die Konfigurationsparameter für die Datenbank bzw. den Datenbankmanager werden nun protokolliert Ab Version 8.2 werden die folgenden Aktualisierungen in der Datei db2diag.log protokolliert: * Aktualisierungen der Profilregistrierdatenbank mit db2set * Aktualisierungen der Konfigurationsparameter für Datenbank und Datenbankmanager Die Nachrichten für diese Aktualisierungen werden auf Grund ihrer Wichtigkeit mit hohen Diagnosestufen protokolliert. Folgende db2set-Aktualisierungstypen der Profilregistrierdatenbank werden protokolliert: Modifizieren Der Befehl db2set variablenname=wert führt in db2diag.log zu einem Eintrag wie dem Folgenden: 2004-04-22-19.19.14.156959-240 I79582C286 LEVEL: Event PID : 2437242 TID : 1 PROC : db2set INSTANCE: db2user NODE : 000 FUNCTION: DB2 UDB, oper system services, db2set_main, probe:40 CHANGE : CFG DB2SET: DB2DBDFT: From: "OLDDB" To: "SAMPLE" Löschen Der Befehl db2set -r führt in db2diag.log zu einem Eintrag wie dem Folgenden: CHANGE : CFG DB2SET: DB2DBDFT: From: "SAMPLE" To: "" Anmerkung: Die Headerdaten wurden im vorangegangenen Beispiel weggelassen. Zurücksetzen Der Befehl db2set variablenname=wert führt zu einem Eintrag in der Datei 'db2diag.log', wie z. B.: CHANGE : CFG DB2SET: Profile registry was reset Anmerkung: Die Headerdaten wurden im vorangegangenen Beispiel weggelassen. Es folgen Beispiele für Aktualisierungen von Konfigurationsparametern für die Datenbank bzw. den Datenbankmanager: CHANGE : CFG DB SAMPLE: "Maxlocks" From: "10" To: "20" CHANGE : CFG DBM: "Diaglevel" From: "3" To: "1" CHANGE : CFG DBM: Reset to the system defaults Anmerkung: Die Headerdaten wurden in den vorangegangenen Beispielen weggelassen. Verwenden Sie das Tool db2diag, um diese Nachrichten zur Konfigurationsaktualisierung zu finden. Beispiel: * Auswahl aller Ereignisse: db2diag -level event * Auswahl von Änderungsereignissen: db2diag -g "changeevent=" Produktkompatibilität JDK 1.4.2 von DB2 Universal Database für Linux, UNIX und Windows unterstützt DB2 Universal Database(TM) (UDB) für Linux, UNIX und Windows(R) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) unterstützt JDK 1.4.2 in allen von DB2 UDB unterstützten 32-Bit- und 64-Bit-Betriebssystemumgebungen für Workstations. Diese Unterstützung umfasst, ist aber nicht beschränkt auf, die Unterstützung für das Erstellen und Ausführen von Java(TM)-Clientanwendungen, das Erstellen und Ausführen von Java(TM)-Routinen über die Befehlszeile, das Erstellen und Ausführen von Java(TM)-Routinen über die DB2-Entwicklungszentrale sowie für das Ausführen anderer DB2-Tools. Wenn Sie DB2 UDB Version 8.2 installieren, wird die aktuell unterstützte Version des Java Developer Kit ebenfalls installiert, sofern sie nicht bereits installiert ist und es sich bei der DB2 UDB-Installation nicht um eine Aktualisierung für DB2 UDB Version 8 handelt. Wenn Sie eine vorherige Installation von DB2 UDB Version 8 aktualisieren, müssen Sie das Java Developer Kit von der CD installieren. In der folgenden Tabelle sind die von DB2 unterstützten 32-Bit- und 64-Bit-Betriebssystemumgebungen für Workstations und die aktuell unterstützte JDK-Stufe für jede Umgebung aufgelistet. Informationen zur Unterstützung früherer JDK-Stufen finden Sie auf der Webseite für die Entwicklung von Java-Anwendungen unter http://www.ibm.com/software/data/db2/udb/ad/v8/java/. Tabelle 1. Von DB2 unterstützte Umgebungen und zugehörige unterstützten JDK-Stufen +----------------------------------+----------------------------------+ | Von DB2 unterstützte Umgebung | Aktuell unterstützte JDK-Stufe | +----------------------------------+----------------------------------+ | Windows IA/AMD (32 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows IA (64 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Windows AMD/EM64T (64 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | AIX(R) 4.3.3 (32 Bit) | JDK 1.3.1 SR6 [2] | +----------------------------------+----------------------------------+ | AIX(R) 5 (Hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Solaris (Hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | HPUX RISC & Itanium (Hybrid [1]) | JDK 1.4.2.01 | +----------------------------------+----------------------------------+ | Linux AMD/EM64T (32 Bit, 64 Bit) | JDK 1.4.2 [3] | | (Hybrid [1]) | | +----------------------------------+----------------------------------+ | Linux IA (32 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux IA (64 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 (31 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux 390 (64 Bit) | JDK 1.4.2 | +----------------------------------+----------------------------------+ | Linux PPC (Hybrid [1]) | JDK 1.4.2 | +----------------------------------+----------------------------------+ Anmerkungen: 1. 'Hybrid' bezieht sich auf ein Installationsimage, das Unterstützung für 32 Bit und 64 Bit enthält. 2. JDK 1.3.1 Service Release 6 ist die einzige JDK-Version, die für AIX(R) 4.3.3 unterstützt wird. 3. Für JDK 1.4.2 gibt es unter Linux AMD/EM64T (32 Bit und 64 Bit) keine Unterstützung für die Tools der grafischen DB2-Benutzerschnittstelle. Im folgenden Abschnitt wird eine aktualisierte Prozedur zum Einrichten der Linux-Java-Umgebung beschrieben. Einrichten der Linux-Java-Umgebung Voraussetzungen * Führen Sie vor dem Ausführen der folgenden Anweisungen die Konfigurationsschritte aus, die im Thema "Setting up the UNIX(R) Java environment" des Handbuchs Application Development Guide: Building and Running Applications beschrieben werden. * Die Befehle in den folgenden Anweisungen erfordern Rootberechtigung. Vorgehensweise Gehen Sie wie folgt vor, um Java-Anwendungen unter Linux mit DB2-JDBC-Unterstützung zu erstellen: 1. Installieren und konfigurieren Sie eines der unterstützten Developer Kits, die im Thema "Linux supported development software" des Handbuchs Application Development Guide: Building and Running Applications beschrieben werden. Um gespeicherte Java-Prozeduren oder benutzerdefinierte Funktionen ausführen zu können, muss der Linux-Laufzeitverbindungseditor in der Lage sein, auf bestimmte gemeinsam genutzte Java-Bibliotheken zuzugreifen, und DB2 UDB muss in der Lage sein, sowohl diese Bibliotheken als auch die Java Virtual Machine zu laden. Der Prozess, der gespeicherte Prozeduren und benutzerdefinierte Funktionen ausführt, lädt Bibliotheken nur an sicheren Speicherpositionen, wie sie in der Datei /etc/ld.so.conf definiert sind. Eine dieser sicheren Speicherpositionen ist /usr/lib. Die übrigen Anweisungen zeigen, welche Bibliotheken symbolische Verbindungen in /usr/lib erfordern. 2. Erstellen Sie in /usr/lib symbolische Verbindungen, um auf die gemeinsam genutzten Java-Bibliotheken zu zeigen. Abhängig von der verwendeten JDK-Version müssen Sie Verbindungen zu unterschiedlichen gemeinsam genutzten Bibliotheken herstellen: Für das IBM(R) Developer Kit 1.3 Erstellen Sie symbolische Verbindungen zu libjava.so, libjvm.so und libhpi.so. Sie können die symbolischen Verbindungen erstellen, indem Sie die folgenden Befehle als Root ausführen: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so . ln -fs JAVAHOME/jre/bin/classic/libjvm.so . ln -fs JAVAHOME/jre/bin/libhpi.so . Dabei ist JAVAHOME das Basisverzeichnis für das IBM(R) Developer Kit. Wenn DB2 UDB diese Bibliotheken nicht finden kann, und Sie versuchen, eine Java-Routine auszuführen, erhalten Sie einen Fehler -4301, und das Protokoll mit Benachrichtigungen für die Systemverwaltung wird Nachrichten zu nicht gefundenen Bibliotheken enthalten. Für das IBM(R) Developer Kit 1.4.1 Erstellen Sie symbolische Verbindungen zu libjava.so, libjvm.so, libhpi.so und libjsig.so. Sie können die symbolischen Verbindungen erstellen, indem Sie die folgenden Befehle als Root ausführen: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so Dabei ist JAVAHOME das Basisverzeichnis für das IBM Developer Kit. Wenn DB2 UDB diese Bibliotheken nicht finden kann, und Sie versuchen, eine Java-Routine auszuführen, erhalten Sie einen Fehler -4301, und das Protokoll mit Benachrichtigungen für die Systemverwaltung wird Nachrichten zu nicht gefundenen Bibliotheken enthalten. Für das IBM Developer Kit 1.4.2 auf anderen Linux-Plattformen als AMD64/EM64T Erstellen Sie symbolische Verbindungen zu libjava.so, libjvm.so, libhpi.so, libjsig.so, libjitc.so, libxhpi.so und libdbgmalloc.so. Sie können die symbolischen Verbindungen erstellen, indem Sie die folgenden Befehle als Root ausführen: cd /usr/lib ln -fs JAVAHOME/jre/bin/libjava.so ln -fs JAVAHOME/jre/bin/classic/libjvm.so ln -fs JAVAHOME/jre/bin/libhpi.so ln -fs JAVAHOME/jre/bin/libjsig.so ln -fs JAVAHOME/jre/bin/libjitc.so ln -fs JAVAHOME/jre/bin/libxhpi.so ln -fs JAVAHOME/jre/bin/libdbgmalloc.so Dabei ist JAVAHOME das Basisverzeichnis für das IBM Developer Kit. Wenn DB2 UDB diese Bibliotheken nicht finden kann, und Sie versuchen, eine Java-Routine auszuführen, erhalten Sie einen Fehler -4301, und das Protokoll mit Benachrichtigungen für die Systemverwaltung wird Nachrichten zu nicht gefundenen Bibliotheken enthalten. Für IBM Developer Kit 1.4.2 unter Linux AMD64/EM64T Dieses Developer Kit unterscheidet sich vom Kit für andere Linux-Plattformen. Befolgen Sie die Anweisungen im folgenden Abschnitt Alternative Prozedur, und fügen Sie die folgende Zeile in die Datei /etc/ld.so.conf ein: JAVAHOME/jre/bin Dabei ist JAVAHOME das Basisverzeichnis für das IBM Developer Kit. Wenn DB2 UDB diese Bibliotheken nicht finden kann und Sie versuchen, eine Java-Routine auszuführen, erhalten Sie den Fehler -4301 oder -1042. Alternative Prozedur Statt explizit Verbindungen zu den gemeinsam genutzten Bibliotheken im Verzeichnis /usr/lib zu erstellen, können Sie der Datei /etc/ld.so.conf den Namen des Verzeichnisses hinzufügen, in dem sich die gemeinsam genutzte Java-Bibliothek befindet. Zur Bearbeitung dieser Datei müssen Sie über Rootberechtigung verfügen. Nach dem Ändern der Datei /etc/ld.so.conf müssen Sie den Befehl ldconfig als Root ausführen, damit die Änderungen wirksam werden. Wenn bei der Ausführung dieser alternativen Prozedur Probleme auftreten, erstellen Sie die Verbindungen im Verzeichnis /usr/lib wie zuvor beschrieben. Microsoft XP-Fix auf 64-Bit-Betriebssystemen erforderlich Wenn Sie mit dem 64-Bit-Betriebssystem Microsoft XP (2600) arbeiten, und dieses Betriebssystem für die Verwendung des NetBIOS-Protokolls mit der DB2-Produktfamilie konfiguriert ist, benötigen Sie einen Hotfix von Microsoft. Wenden Sie sich unter Angabe des Knowledge Base-Artikels Nummer Q317437 an Microsoft. Windows XP-Betriebssysteme Das Betriebssystem Windows XP Home Edition wird nur von Produkten von DB2 Universal Database (UDB) Personal Edition unterstützt. Das Betriebssystem Windows XP Professional wird von den folgenden DB2-Produkten unterstützt: * DB2 UDB Express Edition * DB2 UDB Personal Edition * DB2 UDB Workgroup Server Edition * DB2 Connect Personal Edition Die folgenden DB2-Produkte werden unter Windows XP nur für Entwicklungs- und Testzwecke unterstützt (Produktionsumgebungen erfordern Windows 2000 oder Windows Server 2003): * DB2 UDB Enterprise Server Edition * DB2 Connect Enterprise Edition Gegen Aufpreis erhältliche DB2 UDB HADR-Option verfügbar In DB2 Universal Database(TM) (UDB) Version 8.2 konnten Kunden von DB2 UDB Workgroup Server Edition und DB2 UDB Express Edition (wenn die Lizenz auf dem Preismodell pro Benutzer basierte) die gegen Aufpreis erhältliche DB2 UDB HADR-Option (High Availability Disaster Recovery) nicht installieren. Dieses Problem ist in DB2 UDB Version 8.2 FixPak 1 (äquivalent zu Version 8.1 FixPak 8) behoben worden. DB2 Warehouse Manager (Version 8.2) und IBM DB2 OLAP Server FixPak 3 und höher Die OLAP-Dienstprogramme in DB2 Warehouse Manager Standard Edition Version 8.2 sind nicht kompatibel mit IBM DB2 OLAP Server FixPak 3 (Essbase-API-Stufe 6.5.4) und höher. Es wird empfohlen, DB2 OLAP Server FixPak 2 (Essbase 6.5.3) oder tiefer zu verwenden, bis dieses Problem beseitigt ist. Aktivierung von Protokollen für unformatierte Ein-/Ausgabe (Linux mit 2.6-Kernel) Vor DB2 Universal Database (UDB) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) erforderte die Verwendung von Protokollen mit Einheiten für die unformatierte Ein-/Ausgabe (Raw I/O) das Binden einer physischen Einheit an den Linux-Treiber für unformatierte Zeicheneinheiten mit Hilfe des Dienstprogramms raw. Ab DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) kann die unformatierte Ein-/Ausgabe für Protokolle unter dem 2.6-Linux-Kernel direkt angegeben werden. Wenn Sie beispielsweise die Einheitenpartition /dev/sdb1 für unformatierte Protokolle für die Datenbank SAMPLE verwenden wollen, setzen Sie den folgenden Befehl ab: db2 update db cfg for sample using newlogpath /dev/sdb1 Obwohl DB2 UDB weiterhin die Verwendung des Dienstprogramms raw für die unformatierte Ein-/Ausgabe unterstützt, ist dies in neueren Varianten veraltet und wird in Zukunft möglicherweise ganz entfernt. Die neue Methode, bei der die Einheiten direkt angegeben werden, wird bevorzugt verwendet. Red Hat Linux-Unterstützung für die Data Warehouse-Zentrale DB2 Universal Database Version 8.2 unterstützt die Versionen 3 und 2.1 von Red Hat Enterprise Linux AS. Die Data Warehouse-Zentrale unterstützt jedoch nur Red Hat Enterprise Linux AS Version 2.1. Die Data Warehouse-Zentrale verwendet DataDirect-ODBC-Treiber, die Red Hat Enterprise Linux AS Version 3.1 nicht unterstützen. Daher unterstützt die Data Warehouse-Zentrale keine ODBC-Warehouse-Quellen und -Warehouse-Ziele einer Agentensite von Red Hat Enterprise Linux AS Version 3.1. Erforderlicher Verbindungskonzentrator für WebSphere MQ-Transaktionsmanager und DB2 für OS/390 Wenn Sie Anwendungen in einer IBM(R) WebSphere(R) MQ-Umgebung ausführen (früher: IBM MQSeries(R)-Umgebung), kann WebSphere(R) MQ als XA-kompatibler Transaktionsmanager fungieren, der alle verteilten Transaktionen mit zweiphasigen Festschreibungen koordiniert. Wenn WebSphere(R) MQ auf diese Weise als Transaktionsmanager fungiert und die Datenquellen zur DB2-Produktfamilie gehören, müssen mehrere Konfigurationsanforderungen erfüllt werden. Die meisten dieser Anforderungen sind bereits dokumentiert. So müssen Sie z. B. den DB2-Konfigurationsparameter TP_MON_NAME auf dem DB2 Run-Time Client auf "MQ" setzen. Es gibt jedoch eine Konfigurationsanforderung, die nicht dokumentiert ist. Diese Anforderung bezieht sich auf DB2 Connect beim Herstellen der Verbindung zu Datenquellen, die DB2 für OS/390(R)-Server sind: Wenn Sie verteilte Transaktionen mit Hilfe von WebSphere MQ koordinieren und DB2 für z/OS(R)- und DB2 für iSeries-Server betroffen sind, muss am Gateway der DB2 Connect-Verbindungskonzentrator aktiviert sein. Der Verbindungskonzentrator ist aktiviert, wenn der Wert des Konfigurationsparameters MAX_CONNECTIONS größer ist als der Wert von MAX_COORDAGENTS. Wenn Sie den Verbindungskonzentrator nicht aktivieren, bewirkt dies ein unerwartetes Transaktionsverhalten. Alternative Unicode-Konvertierungstabellen für CCSID 5039 Die japanische Windows-Codepage Shift-JIS von Microsoft ist als IBM CCSID 943 (ID des codierten Zeichensatzes) registriert. Auf HP-UX-Plattformen ist die Codepage Shift-JIS jedoch als CCSID 5039 registriert. CCSID 5039 enthält nur Zeichen des japanischen Industriestandards (JIS) und keine vom Hersteller definierten Zeichen. Sie können eine DB2 Universal Database-Datenbank mit CCSID 5039 unter HP-UX zur Speicherung von Shift-JIS-Zeichen verwenden. Es findet allerdings eine Codepage-Konvertierung zwischen CCSID 5039 und CCSID 943 statt. Bei Verwendung von Microsoft-ODBC-Anwendungen treten bei der Datenkonvertierung von CCSID 5039 in Unicode möglicherweise Fehler auf, da sich die IBM Codepage-Konvertierungstabelle von der Microsoft-Konvertierungstabelle unterscheidet. Wenn die folgenden Zeichen von CCSID 5039 in Unicode konvertiert werden, resultieren daraus unterschiedliche Codepunkte, je nach dem, welche Konvertierungstabelle (IBM oder Microsoft) verwendet wird. Für diese Zeichen entspricht die IBM Konvertierungstabelle dem japanischen Industriestandard JISX0208 und JISX0221. Tabelle 2. Codepunktkonvertierung (CCSID 5039 in Unicode) +-----------------------+----------------------+----------------------+ | Shift-JIS-Codepunkt | Primärer IBM | Primärer | | (Name des Zeichens) | Codepunkt | Microsoft-Codepunkt | | | (Unicode-Name) | (Unicode-Name) | +-----------------------+----------------------+----------------------+ | X'815C' | U+2014 | U+2015 (horizontale | | (Geviertstrich) | (Geviertstrich) | Linie) | +-----------------------+----------------------+----------------------+ | X'8160' (gewellter | U+301C (gewellter | U+FF5E (vollbreite | | Bindestrich) | Bindestrich) | Tilde) | +-----------------------+----------------------+----------------------+ | X'8161' (doppelte | U+2016 (doppelte | U+2225 (parallel) | | vertikale Linie) | vertikale Linie) | | +-----------------------+----------------------+----------------------+ | X'817C' | U+2212 | U+FF0D (vollbreites | | (Minuszeichen) | (Minuszeichen) | Minuszeichen) | +-----------------------+----------------------+----------------------+ Das Geviertzeichen mit dem CCSID 5039-Codepunkt X'815C' wird bei Verwendung der IBM Konvertierungstabelle z. B. in den Unicode-Codepunkt U+2014 und bei Verwendung der Microsoft-Konvertierungstabelle in U+2015 konvertiert. Dies kann bei Microsoft-ODBC-Anwendungen zu Fehlern führen, da diese Anwendungen U+2014 als ungültigen Codepunkt behandeln. Zur Vermeidung dieser Fehler stellt DB2 UDB zusätzlich zur IBM Standardkonvertierungstabelle eine alternative Microsoft-Tabelle für die Konvertierung von CCSID 5039 in Unicode zur Verfügung. Ersetzen Sie die IBM Standardkonvertierungstabelle durch die alternative Microsoft-Konvertierungstabelle. Achten Sie darauf, dass die IBM Standardtabelle für die Konvertierung von Unicode in CCSID 5039 mit der Microsoft-Version übereinstimmt. Ersetzen der Unicode-Konvertierungstabellen für CCSID 5039 durch die Microsoft-Konvertierungstabellen Bei der Konvertierung von CCSID 5039 in Unicode wird die DB2 Universal Database-Standardkonvertierungstabelle für Codepages verwendet. Wenn Sie eine andere Version der Konvertierungstabelle verwenden möchten, z. B. die Microsoft-Version, müssen Sie die Datei für die Standardkonvertierungstabelle (.cnv) manuell ersetzen. Voraussetzungen Bevor Sie die vorhandene Datei für die Codepage-Konvertierungstabelle im Verzeichnis sqllib/conv ersetzen, sollten Sie eine Sicherungskopie für den Fall erstellen, dass Sie die ursprüngliche Datei später wiederherstellen möchten. Unter UNIX und Linux ist das Verzeichnis sqllib/conv mit dem Installationspfad von DB2 UDB verknüpft. Einschränkungen Damit das Ersetzen der Konvertierungstabelle effektiv sein kann, müssen die Konvertierungstabellen aller DB2 UDB-Clients geändert werden, die eine Verbindung zur gleichen Datenbank herstellen. Andernfalls speichern die Clients dasselbe Zeichen möglicherweise mit unterschiedlichen Codepunkten. Vorgehensweise Führen Sie die folgenden Schritte aus, um die Standardkonvertierungstabelle von DB2 UDB zur Konvertierung von CCSID 5039 in Unicode zu ersetzen: 1. Kopieren Sie sqllib/conv/ms/5039ucs2.cnv in sqllib/conv/5039ucs2.cnv. 2. Starten Sie DB2 UDB erneut. Alternative Unicode-Konvertierungstabellen für CCSID 954 Die IBM CCSID für die japanische EUC-Codepage ist als CCSID 954 registriert. CCSID 954 ist eine gängige Codierung für japanische UNIX- und Linux-Plattformen. Wenn Sie zur Herstellung einer Verbindung mit einer DB2 Universal Database-Datenbank mit CCSID 954 Microsoft-ODBC-Anwendungen einsetzen, treten bei der Datenkonvertierung von CCSID 954 in Unicode möglicherweise Fehler auf. Dies liegt daran, dass sich die IBM Codepage-Konvertierungstabelle von der Microsoft-Konvertierungstabelle unterscheidet. Die IBM Konvertierungstabelle befolgt bei Zeichennamen die japanischen Industriestandards JISX0208, JISX0212 und JISX0221. Wenn die folgenden Zeichen von CCSID 954 in Unicode konvertiert werden, resultieren daraus unterschiedliche Codepunkte, je nach dem, welche Konvertierungstabelle (IBM oder Microsoft) verwendet wird. Tabelle 3. Codepunkt-Konvertierung (CCSID 954 in Unicode) +-----------------------+----------------------+----------------------+ | EUC-JP-Codepunkt | Primärer IBM | Primärer | | (Name des Zeichens) | Codepunkt | Microsoft-Codepunkt | | | (Unicode-Name) | (Unicode-Name) | +-----------------------+----------------------+----------------------+ | X'A1BD' | U+2014 | U+2015 (horizontale | | (Geviertstrich) | (Geviertstrich) | Linie) | +-----------------------+----------------------+----------------------+ | X'A1C1' (gewellter | U+301C (gewellter | U+FF5E (vollbreite | | Bindestrich) | Bindestrich) | Tilde) | +-----------------------+----------------------+----------------------+ | X'A1C2' (doppelte | U+2016 (doppelte | U+2225 (parallel) | | vertikale Linie) | vertikale Linie) | | +-----------------------+----------------------+----------------------+ | X'A1DD' | U+2212 | U+FF0D (vollbreites | | (Minuszeichen) | (Minuszeichen) | Minuszeichen) | +-----------------------+----------------------+----------------------+ | X'8FA2C3' | U+00A6 | U+FFE4 (vollbreiter, | | (unterbrochener | (unterbrochener | unterbrochener | | Strich) | Strich) | Strich) | +-----------------------+----------------------+----------------------+ Das Geviertzeichen mit dem CCSID 954-Codepunkt X'A1BD' wird bei Verwendung der IBM Konvertierungstabelle z. B. in den Unicode-Codepunkt U+2014 und bei Verwendung der Microsoft-Konvertierungstabelle in U+2015 konvertiert. Auf Grund der unterschiedlichen Konvertierungszuordnung ist es möglich, dass in einer DB2 UDB-Unicode-Datenbank oder in der Grafikspalte einer DB2 UDB-954-Datenbank zwei unterschiedliche Codepunkte für dasselbe Zeichen verwendet werden. Dies kann bei Microsoft-ODBC-Anwendungen zu Fehlern führen, da diese Anwendungen U+2014 als ungültigen Codepunkt behandeln. Zur Vermeidung dieser Fehler stellt DB2 UDB zusätzlich zur IBM Standardkonvertierungstabelle eine alternative Microsoft-Tabelle für die Konvertierung von CCSID 954 in Unicode zur Verfügung. Ersetzen Sie die IBM Standardkonvertierungstabelle durch die alternative Microsoft-Konvertierungstabelle. Achten Sie darauf, dass die IBM Standardkonvertierungstabelle von Unicode in CCSID 954 mit der Microsoft-Version übereinstimmt. Ersetzen der Unicode-Konvertierungstabellen für CCSID 954 durch die Microsoft-Konvertierungstabellen Bei der Konvertierung von CCSID 954 in Unicode wird die DB2 Universal Database-Standardkonvertierungstabelle für Codepages verwendet. Wenn Sie eine andere Version der Konvertierungstabelle verwenden möchten, z. B. die Microsoft-Version, müssen Sie die Datei für die Standardkonvertierungstabelle (.cnv) manuell ersetzen. Voraussetzungen Bevor Sie die vorhandene Datei für die Codepage-Konvertierungstabelle im Verzeichnis sqllib/conv ersetzen, sollten Sie eine Sicherungskopie für den Fall erstellen, dass Sie die ursprüngliche Datei später wiederherstellen möchten. Unter UNIX und Linux ist das Verzeichnis sqllib/conv mit dem Installationspfad von DB2 UDB verknüpft. Einschränkungen Damit das Ersetzen effektiv ist, müssen die Konvertierungstabellen aller DB2 UDB-Clients geändert werden, die eine Verbindung zu einer CCSID 954-Datenbank herstellen. Wenn es sich um einen japanischen Windows-Client handelt, der die ANSI-Codepage Shift-JIS (CCSID 943) verwendet, müssen Sie auch die DB2-Standardkonvertierungstabellen von CCSID 943 in Unicode in die Microsoft-Version ändern. Andernfalls speichern die Clients dasselbe Zeichen möglicherweise mit unterschiedlichen Codepunkten. Vorgehensweise Führen Sie die folgenden Schritte aus, um die Standardkonvertierungstabelle von DB2 UDB zur Konvertierung von CCSID 954 in Unicode zu ersetzen: 1. Kopieren Sie sqllib/conv/ms/0954ucs2.cnv in sqllib/conv/0954ucs2.cnv. 2. Starten Sie DB2 UDB erneut. Führen Sie die folgenden Schritte aus, um die Standardkonvertierungstabelle von DB2 UDB zur Konvertierung von CCSID 943 in Unicode zu ersetzen: 1. Kopieren Sie sqllib/conv/ms/0943ucs2.cnv in sqllib/conv/0943ucs2.cnv. 2. Kopieren Sie sqllib/conv/ms/ucs20943.cnv in sqllib/conv/ucs20943.cnv. 3. Starten Sie DB2 UDB erneut. Alternative Unicode-Konvertierungstabellen für ID für codierten Zeichensatz (CCSID) 943 Wenn Sie die japanische Windows-Codepage Shift-JIS von Microsoft verwenden (bei IBM als CCSID 943 registriert), treten bei der Zeichenkonvertierung von CCSID 943 in Unicode möglicherweise die folgenden zwei Probleme auf. Dies liegt daran, dass sich die IBM Codepage-Konvertierungstabelle von der Microsoft-Konvertierungstabelle unterscheidet. Zur Vermeidung dieser Probleme stellt DB2 Universal Database (UDB) zusätzlich zu den IBM Standardkonvertierungstabellen alternative Microsoft-Tabellen für die Konvertierung von CCSID 943 in Unicode zur Verfügung. Problem 1 Aus historischen Gründen werden die mehr als 300 Zeichen der Codepage CCSID 943 jeweils durch zwei oder drei Codepunkte dargestellt. Durch die Verwendung von Eingabemethodeneditoren (Input Method Editors, IMEs) und Codepagekonvertierungstabellen wird nur einer der entsprechenden Codepunkte eingegeben. Beispiel: Der Kleinbuchstabe 'i' für die römische Zahl Eins besitzt zwei äquivalente Codepunkte: X'EEEF' und X'FA40'. Die Eingabemethodeneditoren von Microsoft Windows generieren bei Eingabe von 'i' immer X'FA40'. Im Allgemeinen nutzen IBM und Microsoft die gleichen primären Codepunkte zur Darstellung eines Zeichens. Hiervon ausgenommen sind die folgenden 13 Zeichen: Tabelle 4. Codepunktkonvertierung (CCSID 943 in Shift-JIS) +-----------------------+----------------------+----------------------+ | Zeichenname | Primärer IBM | Primärer | | (Unicode-Codepunkt) | Codepunkt | Microsoft-Codepunkt | | | (Shift-JIS) | (Shift-JIS) | +-----------------------+----------------------+----------------------+ | Römische Zahl Eins | X'FA4A' | X'8754' | | (U+2160) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Zwei | X'FA4B' | X'8755' | | (U+2161) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Drei | X'FA4C' | X'8756' | | (U+2162) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Vier | X'FA4D' | X'8757' | | (U+2163) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Fünf | X'FA4E' | X'8758' | | (U+2164) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Sechs | X'FA4F' | X'8759' | | (U+2165) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Sieben | X'FA50' | X'875A' | | (U+2166) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Acht | X'FA51' | X'875B' | | (U+2167) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Neun | X'FA52' | X'875C' | | (U+2168) | | | +-----------------------+----------------------+----------------------+ | Römische Zahl Zehn | X'FA53' | X'875D' | | (U+2169) | | | +-----------------------+----------------------+----------------------+ | In Klammern gesetztes | X'FA58' | X'FA58' | | Zeichen, das einen | | | | Stub darstellt | | | | (U+3231) | | | +-----------------------+----------------------+----------------------+ | Nummernzeichen | X'FA59' | X'8782' | | (U+2116) | | | +-----------------------+----------------------+----------------------+ | Telefonzeichen | X'FA5A' | X'8754' | | (U+2121) | | | +-----------------------+----------------------+----------------------+ IBM Produkte wie DB2 UDB verwenden grundsätzlich IBM Codepunkte, wie z. B. X'FA4A', um die großgeschriebene römische Zahl Eins ('I') darzustellen. Bei Microsoft-Produkten wird das gleiche Zeichen hingegen mit X'8754' dargestellt. Eine Microsoft-ODBC-Anwendung kann das Zeichen 'I' als X'8754' in eine DB2 UDB-Datenbank mit CCSID 943 einfügen und die DB2 UDB-Steuerzentrale kann dasselbe Zeichen als X'FA4A' in die gleiche CCSID 943-Datenbank einfügen. ODBC-Anwendungen können jedoch nur die Zeilen finden, in denen 'I' als X'8754' codiert ist, und die DB2 UDB-Steuerzentrale kann nur die Zeilen finden, in denen 'I' als X'FA4A' codiert ist. Damit die DB2 UDB-Steuerzentrale das Zeichen 'I' als X'8754' auswählen kann, müssen Sie die IBM Standardtabellen für die CCSID 943-Unicode-Konvertierung durch die alternativen Konvertierungstabellen von Microsoft ersetzen. Problem 2 Wenn die folgenden Zeichen von CCSID 943 in Unicode konvertiert werden, resultieren daraus abhängig von der verwendeten Konvertierungstabelle (IBM oder Microsoft) unterschiedliche Codepunkte. Die IBM Konvertierungstabelle entspricht bei diesen Zeichen dem japanischen Industriestandard JISX0208, JISX0212 und JISX0221. Tabelle 5. Codepunktkonvertierung (CCSID 943 in Unicode) +-----------------------+----------------------+----------------------+ | Shift-JIS-Codepunkt | Primärer IBM | Primärer | | (Name des Zeichens) | Codepunkt | Microsoft-Codepunkt | | | (Unicode-Name) | (Unicode-Name) | +-----------------------+----------------------+----------------------+ | X'815C' | U+2014 | U+2015 (horizontale | | (Geviertstrich) | (Geviertstrich) | Linie) | +-----------------------+----------------------+----------------------+ | X'8160' (gewellter | U+301C (gewellter | U+FF5E (vollbreite | | Bindestrich) | Bindestrich) | Tilde) | +-----------------------+----------------------+----------------------+ | X'8161' (doppelte | U+2016 (doppelte | U+2225 (parallel) | | vertikale Linie) | vertikale Linie) | | +-----------------------+----------------------+----------------------+ | X'817C' | U+2212 | U+FF0D (vollbreites | | (Minuszeichen) | (Minuszeichen) | Minuszeichen) | +-----------------------+----------------------+----------------------+ | X'FA55' | U+00A6 | U+FFE4 (vollbreiter, | | (unterbrochener | (unterbrochener | unterbrochener | | Strich) | Strich) | Strich) | +-----------------------+----------------------+----------------------+ Das Geviertzeichen mit dem CCSID 943-Codepunkt X'815C' wird bei Verwendung der IBM Konvertierungstabelle z. B. in den Unicode-Codepunkt U+2014 konvertiert. Bei Verwendung der Microsoft-Konvertierungstabelle hingegen wird er in den Codepunkt U+2015 konvertiert. Auf Grund der unterschiedlichen Konvertierungszuordnung ist es möglich, dass in einer DB2 UDB-Unicode-Datenbank zwei unterschiedliche Codepunkte für dasselbe Zeichen verwendet werden. Dies kann bei Microsoft-ODBC-Anwendungen zu Fehlern führen, da diese Anwendungen U+2014 als ungültigen Codepunkt behandeln. Zur Vermeidung dieses möglichen Problems müssen Sie die IBM Standardtabellen für die Konvertierung der Zeichen von CCSID 943 in Unicode durch die alternativen Microsoft-Konvertierungstabellen ersetzen. Die Verwendung der alternativen Microsoft-Tabellen für die Zeichenkonvertierung von CCSID 943 in Unicode sollte jedoch auf geschlossene Umgebungen beschränkt werden, in der alle DB2 UDB-Clients und DB2 UDB-Datenbanken über die Codepage 943 verfügen und alle die gleichen alternativen Microsoft-Konvertierungstabellen verwenden. Angenommen, Sie verfügen über einen DB2 UDB-Client, der die IBM Standardkonvertierungstabellen verwendet, und über einen anderen DB2 UDB-Client, der die alternativen Microsoft-Konvertierungstabellen verwendet. Wenn nun beide Clients Daten in dieselbe DB2 UDB-Datenbank mit CCSID 943 einfügen, wird das gleiche Zeichen in der Datenbank möglicherweise mit unterschiedlichen Codepunkten gespeichert. Ersetzen der Unicode-Konvertierungstabellen für CCSID 943 durch die Microsoft-Konvertierungstabellen Zur Konvertierung zwischen CCSID 943 und Unicode werden die Standardkonvertierungstabellen von DB2 Universal Database (UDB) verwendet. Wenn Sie eine andere Version der Konvertierungstabellen verwenden wollen, wie zum Beispiel die Microsoft-Version, müssen Sie die Standarddateien mit den Konvertierungstabellen (.cnv) manuell ersetzen. Voraussetzungen Bevor Sie die vorhandenen Konvertierungstabellendateien für Codepages im Verzeichnis sqllib/conv ersetzen, sollten Sie die Dateien für den Fall sichern, dass Sie die Ersetzung rückgängig machen wollen. Unter UNIX und Linux ist das Verzeichnis sqllib/conv mit dem Installationspfad von DB2 UDB verknüpft. Einschränkungen Damit das Ersetzen der Konvertierungstabelle effektiv sein kann, müssen die Konvertierungstabellen aller DB2 UDB-Clients geändert werden, die eine Verbindung zur gleichen Datenbank herstellen. Andernfalls speichern die einzelnen Clients dasselbe Zeichen möglicherweise mit unterschiedlichen Codepunkten. Vorgehensweise Gehen Sie wie folgt vor, um die DB2 UDB-Standardtabellen für die Konvertierung von CCSID 943 in Unicode zu ersetzen: 1. Kopieren Sie sqllib/conv/ms/0943ucs2.cnv nach sqllib/conv/0943ucs2.cnv. 2. Kopieren Sie sqllib/conv/ms/ucs20943.cnv nach sqllib/conv/ucs20943.cnv. 3. Starten Sie DB2 UDB erneut. Keine Unterstützung für Betriebssystem MVS Das Betriebssystem MVS wird von DB2 Universal Database nicht mehr unterstützt, auch wenn dies in der Dokumentation noch erwähnt wird. MVS wurde durch z/OS ersetzt. Sichern und Wiederherstellen (Linux 390) Sicherungs- und Wiederherstellungsoperationen von mehreren bzw. auf mehrere Bandeinheiten funktionieren möglicherweise nicht, wenn Sie das Betriebssystem Linux 390 verwenden. Aktivieren der Sichtandockung beim Zugriff auf die Entwicklungszentrale mit Hummingbird Exceed Für den Zugriff auf die Entwicklungszentrale unter UNIX mit Hummingbird Exceed muss die XTEST-Erweiterung Version 2.2 aktiviert werden, bevor Sie Sichten durch Ziehen der Titelleiste mit der Maus innerhalb der Entwicklungszentrale versetzen und andocken können. Gehen Sie wie folgt vor, um die XTEST-Erweiterung zu aktivieren: 1. Wählen Sie im Menü Start die Optionen Programme -> Hummingbird Connectivity 7.0 -> Exceed -> XConfig aus. Das Fenster von XConfig wird geöffnet. 2. Optional: Wenn Ihre Konfiguration ein Kennwort erfordert, geben Sie das XConfig-Kennwort ein. 3. Klicken Sie das Protokollsymbol (Protocol) doppelt an. Das Fenster Protocol wird geöffnet. 4. Wählen Sie das Markierungsfeld X Conformance Test Compatibility aus. 5. Klicken Sie im Fenster Protocol den Knopf Extensions... an. Das Fenster Protocol Extensions wird geöffnet. 6. Wählen Sie in der Liste Enable Extensions das Markierungsfeld XTEST(X11R6) aus. 7. Klicken Sie OK an. Informationen zu Installation, Migration, Upgrade und Konfiguration Änderungsmarkierungen zeigen an, dass Text hinzugefügt oder geändert wurde. Ein vertikaler Balken ( | ) markiert Informationen, die in Version 8.2 FixPak 4 (äquivalent zu Version 8.1 FixPak 11). hinzugefügt oder geändert wurden. Hardware- und Softwarevoraussetzungen Die Hardware- und Softwarevoraussetzungen finden Sie auf folgender Website: http://www.ibm.com/software/data/db2/udb/sysreqs.html Installationshinweise Bei UNIX- und Linux-Plattformen beziehen sich diese Installationshinweise nur auf die Installation neuer Produkte. Informationen zur Anwendung eines FixPaks finden Sie in der Readme-Datei des jeweiligen FixPaks. Bei Windows-Plattformen beziehen sich diese Installationshinweise auf die Installation neuer Produkte sowie auf die Anwendung von FixPaks. Wenn Sie ein FixPak anwenden möchten, verwenden Sie diese Installationshinweise immer zusammen mit der Readme-Datei des FixPaks. Lesen Sie vor der Installation von DB2 Universal Database den folgenden Abschnitt sorgfältig durch. Neue Optionen für den DB2-Installationsassistenten (Windows) Angeben des Installationspfads über die Befehlszeile Der DB2(R)-Installationsassistent ermöglicht mit Hilfe einer neuen Option die Angabe des Installationspfads über die Befehlszeile: -p installationsverzeichnis Diese Option überschreibt den in der Antwortdatei möglicherweise angegebenen Wert. Mit der neuen Option -p [installationsverzeichnis] kann der Installationspfad des Produkts geändert werden, ohne die Antwortdatei zu ändern. Neue Installationsoption NO_CONFIG Wird das Schlüsselwort NO_CONFIG der Antwortdatei hinzugefügt, werden alle aktiven Operationen inaktiviert. Das Installationsprogramm legt weiterhin Umgebungsvariablen fest und führt andere grundlegende Konfigurationsaufgaben aus, die nach Abschluss der Installation für das manuelle Erstellen von Exemplaren sowie für das manuelle Erstellen des DB2(R)-Verwaltungsservers erforderlich sind. Nicht unbedingt erforderliche Konfigurationsschritte werden nicht vorgenommen. Wenn diese Option in der Antwortdatei angegeben wird, werden alle Schlüsselwörter ausgewertet, die während der Konfiguration verwendet werden, aber die diesen Schlüsselwörtern zugeordnete Konfiguration erfolgt nicht. Fortschrittsanzeige Es gibt eine neue Option, mit der bei Ausführung einer nicht überwachten Installation nur das Fortschrittsfenster des DB2(R)-Installationsassistenten angezeigt wird. Die neue Option -m muss zusammen mit dem Parameter -u [antwortdatei] verwendet werden. Wird die Option -m ohne die Option für die Antwortdatei angegeben, gibt das Installationsprogramm eine Nachricht zurück, dass das Argument fehlerhaft ist. Wird die Option -m angegeben, werden nur die Fenster angezeigt, in denen keine Benutzereingabe erforderlich ist. Nach dem Starten des Befehls setup.exe beispielsweise zeigt das Installationsprogramm Fenster an, fordert aber keine Eingaben an. Nach Abschluss der Installation werden die Fenster geschlossen, und der Prozess setup.exe wird beendet. Änderungen des DB2-Installationsassistenten (Windows) Optionen des DB2-Installationsassistenten (setup.exe) Die Datei setup.exe, die die DB2-Installation startet, wartet jetzt den Abschluss der Installation ab, bevor sie beendet wird. Dies ist das Standardverhalten. Zurzeit gibt es eine Option -w, dieser Parameter ändert das Verhalten des DB2-Installationsassistenten jedoch nicht mehr. Sie können die neue Option -c verwenden, um den DB2-Installationsassistenten zu zwingen, sich sofort nach dem Start der Installation zu beenden. Wenn Sie diese Option auswählen, kann der Rückkehrcode der Installation nicht durch Überwachung des Exit-Codes der Datei setup.exe ermittelt werden. Ein Fehler wird zurückgegeben, wenn die Optionen -w und -c zusammen angegeben werden. Einschränkungen bei der Installation der erweiterten Sicherheit (Windows) Mit DB2 Universal Database(TM) (UDB) Version 8.2 wurde eine neue Funktion eingeführt, die den Zugriff auf DB2-Ressourcen sichert, indem die Sicherheitsfunktionen des NTFS-Dateisystems und des Windows(R)-Betriebssystems genutzt werden. Der sichere Zugriff wird in erster Linie durch Modifizierung der Zugriffssteuerungslisten von DB2-Dateien, Registrierdatenbankeinträgen und Laufzeitspeicherobjekten durchgesetzt. Standardmäßig aktiviert der DB2-Installationsassistent diese neue Sicherheitsfunktion. Die erweiterte Windows(R)-Sicherheit kann inaktiviert werden, indem Sie eine angepasste Installation durchführen und die Auswahl des Markierungsfelds für die erweiterte Windows(R)-Sicherheit im Fenster Betriebssystemsicherheit für DB2-Objekte aktivieren zurücknehmen. Die einzige empfohlene Methode zum Inaktivieren der neuen Sicherheitsfunktion ist die Ausführung des Befehls db2secv82. Der Befehl db2secv82 muss jedoch unmittelbar nach der Installation ausgeführt werden. Weitere Informationen zum Befehl db2secv82 finden Sie in DB2 Information - Unterstützung unter http://publib.boulder.ibm.com/infocenter/db2help/. Sie können DB2 UDB mit einer Benutzer-ID installieren. Diese Benutzer-ID muss jedoch zur Gruppe DB2ADMNS oder DB2USERS oder zur Gruppe der lokalen Administratoren gehören, um DB2-Befehle ausführen zu können. Nur Benutzer, die zur Gruppe DB2ADMNS oder DB2USERS oder zur Gruppe der lokalen Administratoren gehören, haben Zugriff auf die DB2-Systemdateien, die DB2-Registrierdatenbankschlüssel, die im Netzwerk freigegebenen Verzeichnisse und die DB2-Services auf dem lokalen Rechner, auf dem DB2 UDB ausgeführt wird. In der Regel haben Benutzer, die zur Gruppe DB2ADMNS gehören, wie auch Benutzer, die zur Gruppe der lokalen Administratoren gehören, vollen Zugriff auf DB2 Ressourcen. Benutzer, die zur Gruppe DB2USERS gehören, haben Schreib- und Ausführungszugriff. Nach der Installation von DB2 UDB Version 8.2 müssen Benutzer, die Lesezugriff benötigen (beispielsweise zum Ausführen von Abfragen), der Gruppe DB2USERS hinzugefügt werden. Benutzer, die vollen Steuerzugriff benötigen (beispielsweise Datenbankadministratoren), müssen der Gruppe DB2ADMNS hinzugefügt werden. Die Benutzerverwaltung muss entsprechend den Sicherheitsmaßnahmen in Ihrer Umgebung erfolgen. Auswirkungen der neuen Sicherheitsmaßnahmen auf eine Standardinstallation Während einer Standardinstallation von DB2 UDB unter Windows ist die erweiterte Sicherheit standardmäßig aktiviert. DB2 UDB erstellt die Gruppen DB2ADMNS und DB2USERS standardmäßig. Wenn es einen Konflikt mit vorhandenen Gruppennamen gibt, werden Sie aufgefordert, die Gruppennamen zu ändern. Sie können Ihre eigenen Werte angeben, sofern dies erforderlich ist. Wenn Sie eine vorhandene Sicherheitsgruppe verwenden wollen, werden die Sicherheitsmaßnahmen für diese Gruppe entsprechend den Anforderungen von DB2 UDB modifiziert. Wenn Sie eine vorhandene Sicherheitsgruppe auswählen, könnten Sie die Berechtigungen von Benutzern erweitern, wenn die Benutzer schon in dieser Gruppe vorhanden sind. Auswirkungen der neuen Sicherheitsmaßnahmen auf eine angepasste Installation oder eine FixPak-Installation Während einer angepassten Installation oder einer FixPak-Installation von DB2 UDB unter Windows wird das Fenster Betriebssystemsicherheit für DB2-Objekte aktivieren geöffnet. Wenn Sie die erweiterte Windows-Sicherheit aktivieren wollen, können Sie Weiter anklicken, um den Standardwert zu übernehmen. Wenn Sie die erweiterte Windows-Sicherheit inaktivieren wollen, nehmen Sie die Auswahl des Markierungsfelds für die Aktivierung der Betriebssystemsicherheit im Fenster Betriebssystemsicherheit für DB2-Objekte aktivieren zurück. Hinzufügen von Benutzer-IDs für den Zugriff auf DB2 UDB nach der Installation Nach einer Standardinstallation oder einer angepassten Installation müssen Sie Ihre Benutzer-IDs der Gruppe DB2ADMNS und/oder DB2USERS hinzufügen, damit diese Benutzer Zugriff auf DB2 UDB erhalten. Gehen Sie wie folgt vor, um der entsprechenden Gruppe Benutzer hinzuzufügen: 1. Starten Sie das Tool für die Verwaltung von Benutzern und Kennwörtern. 2. Wählen Sie den Benutzernamen, den Sie hinzufügen wollen, aus der Liste aus. 3. Klicken Sie Eigenschaften an. Klicken Sie im Fenster Eigenschaften die Indexzunge Mitgliedschaft in Gruppen an. 4. Wählen Sie den Radioknopf Andere aus. 5. Wählen Sie aus der Dropdown-Liste die entsprechende Gruppe aus. Aktivieren der erweiterten Windows-Sicherheit nach der Installation Wenn Sie DB2 UDB installiert und die neue Sicherheitsfunktion nicht aktiviert haben, können Sie dies nach der Installation nachholen, indem Sie den Befehl db2secv82.exe ausführen. Nachdem Sie die Sicherheitsfunktion mit Hilfe des Befehls db2secv82.exe aktiviert haben, haben Sie die folgenden Möglichkeiten, dies zurückzunehmen: Option 1 Führen Sie den Befehl db2secv82.exe unverzüglich erneut aus, ohne weitere Änderungen am System vorzunehmen. Wenn Änderungen irgendwelcher Art am System vorgenommen wurden, müssen Sie Option 2 verwenden. Option 2 Fügen Sie die Gruppe 'Jeder' den Gruppen DB2ADMNS und DB2USERS hinzu. Durch das Hinzufügen der Gruppe 'Jeder' zu diesen Sicherheitsgruppen erhalten alle Benutzer alle Zugriffsrechte für die Verwendung von DB2 UDB. Das Inaktivieren der Sicherheit wird jedoch nicht empfohlen, da dies zu einem unerwünschten Sicherheitsrisiko führen könnte. Das Inaktivieren von Sicherheit könnte dazu führen, dass einige Benutzer DB2 UDB nicht verwenden können, weil die von DB2 UDB während der Ausführung erstellte Zugriffssteuerungsliste von der Zugriffssteuerungsliste abweicht, die auf das Dateisystem angewendet worden ist. Verzeichnispfad darf keine Leerzeichen enthalten (Linux und UNIX) Wenn das Programm 'db2setup' von einem Verzeichnis aus ausgeführt wird, dessen Pfad ein Leerzeichen enthält, schlägt die Installation mit folgendem Fehler fehl: : nicht gefunden. Setzen Sie das Installationsimage in ein Verzeichnis, dessen Pfad keine Leerzeichen enthält. Voraussetzung für Red Hat Enterprise Linux 4 Das Paket compat-libstdc++-33 muss vor der Installation von DB2 Universal Database für Linux(TM) unter Red Hat Enterprise Linux(R) 4 installiert werden. JDK-Stufen für DB2 UDB (Linux für IA64 und Linux für POWER) Bei der Installation von Version 8.2 von DB2 Universal Database (UDB) unter Linux versucht die RPM-basierte Installation, IBM Java RPM (IBMJava2-SDK-ppc-1.4.1-2.0.ppc.rpm) zu installieren. Wenn bereits eine aktuellere RPM-Version (z. B. IBMJava2-SDK-ppc-1.5.0-2.0.ppc.rpm) vorhanden ist, wird die frühere RPM-Version nicht installiert. In diesem Fall verweist der Datenbankkonfigurationsparameter JDK_PATH nach der Installation jedoch weiterhin auf den Pfad für Java 1.4, /opt/IBMJava2-14/. Deshalb können keine der Java-abhängigen Leistungsmerkmale, auch nicht die Installation des DB2-Toolskatalogs, ausgeführt werden. Voraussetzung Sie müssen den folgenden Befehl als Exemplareigner ausführen. Vorgehensweise 1. Damit DB2 UDB auf das richtige IBM(R) Developer Kit verweist, führen Sie folgenden Befehl aus: db2 update dbm cfg using JDK_PATH pfad Dabei ist pfad der Installationspfad für Version 1.5, wie beispielsweise /opt/IBMJava2-15. Dekomprimieren von Installationsimages (Linux und UNIX) Einige Installationsimages sind in komprimierter Form bzw. im gzip-Format auf der Produkt-CD enthalten. Bevor Sie DB2 Universal Database (UDB) ausgehend von diesen Formaten installieren können, müssen Sie das Installationsimage in ein temporäres Verzeichnis kopieren und es dekomprimieren bzw. mit gunzip entpacken. Die komprimierten bzw. im gzip-Format vorliegenden Installationsimages auf der CD haben den Dateinamen PRODUKT.tar.Z bzw. PRODUKT.tar.gz, wobei PRODUKT das DB2-Produkt ist, das Sie gerade installieren. Wenn Sie z. B. DB2 UDB Enterprise Server Edition installieren, könnte das komprimierte Image auf der entsprechenden CD beispielsweise ese.tar.Z bzw. ese.tar.gz heißen. Zusätzlich zur erforderlichen Plattenspeicherkapazität für die Software müssen Sie über ein Dateisystem mit mindestens 2 GB freiem Speicherbereich verfügen, um die tar.Z- bzw. tar.gz-Datei und das dekomprimierte Installationsimage aufzunehmen. Vorgehensweise Führen Sie die folgenden Schritte aus, um das Installationsimage zu dekomprimieren: 1. Kopieren Sie das komprimierte bzw. im gzip-Format vorliegende Installationsimage in ein temporäres Dateisystem mit mindestens 2 Gigabyte freiem Speicherbereich. 2. Wechseln Sie in das Verzeichnis, in das Sie das Installationsimage kopiert haben, indem Sie cd /TMP eingeben, wobei /TMP für das Verzeichnis steht, in das Sie das komprimierte Image kopiert haben. 3. Wenn das zu installierende Produkt die Erweiterung *.tar.Z hat, geben Sie zur Dekomprimierung des Installationsimages folgenden Befehl ein: zcat PRODUKT.tar.Z | tar -xvf - Dabei ist PRODUKT das DB2-Produkt ist, das Sie gerade installieren. 4. Wenn das zu installierende Produkt die Erweiterung *.tar.gz hat, geben Sie zur Dekomprimierung des Installationsimages folgenden Befehl ein: gunzip -c PRODUKT.tar.gz | tar -xvf - Dabei ist PRODUKT das DB2-Produkt ist, das Sie gerade installieren. Anmerkungen: a. gunzip ist Teil des Standardinstallationssetups von AIX 5L. Falls Sie nicht über gunzip verfügen, installieren Sie die Dateigruppe rpm.rte von den AIX 5L-Installationsmedien. In der Dateigruppe rpm.rte ist gunzip enthalten. b. Sie können gzip für AIX 5L (enthält gunzip) auch von folgender Site herunterladen: http://www.ibm.com/servers/aix/products/aixos/linux/rpmgroups.html. 5. Informationen zur Durchführung der Installation mit Hilfe des DB2-Installationsassistenten finden Sie im Abschnitt Installieren von DB2 UDB von Installationsimages (Linux und UNIX). Nur englische Zeichen im Installationspfad für DB2 UDB zulässig (Windows) Bei der Installation von DB2 Universal Database (UDB) unter Windows können Sie den Verzeichnispfad für DB2 UDB eingeben. Der Verzeichnispfad, den Sie eingeben, darf jedoch nur englische Zeichen enthalten (beispielweise keine Umlaute). Herunterladen und Dekomprimieren von FixPaks für mehrere Produkte (Windows) Ab DB2 Version 8 für Windows FixPak 3 stellt IBM kein allgemeines FixPak, sondern produktspezifische FixPaks zur Verfügung. Diese Änderung betrifft nur DB2-Produkte der Version 8 auf Windows-Plattformen. Sind mehrere DB2-Produkte installiert, müssen Sie vor der Installation für jedes DB2-Produkt ein Image herunterladen und dekomprimieren. Wenn Sie z. B. auf dem gleichen Windows-System DB2 UDB Enterprise Server Edition Version 8 und DB2 Spatial Extender Version 8 installiert haben, müssen Sie das FixPak-Image von DB2 UDB Enterprise Server Edition und das FixPak-Image von Spatial Extender herunterladen. Sie müssen all diese FixPak-Images im selben Verzeichnis dekomprimieren. Alle Images müssen dekomprimiert werden, damit die automatische Installation oder die Installation über die GUI fortgesetzt werden kann. Umfassende Anweisungen zur Installation von FixPaks finden Sie in der neuesten Readme-Datei für DB2 UDB-FixPaks. Installieren von DB2 UDB von Installationsimages (Linux und UNIX) Voraussetzungen Vor dem Start des DB2-Installationsassistenten: * Stellen Sie sicher, dass Ihr System die Voraussetzungen für Installation, Speicher- und Plattenplatz erfüllt. Siehe den Abschnitt Hardware- und Softwarevoraussetzungen. Anmerkung: DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) enthält einen neuen Installationsimagesatz für Linux(R)-Varianten auf x86- (32 Bit, Intel(R) und AMD) und x86-64-Architekturen (64 Bit, Intel(R), EM64T und AMD64), die auf dem 2.6-Kernel basieren (beispielsweise Red Hat Enterprise Linux 4 und SuSE Linux Enterprise Server 9). Stellen Sie sicher, dass Sie für Ihre Linux-Variante den geeigneten Installationsimagesatz erworben haben, bevor Sie mit der Installation fortfahren. * Lesen Sie die Informationen zu den Installationsvoraussetzungen. Die Datei install.txt oder install.htm befindet sich auf der CD im Verzeichnis /cdrom/doc/sprache/. Dabei gilt Folgendes: * cdrom steht für den Mountpunkt. * sprache steht für das aus fünf Zeichen bestehende Sprachenverzeichnis. * Für die Ausführung der Installation benötigen Sie eine Rootberechtigung. * Die DB2-Produkt-CD muss an Ihr System angehängt sein. Vorgehensweise Wenn die Installationsimages in komprimierter Form oder im gzip-Format auf der Produkt-CD geliefert werden, müssen Sie das Installationsimage vor der Installation von DB2 UDB dekomprimieren bzw. mit gunzip entpacken. Details hierzu finden Sie im Abschnitt Dekomprimieren von Installationsimages (Linux und UNIX). Geben Sie folgenden Befehl ein, um die Installation mit Hilfe des DB2-Installationsassistenten durchzuführen: ./PRODUKT/db2setup Dabei ist PRODUKT das DB2-Produkt ist, das Sie gerade installieren. Wenn Sie z. B. DB2 UDB Enterprise Server Edition installieren, geben Sie ./ese/db2setup ein. Der Installationsassistent wird geöffnet. Dieser führt Sie durch die verschiedenen Installationsanzeigen. Installieren von DB2 UDB von Installationsimages (Windows) Voraussetzungen Vor dem Start des DB2-Installationsassistenten: * Stellen Sie sicher, dass Ihr System die Voraussetzungen für Installation, Speicher- und Plattenplatz erfüllt. Siehe den Abschnitt Hardware- und Softwarevoraussetzungen. * Lesen Sie die Informationen zu den Installationsvoraussetzungen. Die Datei install.txt oder install.htm befindet sich auf der CD im Verzeichnis x:\doc\sprache. Dabei gilt Folgendes: * x steht für das CD-ROM-Laufwerk. * sprache steht für das aus fünf Zeichen bestehende Sprachenverzeichnis. * Zur Durchführung der Installation müssen Sie über ein Benutzerkonto als lokaler Administrator mit den empfohlenen Benutzerrechten verfügen. Legen Sie die CD in das Laufwerk ein, um die Installation mit Hilfe des DB2-Installationsassistenten durchzuführen: Ist die Funktion für die automatische Ausführung aktiviert, wird der DB2-Installationsassistent automatisch gestartet. Vorgehensweise Sollte die Funktion für die automatische Ausführung nicht aktiviert sein, können Sie den DB2-Installationsassistenten auch manuell starten: 1. Klicken Sie Start an, und wählen Sie die Option Ausführen aus. 2. Geben Sie in das Feld Öffnen folgenden Befehl ein: x:\setup /i sprache Dabei gilt Folgendes: * x: steht für das CD-ROM-Laufwerk. * sprache ist die Gebietskennung für Ihre Sprache (z. B. DE für Deutsch). Der Parameter /i sprache ist optional. Wenn Sie diesen Parameter nicht festlegen, wird der DB2-Installationsassistent in der Sprache Ihres Betriebssystems ausgeführt. 3. Klicken Sie OK an. Der DB2-Installationsassistent wird geöffnet. Dieser führt Sie durch die verschiedenen Installationsanzeigen. Anmerkung: DB2 Run-Time Client Lite verwendet andere Befehlszeilenparameter. Details hierzu finden Sie in DB2 Information - Unterstützung unter http://publib.boulder.ibm.com/infocenter/db2help/. Für Installation über DB2 UDB-Antwortdatei erforderlicher Plattenspeicherplatz Wenn Sie ein DB2 Universal Database-Produkt über eine Antwortdatei installieren, wird im Verzeichnis etc 1 MB freier Plattenspeicherplatz benötigt. Wenn Sie bei der Installation über eine Antwortdatei die Fehlernachricht DBI1191I erhalten, zeigt diese Nachricht an, dass im Stammverzeichnis nicht genügend freier Plattenspeicherplatz zur Verfügung steht. Diese Nachricht ist irreführend. Überprüfen Sie den im Verzeichnis etc zur Verfügung stehenden freien Plattenspeicherplatz. Sie benötigen mindestens 1 MB freien Plattenspeicherplatz, bevor Sie die Installation erneut starten können. Einschränkungen für das Hinzufügen von Produkten mit dem Befehl 'db2setup' (Linux und UNIX) Nachdem Sie ein DB2-Produkt installiert haben, können Sie zusätzliche DB2-Produkte hinzufügen. Wenn Sie Produkte mit dem Befehl db2setup hinzufügen, gelten die folgenden Empfehlungen und Einschränkungen. Empfehlungen Das installierte Produkt und das Produkt, das hinzugefügt wird, sollten dieselbe Codestufe aufweisen. Beispiel: Ein Server mit DB2 Universal Database (UDB) Enterprise Server Edition Version 8 FixPak 5 ist bereits installiert, und Sie möchten DB2 Information Integrator hinzufügen. In diesem Fall sollte DB2 Information Integrator Version 8 FixPak 5 installiert werden. Einschränkungen * Wenn die DB2-FixPak-Stufe höher ist als die FixPak-Stufe des hinzugefügten Produkts, ist die Kombination zulässig. Da die FixPak-Stufe des hinzugefügte Produkts jedoch niedriger ist als die DB2-FixPak-Stufe, muss die DB2-FixPak-Stufe nach dem Installieren des zusätzlichen Produkts erneut angewendet werden. Anweisungen zur erneuten Anwendung des FixPaks finden Sie in der Readme-Datei zum FixPak. * Wenn die DB2-FixPak-Stufe niedriger ist als die FixPak-Stufe des hinzugefügten Produkts, wird ein Fehler generiert. Die FixPak-Stufe des hinzuzufügenden Produkts kann nicht höher sein als die FixPak-Stufe von DB2 UDB. In diesem Fall müssen Sie DB2 UDB auf die erforderliche Stufe aktualisieren, bevor Sie das zusätzliche Produkt installieren können. Anweisungen hierzu finden Sie in der Readme-Datei zum FixPak. In der folgenden Tabelle sind die möglichen Kombinationen für den Befehl db2setup zusammengefasst: Tabelle 6. db2setup-Kombinationen +----------+--------------+-------------------------------------------+ | DB2-FixP | FixPak-Stufe | Ist diese Kombination zulässig? | | ak-Stufe | des | | | | zusätzlichen | | | | Produkts | | +----------+--------------+-------------------------------------------+ | Version | Version 8 | Ja. Diese Kombination wird empfohlen. | | 8 FixPak | FixPak 3 | | | 3 | | | +----------+--------------+-------------------------------------------+ | Version | Version 8 GA | Ja, aber Version 8 FixPak 3 muss erneut | | 8 FixPak | | angewendet werden. Anweisungen zur | | 3 | | erneuten Anwendung des FixPaks finden Sie | | | | in der Readme-Datei zum FixPak. Diese | | | | kann von der DB2-Unterstützungswebsite | | | | heruntergeladen werden. | +----------+--------------+-------------------------------------------+ | Version | Version 8 | Nein. Bevor das zusätzliche Produkt | | 8 FixPak | FixPak 5 | installiert werden kann, muss DB2 zuerst | | 3 | | auf eine höhere FixPak-Stufe aktualisiert | | | | werden (in diesem Beispiel Version 8 | | | | FixPak 5). Anweisungen zum Installieren | | | | des erforderlichen FixPaks für Version 8 | | | | finden Sie in der Readme-Datei zum | | | | FixPak. Diese kann von der | | | | DB2-Unterstützungswebsite heruntergeladen | | | | werden. | +----------+--------------+-------------------------------------------+ Die Adresse der DB2-Unterstützungswebsite lautet wie folgt: http://www.ibm.com/software/data/db2/udb/support.html DB2-Webtools Für die folgenden Sprachen müssen die von den DB2-Webtools unterstützten Anwendungsserver mit der Servlet 2.3-Spezifikation kompatibel sein: * Japanisch * Koreanisch * Vereinfachtes Chinesisch * Traditionelles Chinesisch * Russisch * Polnisch Binden von Query Patroller-Paketen nach Anwendung von FixPaks Wenn Query Patroller installiert ist, führen Sie nach der Anwendung eines FixPaks und nach Ausführung aller danach erforderlichen Installationstasks die folgenden Schritte aus: 1. Melden Sie sich als Benutzer mit DBADM-Berechtigung an. 2. Wechseln Sie in das erforderliche Verzeichnis: * INSTPATH/bnd (Linux und UNIX) * INSTPATH\bnd (Windows) Dabei ist INSTPATH der Pfad des DB2 UDB-Exemplars. 3. Führen Sie die folgenden Befehle aus: db2 connect to datenbankname db2 bind @qpserver.lst blocking all grant public Installieren von Query Patroller mit FixPak 3 oder höher Query Patroller ist ein Abfrageverwaltungssystem zur Steuerung des Abfrageflusses für die DB2 UDB-Datenbank. Seit DB2 UDB Version 8.1.2 ist DB2 Query Patroller ein Standalone-Produkt. Es ist nicht länger eine Komponente von DB2 Warehouse Manager. Wenn DB2 UDB Version 8 FixPak 3 oder höher installiert ist und Sie die Basis- oder GA-Version von DB2 Query Patroller installieren, müssen Sie DB2 UDB FixPak 3 oder höher erneut anwenden. Andernfalls werden die Query Patroller-Änderungen nicht auf die aktuelle FixPak-Stufe von DB2 UDB angewendet. Wenn Sie den Query Patroller-Server installieren, müssen Sie nach der erneuten Anwendung der DB2 UDB-FixPak-Stufe auch die DB2 UDB-Exemplare aktualisieren. Nach der Aktualisierung müssen die Exemplare erneut gestartet werden. Installieren des Query Patroller-Servers Beachten Sie bei der Installation des Query Patroller-Servers bitte Folgendes: * Wenn Sie mit dem DB2-Installationsassistenten im Fenster Installationstyp auswählen die Option Basierend auf Computerverwendung und im Fenster Verwendungszweck dieses Computers auswählen die Option Server auswählen, wird die Query Patroller-Zentrale nicht installiert. Wenn Sie die Query Patroller-Zentrale installieren möchten, wählen Sie im Fenster Installationstyp auswählen entweder den Installationstyp Vollständig oder Angepasst aus. * Das DB2 Query Patroller(TM)-Handbuch verwendet Installationsfenster des Installationstyps Basierend auf Computerverwendung, um die Installation des Query Patroller-Servers mit Hilfe des DB2-Installationsassistenten zu illustrieren. Sie müssen jedoch nicht den Installationstyp Basierend auf Computerverwendung wählen, um den Query Patroller-Server zu installieren. Für die Installation des Query Patroller-Servers stehen die Installationstypen Vollständig und Angepasst zur Auswahl. * DB2-Clients mit installierten Query Patroller-Clienttools müssen die Verbindung zu einer Partition herstellen, auf der der Query Patroller-Server installiert ist. In einer typischen Umgebung mit partitionierten Datenbanken ist der Query Patroller-Server auf allen Partitionen installiert. Dadurch können Sie jede Partition als Koordinatorpartition auswählen und trotzdem weiterhin die Query Patroller-Clienttools verwenden. Definieren einer neuen Datenbankpartitionsgruppe in Query Patroller Wenn Sie bei der Installation von Query Patroller in einer partitionierten Umgebung einen neuen Tabellenbereich definieren, können Sie eine bereits vorhandene Datenbankpartitionsgruppe auswählen. Alternativ dazu können Sie auch eine neue Datenbankpartitionsgruppe für den neuen Tabellenbereich definieren. Wenn Sie sich für die Definition einer neuen Datenbankpartitionsgruppe entscheiden, können Sie nur eine Datenbankpartition aus dem Listenfeld im Installationsfenster für diese neue Datenbankpartitionsgruppe auswählen. Wenn Sie der neuen Datenbankpartitionsgruppe weitere Partitionen hinzufügen möchten, müssen Sie dies nach Beendigung der Installation manuell tun. Installieren der Query Patroller-Clienttools Für die Übergabe von Abfragen der DB2-Clients an den Query Patroller-Server ist die Installation der Query Patroller-Clienttools auf den DB2-Clients nicht erforderlich. Erneutes Erstellen von Betaversionen der Datenbanken Wenn Sie in einer Betaversion von DB2 UDB Version 8.2 Datenbanken erstellt haben, müssen Sie sie in der offiziellen Version von Version 8.2 erneut erstellen. Dies schließt die erneute Erstellung räumlicher Datenbanken von DB2 Geodetic Extender Version 8.2 ein. Installieren der MDAC-Dateien für die landessprachlichen Versionen von DB2 UDB Wenn Sie die landessprachliche Version von Microsoft Data Access Components (MDAC) 2.7 nicht vor der landessprachlichen Version von DB2 Universal Database (UDB) Version 8.2 installieren, installiert DB2 UDB standardmäßig englische MDAC-Dateien. Dadurch werden die Fenster von ODBC Data Source Administrator unter Windows nicht in der übersetzten Version angezeigt, wenn Sie eine andere Betriebssystemsprache als Englisch verwenden. Sie können das Bündel "MDAC 2.7 RTM - Refresh" von der Microsoft-Website unter http://msdn.microsoft.com/data/downloads/updates/default.aspx installieren, um dieses Problem zu beheben. Wählen Sie die zu installierende Sprache aus, laden Sie die erforderliche ausführbare Datei herunter, und führen Sie sie aus. Dadurch werden die übersetzten Dateien von ODBC Data Source Administrator installiert. DB2-Lizenzierungsmaßnahme für DB2 Universal Database Workgroup Server Edition Die Internet-Lizenzierungsmaßnahme gilt nicht für DB2 Universal Database Workgroup Server Edition. Wenn Sie eine Lizenz für Internetbenutzer benötigen, müssen Sie DB2 Universal Database Workgroup Server Unlimited Edition erwerben. Installieren zusätzlicher asiatischer Schriftarten (Linux) IBM bietet zusätzliche Schriftartpakete für Linux an, die eine Unterstützung weiterer Doppelbytezeichensätze (DBCS) für asiatische Zeichen enthalten. Diese Schriftartpakete sind für einige Versionen von Linux erforderlich, die nur die erforderlichen Schriftarten zur Anzeige der länder- bzw. regionenspezifischen Zeichen installieren. Wenn Sie den Befehl db2setup ausführen und fehlende Zeichen in der Schnittstelle des DB2-Installationsassistenten feststellen, sind wahrscheinlich nicht alle erforderlichen Schriftarten auf Ihrem Linux-System installiert. Gehen Sie wie folgt vor, damit der Befehl db2setup ordnungsgemäß auf die auf der Installations-CD eingebetteten Schriftarten verweisen kann: 1. Geben Sie den folgenden Befehl ein: export JAVA_FONTS=//db2//java/jre/lib/fonts Dabei geben Sie für die Position des Installationsimages und für einen Verzeichnisnamen mit einem Linux-Präfix ein. 2. Führen Sie den Befehl db2setup erneut aus. Wenn Sie nach der Installation bei der Verwendung der DB2-GUI-Tools fehlende Zeichen feststellen, installieren Sie die erforderlichen Schriftarten, die mit dem DB2-Produkt geliefert werden. Diese Schriftarten finden Sie im Verzeichnis fonts auf den beiden folgenden CDs: * IBM(R) Developer Kit, Java(TM) Technology Edition (64 Bit) für AIX 5L * DB2 Embedded Application Server und Anwendungen (XML-Registrierdatenbank, Webverwaltungstools und Java(TM) Distributed Debugger) für Ihr Betriebssystem Im Verzeichnis fonts sind zwei Schriftbilder verfügbar: Times New Roman WorldType und Monotype Sans Duospace WorldType. Für jedes Schriftbild gibt es eine länder- bzw. regionsspezifische Schriftart. In der folgenden Tabelle werden die acht Schriftarten aufgeführt, die in komprimiertem Format im Verzeichnis fonts bereitgestellt werden. Tabelle 7. Dateinamen für zusätzliche asiatische Schriftarten +-------------------------+---------------------+---------------------+ | Schriftart/-bild | Schriftartdateiname | Land oder Region | +-------------------------+---------------------+---------------------+ | Times New Roman WT J | tnrwt_j.zip | Japan und andere | | | | Länder oder | | | | Regionen | +-------------------------+---------------------+---------------------+ | Times New Roman WT K | tnrwt_k.zip | Korea | +-------------------------+---------------------+---------------------+ | Times New Roman WT SC | tnrwt_s.zip | China | | | | (vereinfachtes | | | | Chinesisch) | +-------------------------+---------------------+---------------------+ | Times New Roman WT TC | tnrwt_t.zip | Taiwan | | | | (traditionelles | | | | Chinesisch) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdj.zip | Japan und andere | | WT J | | Länder oder | | | | Regionen | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdk.zip | Korea | | WT K | | | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansds.zip | China | | WT SC | | (vereinfachtes | | | | Chinesisch) | +-------------------------+---------------------+---------------------+ | Monotype Sans Duospace | mtsansdt.zip | Taiwan | | WT TC | | (traditionelles | | | | Chinesisch) | +-------------------------+---------------------+---------------------+ Anmerkung: Diese Schriftarten ersetzen nicht die Systemschriftarten. Diese Schriftarten sind für die Verwendung in Verbindung mit oder von DB2 Universal Database vorgesehen. Diese Schriftarten dürfen weder im allgemeinen noch im uneingeschränkten Verkauf noch zur Verteilung angeboten werden. Vorgehensweise Gehen Sie wie folgt vor, um zusätzliche asiatische Schriftarten zu installieren: 1. Entpacken Sie das Schriftartpaket. 2. Kopieren Sie das Schriftartpaket in das Verzeichnis /opt/IBMJava2-141/jre/lib/fonts. Sie müssen das Verzeichnis erstellen, sofern es nicht bereits vorhanden ist. 3. Geben Sie den folgenden Befehl ein: export JAVA_FONTS=/opt/IBMJava2-141/jre/lib/fonts Sie müssen mindestens eine Schriftart für jedes Schriftbild für Ihr Land bzw. Ihre Region installieren. In China, Korea oder Taiwan verwenden Sie die länder- oder regionsspezifischen Versionen. Ansonsten verwenden Sie die japanische Version der Schriftarten. Wenn Ihr System über ausreichend Platz verfügt, sollten Sie alle acht Schriftarten installieren. Konfigurieren der Entwicklungszentrale für die Verwendung von Java Development Kits (Linux) In manchen Fällen installiert DB2 Universal Database kein Java Development Kit auf dem Betriebssystem dem Clients. Damit Sie die Entwicklungszentrale für die Entwicklung von gespeicherten Java-Prozeduren verwenden können, müssen Sie die Entwicklungszentrale auf die Speicherposition eines installierten Java Development Kits verweisen. Führen Sie die folgenden Schritte aus, um die Speicherposition des Java Development Kits anzugeben: 1. Wählen Sie in der Entwicklungszentrale den Menüpunkt Projekt -> Umgebungseinstellungen aus. 2. Wählen Sie im Notizbuch Umgebungseinstellungen den Knoten Prozess aus. 3. Wählen Sie im Abschnitt Java-Ausgangsverzeichnis der Seite Prozess die JDK-Stufe aus, die für das Erzeugen und Ausführen gespeicherter Java-Prozeduren verwendet wird. 4. Geben Sie im Feld Verzeichnis einen bereits vorhandenen Verzeichnispfad oder einen Verzeichnispfad an, auf den zugegriffen werden kann (der Verzeichnispfad muss sich auf dem Client befinden, auf dem das ausgewählte JDK installiert ist). 5. Wenn der Clientcomputer für die Entwicklung gespeicherter Java-Prozeduren auf mehreren DB2-Servern verwendet wird, müssen Sie möglicherweise weitere JDK-Stufen auswählen und ihre jeweilige Installationsspeicherposition angeben, je nachdem, welche JDK-Stufen von diesen Servern verwendet werden. Auf dem DB2-Server wurden bei der Installation des Java Development Kits möglicherweise einige Java-Bibliotheken nicht mit dem Systemunterverzeichnis /usr/lib verknüpft. Diese Verknüpfungen sind jedoch für das Erzeugen und Ausführen von gespeicherten Java-Prozeduren notwendig. Der Unterabschnitt "Einrichten der Linux-Java-Umgebung" des Abschnitts "Kompatibilitätsanforderungen" dieser Release-Informationen enthält Informationen zum Erstellen der Links zu einem Java Development Kit auf einem Linux-Client. Erstellen von Gruppen- und Benutzer-IDs unter den Linux-Varianten United Linux 1.0 und SuSE Linux Verwenden Sie zur Erstellung von Gruppen- oder Benutzer-IDs für eine DB2 UDB Version 8.2-Installation unter den Linux-Varianten United Linux 1.0 und SuSE Linux die Befehle groupadd bzw.useradd. Im Handbuch Installation und Konfiguration Ergänzung der Version 8.2 werden fälschlicherweise die Befehle mkgroup und mkuser für die Erzeugung von Gruppen- und Benutzer-IDs angegeben. Hilfesystemdämon startet nicht nach der Installation mit dem Befehl 'db2_install' (UNIX und Linux) Wenn Sie DB2 Information - Unterstützung auf UNIX- und Linux-Plattformen mit Hilfe des Befehls db2_install installieren, startet der Hilfesystemdämon (db2icd) nach der Installation nicht. Sie müssen den Hilfesystemdämon manuell starten oder den Computer erneut starten, um auf die Dokumentation zugreifen zu können. Siehe das Thema "Dämon für 'DB2 Information - Unterstützung'" im Abschnitt Dokumentationsaktualisierungen | Installation und Konfiguration der Release-Informationen. Ready for Tivoli-Unterstützung (UNIX) Beim Kauf eines IBM Softwareprodukts mit dem Logo 'Ready for Tivoli' können Sie Ihre IBM Softwareprodukte über verschiedene Tivoli-Angebote verwalten. Mit den Tivoli-Produkten können Sie automatisch eine oder auch mehrere 'Ready for Tivoli'-Anwendungen automatisch erkennen, überwachen und inventarisieren. IBM Softwareprodukte mit dem Logo 'Ready for Tivoli' können durch Produkte wie beispielsweise IBM Tivoli Configuration Manager verwaltet werden. IBM Tivoli Monitoring for Databases bietet Unterstützung für alle führenden Datenbanksysteme, darunter DB2 Universal Database (UDB), Oracle und Informix. Weitere Informationen hierzu finden Sie auf der IBM Website unter http://www.ibm.com/software/tivoli/ Ready for Tivoli-Unterstützung und DB2 UDB Version 8 Zum Installieren und Konfigurieren Ihrer Instrumentierung muss Ihr Tivoli-Administrator Folgendes ausführen: 1. Die Tivoli Ready-Signaturdatei für dieses DB2-Produkt heißt xxx.sys. Ab FixPak 4 werden diese Signaturdateien durch die FixPaks aktualisiert und nicht mehr durch das jeweilige Release. Bestätigen Sie, dass die Signaturdateien im folgenden Verzeichnis installiert sind: %install DB2DIR%/tivready 2. Installieren und konfigurieren Sie die Tivoli-Unterstützung für Tivoli GEM 2.2 auf allen Computern, die überwacht werden sollen. Zum Herunterladen der Tivoli Ready-Unterstützung und detaillierter Anweisungen zu ihrer Installation und Verwendung geben Sie in Ihrem Browser die URL-Adresse http://www.ibm.com/software/sysmgmt/products/support/ ein. 3. IBM Tivoli Monitoring for Databases verbessert die Verwaltbarkeit der Datenbanken. ITM for Databases setzt die neue erweiterte Edition des Distributed Monitoring-Produkts (namens IBM Tivoli Monitoring, ITM) ein und bietet auf Basis dieser neuen Überwachungskomponente eine erhebliche Verbesserung der Überwachungsfunktion. ITM for Databases unterstützt DB2 UDB über PAC (Proactive Analysis Component). PAC ist nahtlos in DB2 UDB integriert und stellt für schnelle Implementierung und Aktivierung eine Reihe von Überwachungsprogrammen zur Verfügung, die sofort einsatzfähig sind. Angepasste Monitore, Schwellenwerte und Tasks können ebenfalls vom Datenbankadministrator definiert werden. Weitere Informationen hierzu finden Sie im Internet unter http://www.ibm.com/software/tivoli/. Informationen zu anderen Tivoli-Produkten finden Sie im Internet unter http://www.ibm.com/software/tivoli/. Tool zur Verkleinerung des Installationsimages - db2iprune (Windows) Mit dem Befehlszeilendienstprogramm 'db2iprune' können Sie die Größe des Installationsimages von DB2 Universal Database (UDB) für Windows verringern. Das Tool ist vor allem hilfreich bei Implementierungen von DB2 UDB in großem Maßstab. Das Tool ist ebenfalls hilfreich bei der Einbettung von DB2 UDB in eine Anwendung. Das Tool db2iprune besteht aus einer Eingabedatei und einer ausführbaren Datei. Die Eingabedatei (.prn) enthält eine vollständige Liste aller entfernbaren Komponenten und gibt an, welche Funktionen und Sprachen Sie aus dem Installationsimage entfernen möchten. Die ausführbare Datei von db2iprune (db2iprune.exe) entfernt dann die Aktenschrankdateien, die diesen Funktionen und Sprachen zugeordnet sind. Als Ergebnis erhalten Sie ein neues, kleineres Image von DB2 UDB, das mit den normalen Installationsverfahren installiert werden kann. FixPaks werden ebenfalls mit den normalen Verfahren angewendet. Nach Installation des FixPaks erkennt und aktualisiert dieses nur die Komponenten, die mit 'db2iprune' installiert wurden. Das Tool 'db2iprune' befindet sich im Verzeichnis \db2\windows\utilities\db2iprune auf der Installations-CD-ROM Ihres DB2 UDB-Produkts. In diesem Verzeichnis befindet sich auch eine Readme-Datei. In der Readme-Datei zu 'db2iprune' finden Sie detaillierte Anweisungen zur Verwendung dieses Tools. Einschränkungen der Installation der Dokumentation zu DB2 Universal Database Version 8 (Windows) Installieren Sie 'Information - Unterstützung' von DB2 Universal Database (UDB) Version 8 (HTML-Dokumentation) nicht auf einer Workstation oder einem Server, auf der bzw. dem bereits ein Produkt von DB2 UDB Version 7 (oder niedriger) installiert ist. Das Installationsprogramm entdeckt die frühere Version und entfernt das frühere Produkt. Frühere Installationen auf den neuesten Stand aktualisiert (Windows) Wenn Sie ein DB2-Produkt besitzen, das unter einer älteren Version von Version 8 installiert wurde, erkennt das Installationsimage dieses und aktualisiert das Produkt auf den neuesten Stand. Systemvoraussetzungen für DB2 .NET Data Provider (Windows) Bevor Sie das Installationsprogramm von DB2 Universal Database (UDB) zum Installieren von DB2 .NET Data Provider verwenden können, müssen Sie .NET Framework auf dem Computer installieren. Wenn .NET Framework nicht installiert ist, kann das DB2 UDB-Installationsprogramm DB2 .NET Data Provider nicht registrieren. Falls DB2 UDB installiert ist, .NET Framework jedoch nicht, wird DB2 .NET Data Provider nicht registriert. Wenn .NET Framework zu einem späteren Zeitpunkt installiert wird, können Sie die ausführbare Funktion db2nmpreg ausführen, um den Provider zu registrieren. Diese ausführbare Funktion befindet sich im Verzeichnis sqllib\bin. Es gibt keine Parameter. Geben Sie zum Registrieren von DB2 .NET Data Provider db2nmpreg in einem beliebigen Befehlsfenster ein. Installieren von DB2 Version 8-Clients und DB2 Connect PE ohne Administratorrechte (Windows) Bei der Installation von DB2 Administration Client, DB2 Application Development Client oder DB2 Connect Personal Edition müssen Sie Ihre Windows-TCP/IP-Servicedatei aktualisieren, sofern folgende Bedingungen zutreffen: * Während der Installation wurde die Data Warehouse-Funktion ausgewählt. * Die Benutzer-ID, die die Installation ausführt, ist kein Mitglied der Administratorgruppe auf dem Zielcomputer. * Das Produkt wird unter einem der folgenden Betriebssysteme installiert: Windows NT, Windows 2000, Windows XP oder Windows Server 2003. Wenn alle diese Bedingungen zutreffen, muss Folgendes in die Windows-TCP/IP-Servicedatei eingetragen werden: Tabelle 8. Erforderliche Einträge in die Windows-TCP/IP-Servicedatei +----------------------------------+----------------------------------+ | Portname | Portnummer | +----------------------------------+----------------------------------+ | vwkernel | 11000/tcp | +----------------------------------+----------------------------------+ | vwd | 11001/tcp | +----------------------------------+----------------------------------+ | vwlogger | 11002/tcp | +----------------------------------+----------------------------------+ Ohne diese Einträge kann die Data Warehouse-Zentrale nicht ordnungsgemäß funktionieren. Anmerkungen zur Migration Aktuelle Informationen zur Migration von DB2-Produkten finden Sie nicht nur in den hier vorgestellten Themen, sondern auch im DB2-Migrationsportal unter der folgenden URL-Adresse: http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21200005 Technische Hinweise für db2updv8 Die neuesten Informationen zu db2updv8 einschließlich wichtiger Verwendungsdetails und Strategien zur Behebung von häufig auftretenden Problemen finden Sie im technischen Hinweis 1178848 unter http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21178848. Rücksetzung auf Version 8.1 nach der Ausführung von db2updv8 nicht unterstützt Wenn Sie den Befehl db2updv8 ausgeführt haben, um die Systemkataloge auf den aktuellen Stand von Version 8 zu aktualisieren, können Sie nicht mehr zu Version 8.1 zurückkehren. Migration von EXPLAIN-Tabellen Wenn Sie DB2(TM) Universal Database (UDB) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) oder höher auf DB2 UDB Version 8.2 FixPak 1 (äquivalent zu Version 8.1 FixPak 8) oder niedriger anwenden und EXPLAIN-Tabellen erstellen wollen, müssen Sie den Befehl db2updv8 ausführen. Durch die Ausführung des Befehls db2updv8 wird die Funktion EXPLAIN_GET_MSG erstellt, die das erneute Ausführen von EXPLAIN.DDL zulässt. Wenn Sie versuchen, die EXPLAIN-Tabellen mit EXPLAIN.DDL zu erstellen, ohne zuvor den Befehl db2updv8 ausgeführt zu haben, erhalten Sie möglicherweise die folgende Fehlernachricht: DB21034E Der Befehl wurde als SQL-Anweisung verarbeitet, da es sich um keinen gültigen Befehl des Befehlszeilenprozessors handelte. Während der SQL-Verarbeitung wurde Folgendes ausgegeben: SQL0440N Es wurde keine berechtigte "EXPLAIN_GET_MSG" des Typs "FUNCTION" mit kompatiblen Argumenten gefunden. ZEILE NUMMER=26. SQLSTATE=42884 Migrieren von XML Extender von früheren Versionen Wenn Sie eine frühere Version von DB2 XML Extender verwenden, müssen Sie jede XML Extender-fähige Datenbank migrieren, bevor Sie eine vorhandene XML-fähige Datenbank mit dem aktualisierten Release von XML Extender verwenden können. Jedes neue FixPak enthält sämtliche Aktualisierungen früherer FixPaks. Sichern Sie die Datenbank, bevor Sie das Migrationsprogramm ausführen. Führen Sie zum Migrieren einer XML-fähigen Datenbank und XML-fähiger Spalten die folgenden Schritte aus: 1. Geben Sie über die DB2-Befehlszeile Folgendes ein: db2 connect to datenbankname db2 bind dxxinstall/bnd/@dxxMigv.lst db2 bind dxxinstall/bnd/@dxxbind.lst Dabei ist dxxinstall der Verzeichnispfad, in dem Sie DB2 Universal Database installiert haben. 2. Geben Sie über die DB2-Befehlszeile Folgendes ein: dxxMigv datenbankname Migrieren von DB2 Universal Database bei Verwendung von Data Joiner oder einer Replikation Wenn Sie ein Exemplar von Data Joiner oder DB2 Universal Database (UDB) für Linux, UNIX und Windows migrieren möchten, auf dem Sie das Apply- oder Capture-Programm für die DB2 UDB-Replikation ausführen, müssen Sie die Migration Ihrer Replikationsumgebung vorbereiten, bevor Sie das DB2 UDB- oder Data Joiner-Exemplar migrieren. Detaillierte Anweisungen für die erforderlichen Vorbereitungen enthält die Migrationsdokumentation für DB2 DataPropagator Version 8. Sie finden die Migrationsdokumentation für DB2 DataPropagator Version 8 unter http://www.ibm.com/software/data/dpropr/. Migrieren von DB2 Universal Database (Windows) Die folgenden Schritte zeigen die korrekte Reihenfolge der Vorbereitungen für die Migration von DB2 Universal Database (UDB) unter Windows. Voraussetzungen Vor der Migration: 1. Prüfen Sie die Empfehlungen, Einschränkungen und Speicherplatzempfehlungen für die Migration. 2. Notieren Sie vor der DB2 UDB-Migration die Konfigurationseinstellungen. 3. Ändern Sie die Diagnosestufe. 4. Prüfen Sie, ob die Datenbanken für die DB2 UDB-Migration bereit sind. 5. Sichern Sie Ihre Datenbanken. 6. Wenn Sie Replikation einsetzen, müssen Sie alle DB2 UDB-Protokolldateien archivieren. 7. Sie müssen die Berechtigung SYSADM besitzen. 8. Versetzen Sie den DB2-Server für die DB2 UDB-Migration in den Offlinemodus. Anmerkung: Für Version 8.1 ist die Registrierdatenbankvariable DB2_HASH_JOIN standardmäßig aktiviert (ON). Details hierzu finden Sie im Unterabschnitt "Systemverwaltung: Optimierung" des Abschnitts "Dokumentationsaktualisierungen". Migrieren einer 32-Bit-Datenbank von DB2 Version 8 für Windows auf Windows (64 Bit) In diesem Abschnitt werden Schritte für das Migrieren Ihrer 32-Bit-Datenbank von DB2 Version 8 auf einem 32-Bit-Computer auf eine 64-Bit-Datenbank auf einem 64-Bit-Windows-Betriebssystem aufgelistet. Voraussetzungen * Eine 64-Bit-Version von DB2 Version 8 muss auf Ihrem 64-Bit-Computer installiert sein. * Stellen Sie sicher, dass DB2 Version 8 auf Ihrem 32-Bit-Windows-System ausgeführt wird. Vorgehensweise Gehen Sie wie folgt vor, um unter Windows (64 Bit) auf DB2 Version 8 zu migrieren: 1. Sichern Sie Ihre Datenbanken von DB2 Version 8 auf Ihrem 32-Bit-Windows-System. 2. Stellen Sie Ihre Sicherung von DB2 Version 8 (erstellt unter Schritt 1) auf Ihrem 64-Bit-Windows-System wieder her. Anmerkung: Neben der Migration von DB2 UDB von 32-Bit- auf 64-Bit-Systeme sind folgende Migrationen möglich: * Die Migration zwischen Versionen von Windows * Die Migration zwischen Versionen von DB2 UDB * Alles auf einmal migrieren * Die Migration zurück auf 32 Bit Detaillierte Informationen sind im folgenden IBM Redbook verfügbar: Scaling DB2 UDB on Windows Server 2003. Dieses Redbook finden Sie unter folgender URL-Adresse: http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247019.html Migrieren auf DB2 UDB Version 8.2.2 von Version 7 in einer MSCS-Umgebung In diesem Thema wird die Migration von DB2 Universal Database(TM) (UDB) Version 7 auf DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) in einer Microsoft Cluster Server-Umgebung beschrieben. Annahmen: Die Migration auf DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) in einer MSCS-Umgebung wird mit Hilfe einer Musterkonfiguration dargestellt. In dieser Musterkonfiguration gibt es zwei Windows Server 2000-Computer mit DB2 UDB Enterprise Server Edition Version 7. Die Erstkonfiguration ist ein DB2-Exemplar, das aus zwei Partitionen besteht. Außerdem gibt es zwei Clustergruppen: * DB2-Gruppe 0 enthält Partition 0, die auf Computer A aktiv ist. Außerdem befindet sich der Verwaltungsserver in dieser Gruppe. * DB2-Gruppe 1 enthält Partition 1, die auf Computer B aktiv ist. Voraussetzung Sichern Sie die Datenbank, bevor Sie die Migration beginnen. Vorgehensweise Gehen Sie wie folgt vor, um in einer MSCS-Umgebung von DB2 UDB Version 7 auf Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) zu migrieren: 1. Inaktivieren Sie die automatische Zurücksetzung. Während des Installationsprozesses müssen Sie Ihren Computer möglicherweise erneut starten. In diesem Fall wird der Cluster-Service automatisch erneut gestartet. Daher muss die automatische Zurücksetzung inaktiviert werden, damit keine der Gruppen automatisch zurückgesetzt wird. a. Gehen Sie wie folgt vor, um die automatische Zurücksetzung für DB2-Gruppe 0 zu inaktivieren: 1) Klicken Sie DB2 Group 0 im Fenster 'Cluster Administrator' mit Maustaste 2 an. 2) Wählen Sie Properties aus. Das Fenster DB2 Group 0 Properties wird geöffnet. 3) Wählen Sie auf der Indexzunge Failback den Radioknopf Prevent failback aus. 4) Klicken Sie OK an. b. Gehen Sie wie folgt vor, um die automatische Zurücksetzung für DB2-Gruppe 1 zu inaktivieren: 1) Klicken Sie DB2 Group 1 im Fenster 'Cluster Administrator' mit Maustaste 2 an. 2) Wählen Sie Properties aus. Das Fenster DB2 Group 1 Properties wird geöffnet. 3) Wählen Sie auf der Indexzunge Failback den Radioknopf Prevent failback aus. 4) Klicken Sie OK an. 2. Versetzen Sie DB2-Gruppe 1 auf Computer A. a. Klicken Sie DB2 Group 1 in der Clusteradministrator-GUI an. b. Klicken Sie mit Maustaste 2, und wählen Sie Move Group aus. Die Eignerspalte wird in 'Computer A' geändert. 3. Stoppen Sie den Cluster-Service auf Computer B. a. Klicken Sie Cluster Service im Fenster Component Services mit Maustaste 2 an. b. Klicken Sie Stop an. 4. Laden Sie DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) herunter, und installieren Sie das Produkt auf Computer B. Anmerkung: * DB2 UDB wird auf Computer A weiterhin ausgeführt und ist dort verfügbar. * Während des Installationsprozesses werden Sie aufgefordert, den Befehl db2imigr auszuführen, um die DB2-Exemplare auf diesem Computer zu migrieren. Die Ausführung von db2imigr erfordert möglicherweise einen Neustart Ihres Computers. 5. Versetzen Sie die DB2-Ressourcen auf Computer A in den Offlinemodus. a. Partition 0, Partition 1 und der Datenbankverwaltungsserver sind Ressourcen auf Computer A. Diese Ressourcen müssen nacheinander in den Offlinemodus versetzt werden. Gehen Sie wie folgt vor, um die Ressourcen von Computer A in den Offlinemodus zu versetzen: 1) Wählen Sie Groups im linken Teilfenster des Fenster 'Cluster Administrator' aus. 2) Wählen Sie DB2 Group 0 aus. Die Ressourcen für diese Gruppe werden im rechten Teilfenster angezeigt. * Zu den DB2-Ressourcen von DB2-Gruppe 0 gehören unter anderem Partition 0 und der Datenbankverwaltungsserver. 3) Klicken Sie eine der Ressourcen im rechten Teilfenster mit Maustaste 2 an, und wählen Sie Take Offline aus. * Wiederholen Sie diesen Schritt für alle DB2-Ressourcen in DB2-Gruppe 0. 4) Wählen Sie DB2 Group 1 aus. Die Ressourcen für diese Gruppe werden im rechten Teilfenster angezeigt. * Zu den DB2-Ressourcen von DB2-Gruppe 1 gehört unter anderem Partition 1. 5) Klicken Sie die Ressource (Partition 1) im rechten Teilfenster mit Maustaste 2 an, und wählen Sie Take Offline aus. 6. Starten Sie den Cluster-Service auf Computer B. Wenn die Installation einen Neustart Ihres Computers erforderte und für den Cluster-Service der automatische Neustart konfiguriert ist, überspringen Sie diesen Schritt, da der Cluster-Service bereits gestartet wurde. Gehen Sie wie folgt vor, um den Cluster-Service zu starten: a. Klicken Sie Cluster Service im Fenster Component Services mit Maustaste 2 an. b. Klicken Sie Start an. 7. Versetzen Sie DB2-Gruppe 0 und DB2-Gruppe 1 auf Computer B. a. Klicken Sie DB2 Group 0 im Fenster 'Cluster Administrator' an. b. Klicken Sie mit Maustaste 2, und wählen Sie Move Group aus. Die Eignerspalte wird in 'Computer B' geändert. c. Klicken Sie DB2 Group 1. an. d. Klicken Sie mit Maustaste 2, und wählen Sie Move Group aus. Die Eignerspalte wird in 'Computer B' geändert. 8. Versetzen Sie die DB2-Ressourcen auf Computer B in den Onlinemodus. a. Partition 0, Partition 1 und der Datenbankverwaltungsserver sind jetzt Ressourcen auf Computer B. Diese Ressourcen müssen nacheinander in den Onlinemodus versetzt werden. Gehen Sie wie folgt vor, um diese Ressourcen in den Onlinemodus zu versetzen: 1) Wählen Sie Groups im linken Teilfenster des Fenster 'Cluster Administrator' aus. 2) Wählen Sie DB2 Group 0 aus. Die Ressourcen für diese Gruppe werden im rechten Teilfenster angezeigt. * Zu den DB2-Ressourcen von DB2-Gruppe 0 gehören unter anderem Partition 0 und der Datenbankverwaltungsserver. 3) Klicken Sie eine der Ressourcen im rechten Teilfenster mit Maustaste 2 an, und wählen Sie Bring Online aus. * Wiederholen Sie diesen Schritt für alle DB2-Ressourcen in DB2-Gruppe 0. 4) Wählen Sie DB2 Group 1 aus. Die Ressourcen für diese Gruppe werden im rechten Teilfenster angezeigt. * Zu den DB2-Ressourcen von DB2-Gruppe 1 gehört unter anderem Partition 1. 5) Klicken Sie die Ressource (Partition 1) im rechten Teilfenster mit Maustaste 2 an, und wählen Sie Bring Online aus. b. Migrieren Sie alle DB2-Exemplare und alle DB2-Datenbanken. 1) Migrieren Sie alle DB2-Exemplare mit Hilfe des Befehls db2imigr: a) Führen Sie den Befehl db2ilist aus, um alle DB2-Exemplare zu finden. b) Führen Sie zur Migration der einzelnen DB2-Exemplare den Befehl db2imigr aus. Dieser Befehl befindet sich im Verzeichnis sqllibbin und muss für jedes DB2-Exemplar ausgeführt werden. 2) Migrieren Sie alle DB2-Datenbanken mit Hilfe des Befehls migrate database. 9. Stoppen Sie den Cluster-Service auf Computer A. a. Klicken Sie Cluster Service im Fenster Component Services mit Maustaste 2 an. b. Klicken Sie Stop an. 10. Laden Sie DB2 UDB Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) herunter, und installieren Sie das Produkt auf Computer A. Anmerkung: * DB2 UDB wird auf Computer A weiterhin ausgeführt und ist dort verfügbar. * Während des Installationsprozesses müssen Sie Ihren Computer möglicherweise erneut starten. * Sie brauchen die Befehle db2imigr und migrate database auf Computer A nicht auszuführen, da Sie sie bereits auf Computer B ausgeführt haben. 11. Starten Sie den Cluster-Service auf Computer A. Wenn die Installation einen Neustart Ihres Computers erforderte und für den Cluster-Service der automatische Neustart konfiguriert ist, überspringen Sie diesen Schritt, da der Cluster-Service bereits gestartet wurde. Gehen Sie wie folgt vor, um den Cluster-Service zu starten: a. Klicken Sie Cluster Service im Fenster Component Services mit Maustaste 2 an. b. Klicken Sie Start an. 12. Versetzen Sie DB2-Gruppe 0 auf Computer A. a. Klicken Sie DB2 Group 0 im Fenster 'Cluster Administrator' an. b. Klicken Sie mit Maustaste 2, und wählen Sie Move Group aus. Die Eignerspalte wird in 'Computer A' geändert. Mit dieser Aktion wird die MSCS-Umgebung auf die ursprüngliche Konfiguration zurückgesetzt. 13. Wurde die automatische Zurücksetzung in Schritt 1 inaktiviert, müssen Sie sie jetzt wieder aktivieren. a. Gehen Sie wie folgt vor, um die automatische Zurücksetzung für DB2-Gruppe 0 zu aktivieren: 1) Klicken Sie DB2 Group 0 in der Clusteradministrator-GUI mit Maustaste 2 an. 2) Wählen Sie Properties aus. Das Fenster DB2 Group 0 Properties wird geöffnet. 3) Wählen Sie auf der Indexzunge Failback den Radioknopf Allow failback aus. 4) Klicken Sie OK an. b. Gehen Sie wie folgt vor, um die automatische Zurücksetzung für DB2-Gruppe 1 zu aktivieren: 1) Klicken Sie DB2 Group 1 im Fenster 'Cluster Administrator' mit Maustaste 2 an. 2) Wählen Sie Properties aus. Das Fenster DB2 Group 1 Properties wird geöffnet. 3) Wählen Sie auf der Indexzunge Failback den Radioknopf Allow failback aus. 4) Klicken Sie OK an. Datenbankmigration (HP-UX unter IA64) Die Datenbankmigration wird für DB2 Universal Database (UDB) für HP-UX auf IA64-Plattformen in den Releases der Version 8.x nicht unterstützt. Die Wiederherstellung eines DB2-Sicherungsimages der Version 7 in ein Exemplar der Version 8 wird unter DB2 UDB für HP-UX auf IA64-Plattformen nicht unterstützt. Informationen zur Deinstallation Automatisches Deinstallieren von DB2 UDB (Windows) Gehen Sie wie folgt vor, um DB2-Produkte mit dem Befehl msiexec automatisch zu deinstallieren: msiexec /x /qn Dabei steht für den Code des Programms, das entfernt werden soll. Im Folgenden werden die Codes der DB2-Produkte aufgelistet: DB2 Universal Database Enterprise Server Edition (ESE) {D8F53726-C7AD-11D4-9155-00203586D551} DB2 Universal Database Workgroup Server Edition (WSE) {7A28F948-4945-4BD1-ACC2-ADC081C24830} DB2 Universal Database Express Edition (EXP) {58169F10-CA30-4F40-8C6D-C6DA8CE47E16} DB2 Universal Database Personal Edition (PE) {C0AA883A-72AE-495F-9601-49F2EB154E93} DB2 Warehouse Manager (WM) {84AF5B86-19F9-4396-8D99-11CD91E81724} DB2 Data Links Manager (DLM) {1D16CA65-F7D9-47E5-BB26-C623A44832A3} Relational Connect (RCON) {273F8AB8-C84B-4EE6-85E7-D7C5270A6D08} DB2 Connect Enterprise Edition (CEE) {9C8DFB63-66DE-4299-AC6B-37D799A728A2} DB2 Connect Personal Edition (CPE) {F1912044-6E08-431E-9B6D-90ED10C0B739} DB2 Administration Client (ADMCL) {ABD23811-AA8F-416B-9EF6-E54D62F21A49} DB2 Application Development Client (ADCL) {68A40485-7F7F-4A91-9AB6-D67836E15CF2} DB2 Run-Time Client (RTCL) {63F6DCD6-0D5C-4A07-B27C-3AE3E809D6E0} DB2 7 (RTLITE) {07C9CEE7-4529-4E60-95D3-6B6EF6AC0E81} DB2 Eclipse-Dokumentation (DOCE) {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} DB2 Query Patroller (QP) {7A8BE511-8DF3-4F22-B61A-AF0B8755E354} Life Sciences Data Connect (LSDC) {DD30AEB3-4323-40D7-AB39-735A0523DEF3} DB2 Cube Views(TM) (CUBE) {C8FEDF8F-84E8-442F-A084-0A0F6A772B52} DB2 Spatial Extender (SE) {F6846BF9-F4B5-4BB2-946D-3926795D5749} Beispiel Wenn Sie DB2 UDB Enterprise Server Edition entfernen möchten, geben Sie folgenden Befehl ein: msiexec /x {D8F53726-C7AD-11D4-9155-00203586D551} /qn Die folgenden DB2-Produktcodes werden von DB2 UDB Version 8.2 nicht mehr unterstützt: * WMC {5FEA5040-22E2-4760-A88C-73DE82BE4B6E} * DOC {73D99978-A255-4150-B4FD-194ECF4B3D7C} Produktcode für die Entfernung von 'DB2 Information - Unterstützung' über eine automatische Deinstallation (Windows) Wenn Sie DB2 Information - Unterstützung unter Windows über eine automatische Deinstallation entfernen wollen, verwenden Sie den folgenden Produktcode: {FE2D4758-041C-4E4E-95B3-529E4E1EAF3E} Bekannte Einschränkungen, Probleme und Fehlerumgehungen Im Folgenden werden die derzeit bekannten Einschränkungen, Probleme und Fehlerumgehungen beschrieben, die nur für dieses Release gelten. Die Begrenzungen und Einschränkungen müssen nicht unbedingt für andere Releases des Produkts gelten. Die DB2-Unterstützungswebsite enthält außerdem technische Hinweise und Service-FLASH-Aktualisierungen, die Änderungen an der Dokumentation sowie bekannte Einschränkungen und Umgehungen beschreiben, die nach Erstellung dieses Dokuments erkannt wurden. Die Adresse der DB2-Unterstützungswebsite lautet http://www.ibm.com/software/data/db2/udb/support.html. Änderungsmarkierungen zeigen an, dass Text hinzugefügt oder geändert wurde. Ein vertikaler Balken ( | ) markiert Informationen, die in Version 8.2 FixPak 4 (äquivalent zu Version 8.1 FixPak 11). hinzugefügt oder geändert wurden. Einschränkungen db2look - Einschränkungen für dynamischen Speichertabellenbereich Bei Datenbanken, die einen dynamischen Speichertabellenbereich verwenden, wird der Befehl db2look erfolgreich ausgeführt. Er zeigt jedoch keine Tabellenbereichsinformationen für dynamische Speichertabellenbereiche an. Tabellenfunktion SNAP_GET_DB gibt unvollständige Ergebnisse zurück Wird die Tabellenfunktion SNAP_GET_DB in einer DPF-Umgebung (Datenbankpartitionierungsfunktion) aufgerufen und -2 (globale Momentaufnahme) als Eingabe angegeben, übergibt die Funktion für die folgenden vier Spalten unvollständige Ergebnisse: * FIRST_ACTIVE_LOG * LAST_ACTIVE_LOG * CURRENT_ACTIVE_LOG * CURRENT_ARCHIVE_LOG Diese Elemente können nicht für eine globale Momentaufnahme zusammengefasst werden. Zum Abrufen der vollständigen Werte für diese Momentaufnahmenelemente sollte die Tabellenfunktion SNAP_GET_DB für jede Partition einzeln aufgerufen werden. IMPORT REPLACE berücksichtigt nicht die Klausel 'NOT LOGGED INITIALLY' Die Option REPLACE des Befehls IMPORT berücksichtigt nicht die Klausel NOT LOGGED INITIALLY (NLI) der Anweisung CREATE TABLE oder die Klausel ACTIVATE NOT LOGGED INITIALLY der Anweisung ALTER TABLE. Wenn ein Import mit der Aktion REPLACE innerhalb der gleichen Transaktion durchgeführt wird wie eine Anweisung CREATE TABLE oder ALTER TABLE, bei der die NLI-Klausel aufgerufen ist, wird diese NLI-Klausel vom Import nicht berücksichtigt. Alle Einfügungen werden protokolliert. Fehlerumgehung 1 Löschen Sie den Inhalt der Tabelle mit Hilfe der Anweisung DELETE, und rufen Sie dann den Import mit der Anweisung INSERT auf. Fehlerumgehung 2 Löschen Sie die Tabelle, und erstellen Sie sie erneut. Rufen Sie dann den Import mit der Anweisung INSERT auf. Diese Einschränkung bezieht sich auf DB2 UDB Version 7 und DB2 UDB Version 8. Spalten mit sehr langen Zeichenfolgen und LOB-Daten können nicht über die Inplace-Tabellenreorganisation reorganisiert werden Während der Inplace- oder Onlinereorganisation von Tabellen können Spalten mit sehr langen Zeichenfolgen und LOB-Daten nicht reorganisiert werden. Spalten mit sehr langen Zeichenfolgen und LOB-Daten können mit einer herkömmlichen Reorganisation oder einer Offlinereorganisation von Tabellen reorganisiert werden. Dazu wird für den Befehl REORG TABLE der Parameter LONGLOBDATA angegeben. Sie müssen jedoch Folgendes beachten: Obwohl die Reorganisation von Spalten mit sehr langen Zeichenfolgen und mit LOB-Daten das Zurückfordern freier Speicherbereiche ermöglicht, wird dadurch das Clustering nicht verbessert, und der Zeitaufwand für die Reorganisation kann beträchtlich steigen. In Clientanwendungen kann das Sperren von Blockcursorn inkonsistent sein Bei der Isolationsstufe CS (Cursorstabilität) ist die der Zeile auf dem Datenbankserver zugeordnete aktuelle Cursorposition immer gesperrt. Bei einem Blockabruf können mehrere Zeilen in einem einzelnen Puffer zurückgegeben werden. Meist passt die letzte auf Serverseite verarbeitete Zeile nicht genau in einen Puffer und wird auf zwei Puffer aufgeteilt. Für die Anwendung ist diese Aufteilung der Zeile so lange nicht erkennbar, bis Sie den zweiten Pufferinhalt empfängt. Daher wird keine an die Anwendung zurückgegebene Zeile gesperrt. Im seltenen Fall, in dem die letzte auf Serverseite verarbeitete Zeile genau in den Puffer passt, bleibt die Cursorposition in der letzten Zeile innerhalb des Puffers. Dies bedeutet, dass die letzte an die Anwendung zurückgegebene Zeile gesperrt wird. Data Warehouse-Programm 'Daten mit ODBC in Datei exportieren' Das Data Warehouse-Programm 'Daten mit ODBC in Datei exportieren' unterstützt folgende Sybase-Datentypen nicht: * BIT * BINARY * VARBINARY Nicht unterstützte Datentypen im integrierten SQL-Debugger der Entwicklungszentrale Die folgenden Datentypen werden im SQL-Debugger, der in der Entwicklungszentrale integriert ist, nicht unterstützt: * Für DB2 Universal Database (UDB) für Linux, UNIX und Windows werden die Datentypen CHAR FOR BIT DATA, VARCHAR FOR BIT DATA und GRAPHIC nicht unterstützt. * Für DB2 UDB für z/OS werden weder der Datentyp GRAPHIC noch die als Parameter verwendeten Datentypen BLOB und CLOB unterstützt. BLOB und CLOB als lokale Variablen werden unterstützt. Strukturierte Typen in der Entwicklungszentrale Die Entwicklungszentrale unterstützt die Erstellung strukturierter Typen nicht mehr. Einschränkungen der Entwicklungszentrale bei 64-Bit-Betriebssystemen Ein Debug gespeicherter Java-Prozeduren für einen 64-Bit-Server wird von der Entwicklungszentrale nicht unterstützt. Ein Debug gespeicherter SQL-Prozeduren wird auf 64-Bit-Windows-Betriebssystemen unterstützt. Die Entwicklung von OLE-Datenbankfunktionen oder von benutzerdefinierten XML-Funktionen wird für 64-Bit-Server nicht unterstützt. Entwicklungszentrale (Linux) Sie können die Entwicklungszentrale nicht für den Debug gespeicherten Java-Prozeduren verwenden, die auf einer der Linux-Varianten (32-Bit, 64-Bit, Intel, zSeries oder iSeries) ausgeführt werden. Debug für gespeicherte Prozeduren mit doppelten Anführungszeichen Die Entwicklungszentrale unterstützt kein Debug für eine gespeicherte Prozedur, bei der im Namen, im Schema oder im spezifischem Namen der gespeicherten Prozedur ein doppeltes Anführungszeichen (") vorkommt. Pfadeinstellungen zur Aktivierung von Java-Routinen für die Kompilierung in der Entwicklungszentrale Damit Java-Routinen von der Entwicklungszentrale kompiliert werden können, muss bekannt sein, wo Ihre Versionen von Developer Kit installiert sind. Standardverzeichnisse für diese Developer Kit-Versionen werden beim ersten Start der Entwicklungszentrale in Ihre Datei $HOME/.ibm/db2/dc/DB2DC.settings geschrieben. Sie können diese Verzeichnisse in Ihre Datei $USER.settings kopieren und mit einem Unicode-Editor modifizieren oder symbolische Verknüpfungen zu Ihren Developer Kit-Verzeichnissen an den Standardspeicherpositionen erstellen. Einschränkungen der Entwicklungszentrale beim gleichzeitigen Ausführen und Debug gespeicherter Java-Prozeduren Die Entwicklungszentrale unterstützt nicht das gleichzeitige Ausführen und Debuggen gespeicherter Java-Prozeduren. In der Entwicklungszentrale können Sie mehrere gespeicherte Java-Prozeduren gleichzeitig ausführen oder ein Debug für eine einzelne gespeicherte Java-Prozedur ausführen. Es ist nicht möglich, eine gespeicherte Java-Prozedur und parallel dazu ein Debug für eine andere gespeicherte Java-Prozedur auszuführen. Das Konfigurationsschlüsselwort KEEPFENCED des Datenbankmanagers ist standardmäßig auf KEEPFENCED=YES gesetzt, um ein Debug gespeicherter SQL-Prozeduren zu ermöglichen. Wenn das Schlüsselwort KEEPFENCED auf den Standardwert YES gesetzt ist, bleibt der Routineprozess aktiv und JVM-Portkonflikte treten auf. Gespeicherte Java-Prozeduren verursachen eine JVM-Ausnahmebedingung und können bei Verwendung der Standardeinstellung KEEPFENCED=YES in den folgenden Fällen nicht ausgeführt werden: * Erzeugen einer gespeicherten Java-Prozedur in der Entwicklungszentrale und anschließendes Debug * Ausführen einer gespeicherten Java-Prozedur durch einen Benutzer, während ein anderer Benutzer ein Debug für eine gespeicherte Java-Prozedur ausführt, obwohl die erste gespeicherte Java-Prozedur noch aktiv ist * Debug einer gespeicherten Java-Prozedur durch einen Benutzer, während ein anderer Benutzer eine gespeicherte Java-Prozedur ausführt, obwohl das Debug für die erste gespeicherte Java-Prozedur noch nicht abgeschlossen ist Zur Umgehung dieser Einschränkung stellen Sie sicher, dass das Konfigurationsschlüsselwort KEEPFENCED des Datenbankmanagers auf NO gesetzt ist. Führen Sie hierzu die folgenden Befehle aus: db2 update dbm cfg using KEEPFENCED NO db2stop db2start Wenn KEEPFENCED auf NO gesetzt ist, wird der db2fmp-Prozess beendet, sobald der Aufruf einer gespeicherten Java-Prozedur abgeschlossen ist. Zur Verarbeitung des nächsten Routinenaufrufs startet DB2 Universal Database einen neuen db2fmp-Prozess. Dadurch wird sichergestellt, dass sich keine vorhandene JVM im Debugmodus befindet, wenn Sie mit dem Debug einer gespeicherten Java-Prozedur beginnen. Die Einstellung KEEPFENCED=YES ist zur Erzeugung gespeicherter SQL-Prozeduren für Debugs und für das Debug gespeicherter SQL-Prozeduren erforderlich. Wenn KEEPFENCED=NO eingestellt ist, können gespeicherte SQL-Prozeduren erzeugt und ausgeführt werden, aber es kann kein Debug erfolgen. Methode DB2SystemMonitor.getServerTimeMicros nicht unterstützt Die DB2(R) Universal JDBC-Treibermethode DB2SystemMonitor.getServerTimeMicros() wird von DB2(R) Universal Database(TM) für Linux(TM), UNIX(R) und Windows(R)-Server zurzeit nicht unterstützt. Die Methode DB2SystemMonitor.getServerTimeMicros() gibt für Linux-, UNIX- und Windows(R)-Server 0 zurück, wenn eine Verbindung zu DB2(R) Universal Database(TM) hergestellt wird. Obligatorische Installation der Laufzeitumgebung für IBM XL C/C++-Compiler (Linux auf iSeries- und pSeries-Systemen, 64 Bit) Vor der Installation von 64-Bit-DB2 für Linux auf iSeries(TM)- und pSeries(R)-Systemen müssen die folgenden Voraussetzungen erfüllt sein: * Die Installation muss auf iSeries(TM)- oder pSeries(R)-Hardware ausgeführt werden, die von der Linux-Variante unterstützt wird. * Sie müssen eine der folgenden Varianten ausführen: * SUSE LINUX Enterprise Server (SLES) 9 * Red Hat Enterprise Linux 3 Update 3 (Taroon) * Sie müssen IBM(R) XL C/C++ Advanced Edition Version 7.0 for Linux Run-Time Environment Component herunterladen und installieren. Weitere Informationen hierzu finden Sie unter der folgenden URL-Adresse: http://www.ibm.com/support/docview.wss?uid=swg24007906 Oder führen Sie die folgenden Schritte durch: 1. Besuchen Sie die XL C/C++-Unterstützungsseite unter der URL-Adresse http://www.ibm.com/software/awdtools/xlcpp/support/. 2. Wählen Sie unter der Überschrift "Self Help: Download" die Option "Latest Updates (PTFs)" aus. 3. Wählen Sie unter der Überschrift "Linux" die Option "XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment" aus. 4. Befolgen Sie die Anweisungen auf der Seite "XL C/C++ Advanced Edition V7.0 for Linux Run-Time Environment". Universal JDBC Driver Type 2 unter DB2 UDB Version 8.2.2 nicht unterstützt (Linux AMD64) DB2 Universal Database(TM) (UDB) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) unter Linux AMD64 unterstützt Universal JDBC Driver Type 2 nicht. Die Unterstützung ist in einem zukünftigen FixPak vorgesehen. JDBC-Unterstützung ist in Version 8.2.2 über Universal JDBC Driver Type 4 und der früheren Version von Type 2 JDBC Driver verfügbar (COM.ibm.db2.jdbc.app.DB2Driver). Cursor in PHP-Anwendungen Wenn der PHP-Interpreter im Auftrag einer Anwendung einen Cursor erstellt, wird dieser Cursor standardmäßig als verschiebbarer schlüsselsatzgesteuerter Cursor erstellt. In seltenen Fällen werden dadurch unerwartete Ergebnisse zurückgegeben. Geben Sie daher zur Vermeidung dieses Problems für jede Anweisung SELECT, die für die Aktualisierung von Daten verwendet wird, explizit die Klausel "FOR READ ONLY" an. Weitere Möglichkeiten sind das Setzen der CLI-Konfigurationsparameter "Patch2=6", "Patch2=42" oder "DisableKeysetCursor=1". Jede dieser Möglichkeiten kann jedoch eigene Konsequenzen haben. Einzelheiten zu diesen Konfigurationsschlüsselwörtern finden Sie im Handbuch CLI Guide and Reference. Einschränkung für das CLI/ODBC-Konfigurationsschlüsselwort ConnectNode Das Schlüsselwort ConnectNode wirkt sich nicht auf die Steuerzentrale aus. Die Steuerzentrale stellt immer eine Verbindung zum Katalogknoten her, der in der Einstellung SQL_CONN_CATALOG_NODE angegeben ist. Einschränkung für die CLI-Funktion SQLColumns Die Funktion SQLColumns() unterstützt keine Datenrückgabe von einem Aliasnamen eines Aliasnamens. Wenn Sie die Funktion SQLColumns() für den Aliasnamen eines Aliasnamens aufrufen, wird eine leere Ergebnismenge zurückgegeben. Einschränkungen der Bindeoption bei CLI-Paketen Wenn Sie CLI-Pakete mit einer der folgenden Listdateien binden, werden bestimmte Bindeoptionen möglicherweise nicht wirksam: db2cli.lst, ddcsmvs.lst, ddcs400.lst, ddcsvm.lst oder ddcsvse.lst. Da CLI-Pakete von vielen Anwendungstypen verwendet werden (CLI, ODBC, JDBC, OLE DB, .NET und ADO), wirken sich Änderungen an den CLI-Paketen auf alle Anwendungen dieser Typen aus. Beim Binden von CLI-Paketen wird daher nur ein Teil der Bindeoptionen standardmäßig unterstützt. Folgende Optionen werden unterstützt: ACTION, COLLECTION, CLIPKG, OWNER und REPLVER. Alle anderen Bindeoptionen, die sich auf CLI-Pakete auswirken, werden ignoriert. Zum Erstellen von CLI-Paketen mit Bindeoptionen, die nicht standardmäßig unterstützt werden, geben Sie die Bindeoption COLLECTION zusammen mit einer Objektgruppen-ID an, die sich von der Standardobjektgruppen-ID NULLID unterscheidet. Alle angegebenen Bindeoptionen werden dann akzeptiert. Geben Sie beispielsweise zum Erstellen von CLI-Paketen mit der Bindeoption KEEPDYNAMIC YES (nicht standardmäßig unterstützt) folgenden Befehl ein: db2 bind @db2cli.lst collection neue_id keepdynamic yes Damit die CLI/ODBC-Anwendungen auf die in der neuen Objektgruppe erstellten CLI-Pakete zugreifen können, legen Sie für das CLI/ODBC-Schlüsselwort CurrentPackageSet in der Initialisierungsdatei db2cli.ini die neue Objektgruppen-ID fest. Zum Überschreiben von CLI-Paketen, die bereits mit einer bestimmten Objektgruppen-ID vorhanden sind, führen Sie eine der folgenden Aktionen aus: * Löschen Sie das vorhandene CLI-Paket, bevor Sie den Bindebefehl für diese Objektgruppen-ID ausgeben. * Geben Sie beim Ausgeben des Bindebefehls die Bindeoption ACTION REPLACE an. Einschränkungen für das CLI-Dienstprogramm LOAD Das CLI-Dienstprogramm LOAD unterstützt keine Parametermarken, wenn die vorbereitete SQL-Anweisung zum Einfügen von Daten eine SELECT-Klausel enthält. Vor Version 8.2 FixPak 3 (äquivalent zu Version 8.1 FixPak 10) konnten für das CLI-Dienstprogramm LOAD keine Zielspalten angegeben werden, wenn die Anweisung INSERT die Klausel VALUES enthielt. Ab Version 8.2 FixPak 3 (äquivalent zu Version 8.1 FixPak 10) können jedoch mit dem CLI-Dienstprogramm LOAD in der Anweisung INSERT mit einer VALUES-Klausel Zielspalten angegeben werden. Die folgende Anweisung z. B. wird nun vom CLI-Dienstprogramm LOAD unterstützt: INSERT into tabelleA (spalte1, spalte2, spalte3) VALUES (?, ?, ?) Erstellung der Toolskatalogdatenbank nicht unterstützt (Linux für AMD64) Die Erstellung der Toolskatalogdatenbank auf einem 64-Bit-Exemplar von DB2 Universal Database (UDB) unter Linux (AMD64) wird nicht unterstützt. Versuchen Sie nicht, den Toolskatalog auf einem 64-Bit-Exemplar unter Verwendung einer der folgenden Methoden zu erstellen: * Installieren von DB2 UDB * Aktualisieren eines 64-Bit-Exemplars mit dem Befehl db2isetup * Absetzen des CLP-Befehls CREATE TOOLS CATALOG nach Installationsabschluss Die Erstellung der Toolskatalogdatenbank auf einem 32-Bit-Exemplar unter Linux (AMD64) wird ab Version 8.1.4 unterstützt. Erstellung der Toolskatalogdatenbank nicht unterstützt (AIX, Solaris-Betriebsumgebung und HP-UX) Die Erstellung des Toolskatalogs während der Installation von DB2 Universal Database (UDB) für 64-Bit-Exemplare auf den 64-Bit-Hybridplattformen wird nicht unterstützt. Es gibt folgende Hybridplattformen: * AIX * Solaris-Betriebsumgebungen * HP-UX * Andere Plattformen, die sowohl 32-Bit- als auch 64-Bit-Exemplare unterstützen Wenn Sie einen Toolskatalog für ein 64-Bit-Exemplar erstellen möchten, können Sie dies nach der Installation von DB2 UDB über den Befehlszeilenprozessor (CLP) mit dem Befehl CREATE TOOLS CATALOG CLP oder unter Verwendung der Steuerzentrale tun. Sie müssen für diese Operation außerdem ein IBM Developer Kit (64 Bit) für Java installieren. Weitere Details finden Sie im Abschnitt zum DB2-Verwaltungsserver im Handbuch DB2 Systemverwaltung. Speicherbegrenzungen für DB2 UDB Express und DB2 Workgroup Server Edition Version 8.2 Es gibt Speicherbegrenzungen für die folgenden Produkte: * IBM DB2 Universal Database (UDB) Express Edition (Option für namentlich genannten Benutzer). Die maximale Hauptspeicherkapazität pro Server ist 4 GB. * IBM DB2 UDB Express Edition (CPU-Option). Die maximale Hauptspeicherkapazität pro Server ist 4 GB. * IBM DB2 UDB Workgroup Server Edition. Die maximale Hauptspeicherkapazität pro Server ist 16 GB. * IBM DB2 UDB Workgroup Server Unlimited Edition. Die maximale Hauptspeicherkapazität pro Server ist 16 GB. Planen eines Warehouse-Prozesses zur Ausführung in Intervallen Wenn Sie einen Warehouse-Prozess planen, der in Intervallen ausgeführt werden soll, müssen Sie ermitteln, wie lange die Ausführung aller Produktionsschritte im Prozess im Höchstfall dauert, und die Intervalle entsprechend planen. Wenn ein Prozess das geplante Zeitintervall überschreitet, werden alle nachfolgend geplanten Vorkommen dieses Prozesses nicht ausgeführt und nicht erneut geplant. Einschränkungen der SNA-Unterstützung in Version 8 Die folgende Unterstützung wurde von DB2 Universal Database (UDB) Enterprise Server Edition (ESE) Version 8 für Windows- und UNIX-Betriebssysteme und von DB2 Connect Enterprise Edition (CEE) Version 8 für Windows- und UNIX-Betriebssysteme zurückgezogen: * Die Funktion zur Aktualisierung an mehreren Standorten (zweiphasige Festschreibung) mit SNA kann nicht verwendet werden. Anwendungen, für die eine Aktualisierung an mehreren Standorten (zweiphasige Festschreibung) erforderlich ist, müssen TCP/IP-Konnektivität verwenden. Aktualisierung an mehreren Standorten (zweiphasige Festschreibung) über TCP/IP auf einem Host oder iSeries-Datenbankserver ist seit mehreren Releases verfügbar. Host- oder iSeries-Anwendungen, für die die Unterstützung von Aktualisierungen an mehreren Standorten (zweiphasige Festschreibung) erforderlich ist, können die neue Funktion zur Unterstützung von TCP/IP-Aktualisierungen an mehreren Standorten (zweiphasige Festschreibung) in DB2 UDB ESE Version 8 verwenden. * DB2 UDB ESE- oder DB2 CEE-Server akzeptieren keine Clientverbindungen über SNA mehr. Ab Version 8 FixPak 1 ist in DB2 UDB der Zugriff der 32-Bit-Version von AIX-, HP-UX- und Windows-Anwendungen sowie von Anwendungen der Solaris-Betriebsumgebung auf Host- oder iSeries-Datenbankserver mit SNA möglich. Durch diese Unterstützung können Anwendungen mit SNA auf Host- oder iSeries-Datenbankserver zugreifen, allerdings nur mit einphasiger Festschreibung. * Sysplex-Unterstützung mit DB2 UDB für z/OS ist nur über TCP/IP verfügbar. Sysplex-Unterstützung mit SNA-Konnektivität wird nicht bereitgestellt. * Die Unterstützung für die Kennwortänderung ist bei Verwendung der SNA-Konnektivität zu Hostdatenbankservern nicht mehr verfügbar. * Die gesamte SNA-Unterstützung wird mit der nächsten Version von DB2 UDB und DB2 Connect zurückgezogen. Problem und Einschränkung bei Sicherheits-Plug-in für DB2 UDB-Clients (Windows) Wenn Sie Sicherheits-Plug-ins entwickeln, die auf DB2-Clients unter Windows-Betriebssystemen eingesetzt werden, entladen Sie bei der Plug-in-Beendigungsfunktion keine Zusatzbibliotheken. Diese Einschränkung gilt für alle Typen von Clientsicherheits-Plug-ins, wie z. B. Plug-ins für Gruppen, Benutzer-IDs und Kennwörter, Kerberos und GSS-API. Diese Einschränkung wird vom DB2 Universal Database-Problem beim Entladen von Sicherheits-Plug-ins auf DB2-Clients unter Windows-Betriebssystemen verursacht. Fehler beim Melden einer erfolgreichen Anmeldung während einer Verbindungsherstellung (AIX) Bei Verwendung der Betriebssystemauthentifizierung unter AIX versucht DB2 Universal Database (UDB), nach erfolgter Authentifizierung während einer Verbindungsherstellung eine erfolgreiche Anmeldung an AIX zu melden. Vor Version 8 FixPak 5 wurde die Verbindung trotz Authentifizierung des Benutzers nicht hergestellt, wenn DB2 UDB keine erfolgreiche Anmeldung melden konnte. Ab Version 8 FixPak 5 bleibt die Verbindung bestehen, und der Fehler wird in der Datei db2diag.log protokolliert. Zweiteilige Benutzer-ID nicht unterstützt (Windows ME) Die zweiteilige Benutzer-ID für die Anweisung CONNECT und den Befehl ATTACH, wie beispielsweise domänenname\benutzername wird unter Windows ME nicht unterstützt. Die Seite zum Laden und Importieren von Spalten unterstützt keine DBCS-Zeichen in IXF-Dateien Wenn Sie den Ladeassistenten oder das Notizbuch für den Import verwenden, um eine Lade- oder Importoperation aus einer IXF-Eingabedatei einzurichten, die DBCS-Zeichen enthält, werden die Spaltennamen, die in der Datei enthalten sind, auf der Seite Spalten nicht korrekt angezeigt. GUI-Tools für Linux-Betriebssysteme auf AMD64-Systemen Die GUI-Tools, die mit DB2 Universal Database (UDB) ausgeliefert werden, sind Java-basierte Dienstprogramme mit grafischer Benutzerschnittstelle. Beispiele für DB2 UDB-GUI-Tools: * Steuerzentrale * Information - Unterstützung * Konfigurationsassistent * Entwicklungszentrale Da Linux-Betriebssysteme auf AMD64-Systemen zurzeit nicht über ein 64-Bit-Java(TM) SDK oder eine Java-Laufzeitumgebung (JRE) verfügen, müssen Sie diese Tools über ein 32-Bit-DB2 UDB-Exemplar ausführen. Diese Tools können Sie dennoch verwenden, um Datenbanken in lokalen oder fernen 64-Bit-Exemplaren zu verwalten. Wenn Sie z. B. die Steuerzentrale verwenden möchten, müssen Sie zuerst ein 32-Bit-Exemplar erstellen. Nach der Erstellung eines 32-Bit-Exemplars müssen Sie das zu verwaltende lokale 64-Bit-Exemplar manuell katalogisieren. Weitere Informationen zu DB2 für Linux auf AMD64-Systemen finden Sie unter der folgenden URL-Adresse: http://www-1.ibm.com/support/docview.wss?uid=swg450ec44e63a9da8f588256d8d004ff3ab Mindestanzeigeeinstellungen für GUI-Tools Damit die GUI-Tools, wie die Steuerzentrale, korrekt funktionieren, müssen Sie eine Bildschirmauflösung von mindestens 800 x 600 und eine Anzeigepalette mit mindestens 32 Farben verwenden. Falsche Anzeige von GB18030-Zeichen in der Titelleiste von Fenstern Chinesische Zeichen, die mit dem Codierungsstandard GB18030 verschlüsselt wurden, werden in der Titelleiste von Fenstern möglicherweise als Fragezeichen oder Quadrate dargestellt. Tabellen der Informationskatalogzentrale können nicht partitioniert werden Tabellen, die vom Information Catalog Manager verwendet werden, dürfen in nur einer Datenbankpartition enthalten sein. Es gibt mehrere Möglichkeiten, um die Tabellen in eine einzelne Partition zu versetzen. Gehen Sie beispielsweise wie folgt vor: 1. Öffnen Sie einen DB2-Befehlszeilenprozessor, und setzen Sie die folgenden Befehle ab: a. CREATE DATABASE PARTITION GROUP name-der-partitionsgruppe ON DBPARTITIONNUM partitionsnummer b. CREATE REGULAR TABLESPACE tabellenbereichsname IN DATABASE PARTITION GROUP name-der-partitionsgruppe MANAGED BY SYSTEM USING ('katalogname') Dabei ist name-der-partitionsgruppe in beiden Befehlen identisch. 2. Klicken Sie Start -> Programme -> IBM DB2 -> Installations- und Konfigurationstools -> Assistent: Informationskatalog verwalten an. 3. Geben Sie auf der Seite mit den Optionen den Tabellenbereichsnamen im Feld Tabellenbereich an. Query Patroller-Einschränkungen bei Inaktivierung von DYN_QUERY_MGMT Query Patroller kann die folgenden Aktionen nicht ausführen, wenn der Datenbankkonfigurationsparameter DYN_QUERY_MGMT inaktiviert ist: * Freigabe von Abfragen aus einem Status "Angehalten" * Bewirken der Ausführung einer aktiven oder in einer Warteschlange befindlichen Abfrage im Hintergrund, wenn die Abfrage im Vordergrund läuft Wenn Sie versuchen, eine Abfrage aus einem Status "Angehalten" freizugeben oder eine Vordergrundabfrage in eine Hintergrundabfrage zu ändern, wenn DYN_QUERY_MGMT auf DISABLE (inaktivieren) gesetzt ist, wird eine Fehlernachricht angezeigt und der Status der Abfrage wird nicht geändert. Wenn angehaltene Abfragen für die Ausführung terminiert sind und DYN_QUERY_MGMT zum Zeitpunkt ihres Ausführungsbeginns inaktiviert ist, wird eine Fehlernachricht in die Datei qpdiag.log geschrieben, und die Abfragen verbleiben im Status "Angehalten". Query Patroller-Ergebnistabellen jetzt mit Schema DB2QPRT Ab FixPak 5 werden alle neuen Ergebnistabellen im Schema DB2QPRT anstatt im Schema des übergebenden Benutzers erstellt. Das Zugriffsrecht DROPIN für das Schema DB2QPRT wird Operatoren erteilt, deren Profile vor der Installation von FixPak 5 erstellt wurden und über eines der folgenden Zugriffsrechte verfügten: * Das Zugriffsrecht MONITORING mit Editierberechtigung * Das Zugriffsrecht HISTORICAL ANALYSIS mit Editierberechtigung Das Zugriffsrecht DROPIN für das Schema DB2QPRT wird erteilt, wenn Query Patroller zum ersten Mal eine Ergebnistabelle in diesem Schema erstellt. Bedienern, denen das Zugriffsrecht MONITORING mit Editierberechtigung oder das Zugriffsrecht HISTORICAL ANALYSIS mit Editierberechtigung nach der Installation von FixPak 5 erteilt wurde, wird ebenfalls das Zugriffsrecht DROPIN für das Schema DB2QPRT beim Erstellen oder Aktualisieren Ihrer Profile erteilt. Einschränkungen bezüglich des Diagnoseanzeigers Der Diagnosemonitor kann keine Aktionen für den Diagnoseanzeiger db2.db2_op_status ausführen, wenn der Diagnoseanzeiger in den inaktiven Status versetzt wird. Dieser Status kann z. B. verursacht werden, wenn ein vom Diagnoseanzeiger überwachtes Exemplar aufgrund einer expliziten STOP-Anforderung oder einer abnormalen Beendigung inaktiviert wird. Wenn das Exemplar nach einer abnormalen Beendigung automatisch erneut gestartet werden soll, müssen Sie den Fault Monitor konfigurieren, um die hohe Verfügbarkeit des Exemplars beizubehalten. Bekannte Probleme und Fehlerumgehungen Export in eine IXF-Datei mit Indizes in Spalten, die die Zeichen - und + enthalten Wenn der Befehl export mit einem IXF-Dateiformat und der Klausel SELECT * abgesetzt wird, werden ggf. Indexierungsinformationen erfasst. Fehler Wenn die im Index angegebenen Spaltennamen die Zeichen - oder + enthalten, werden die Indexierungsinformationen nicht erfasst, und Sie erhalten den SQL-Code SQL27984W. Der Export wird beendet, ohne dass sich dies auf die exportierten Daten auswirkt. Die Indexierungsinformationen werden jedoch nicht in der IXF-Datei gespeichert. Fehlerumgehung Wenn Sie die Tabelle mit dem Befehl import und dem Parameter CREATE erneut erstellen, werden die Indizes nicht erneut erstellt. Die Indizes können Sie mit dem Dienstprogramm db2look separat erstellen. Fehler CLI0116E oder SQL0428N beim Aufruf der API db2ReadLog Fehler Wenn Sie die API db2ReadLog über eine Anwendung aufrufen, kann dies beim Trennen der Anwendung von der Datenbank einen Fehler verursachen, falls zuvor keine COMMIT- oder ROLLBACK-Operation ausgeführt wird: * Wenn die API db2ReadLog über eine CLI-Anwendung aufgerufen wird, kann dies den Fehler CLI0116E verursachen. * Wenn die API db2ReadLog über eine eingebettete, in C geschriebene SQL-Anwendung aufgerufen wird, kann dies den Fehler SQL0428N verursachen. Fehlerumgehung 1 Schalten Sie für nicht eingebettete SQL-Anwendungen den Modus für automatisches Festschreiben ein, bevor Sie die API db2ReadLog aufrufen. Fehlerumgehung 2 Setzen Sie nach dem Aufruf der API db2ReadLog eine COMMIT- oder ROLLBACK-Anweisung ab, bevor Sie die Verbindung zur Datenbank trennen. Der Befehl "db2gcf -k" schlägt in DB2 UDB Workgroup Server Edition fehl Fehler Der Befehl 'db2gcf' startet, stoppt oder überwacht ein DB2 Universal Database-Exemplar in der Regel in einer automatisierten Prozedur, wie z. B. in einem Cluster mit hoher Verfügbarkeit. Die Verwendung des Systembefehls 'db2gcf' mit dem Parameter -k unter DB2 UDB Workgroup Server schlägt fehl. Fehlerumgehung Der Befehl "db2gcf -k" kann nur unter DB2 UDB Enterprise Server Edition, nicht jedoch unter DB2 UDB Workgroup Server Edition eingesetzt werden. Fehler SQL1224 vom DRDA-Wrapper (AIX) Wenn ein 32-Bit-DB2 Universal Database-Server auf einem AIX-System ausgeführt wird und eine Anwendung, die auf demselben System aktiv ist, mehrere Datenbankverbindungen über den DRDA-Wrapper aufweist, empfängt die Anwendung möglicherweise den folgenden Fehler: SQL1822N Es wurde ein unerwarteter Fehlercode "-1224" von der Datenquelle "W3_SERVER2" empfangen. Zugeordneter Text und Token sind func="DriverConnect" msg="SQL1224N Ein Datenbankagent konnte nicht für die Anforderung gestartet werden, oder er wurde auf Grund eines Systemabschlusses der Datenbank bzw. durch den Befehl FORCE beendet." SQLSTATE=560BD Sie vermeiden diesen Fehler, indem Sie in die Konfigurationsdatei für zusammengeschlossene Datenbanken (exemplarverzeichnis/cfg/db2dj.ini) den folgenden Eintrag einfügen: EXTSHM=ON Anmerkung: Wenn Sie der Konfigurationsdatei für zusammengeschlossene Datenbanken Einträge hinzufügen, müssen Sie DB2 UDB stoppen und erneut starten, damit die Änderungen wirksam werden. Sie können jedoch auch die lokale DB2 UDB-Datenbank so katalogisieren, dass sie sich auf einem TCP/IP-Knoten befindet. Beispiel: CATALOG TCPIP NODE mein_knoten REMOTE mein_host SERVER 123; CATALOG DB meinedb AT NODE mein_knoten; CREATE WRAPPER drda; CREATE SERVER mein_server TYPE DB2/UDB VERSION 8 WRAPPER drda AUTHORIZATION "meine_id" PASSWORD "mein_kennwort" OPTIONS(ADD DBNAME 'MEINEDB'); Direktaufrufe in Microsoft Visual Studio .NET Framework 1.1 funktionieren nicht Wenn Ihre Direktaufrufe in Microsoft Visual Studio .NET Framework 1.1 nicht funktionieren, können Sie von der Website von Microsoft ein Hotfix herunterladen. Sie finden das Hotfix in der Microsoft Knowledge Base unter Artikel Q836745. Ländereinstellung für vereinfachtes Chinesisch (AIX) Unter AIX wurde der codierte Zeichensatz für die Ländereinstellung für vereinfachtes Chinesisch Zh_CN für folgende Versionen geändert: * AIX Version 5.1.0000.0011 oder höher * AIX Version 5.1.0 mit Programmfix 2 oder höher Der Zeichensatz wurde von GBK (Codepage 1386) in GB18030 (Codepage 5488 oder 1392) geändert. Da DB2 Universal Database (UDB) für AIX den Zeichensatz GBK nativ und den Zeichensatz GB18030 über Unicode unterstützt, legt DB2 UDB den codierten Zeichensatz der Ländereinstellung Zh_CN standardmäßig auf ISO 8859-1 (Codepage 819) fest. Darüber hinaus wird bei einigen Operationen als Gebiet der Ländereinstellung die USA (US) festgelegt. Es gibt zwei Möglichkeiten, um diese Einschränkung zu umgehen: * Ändern Sie den codierten Zeichensatz der Ländereinstellung von GB18030 in GBK und das Gebiet von USA (US) in China (Gebietskennung: CN, Gebietscode: 86). * Verwenden Sie eine andere Ländereinstellung für vereinfachtes Chinesisch. Wenn Sie sich für die erste Möglichkeit entscheiden, setzen Sie die folgenden Befehle ab: db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Wenn Sie sich für die zweite Möglichkeit entscheiden, ändern Sie die Ländereinstellung von Zh_CN in ZH_CN oder zh_CN. Der codierte Zeichensatz der Ländereinstellung ZH_CN ist Unicode (UTF-8), der codierte Zeichensatz der Ländereinstellung zh_CN ist eucCN (Codepage 1383). Ländereinstellung für vereinfachtes Chinesisch (Red Hat Linux) In Red Hat Version 8 oder höher (einschließlich Red Hat Enterprise Linux [RHEL] Version 2.1 und Version 3) wurde der Standardwert für den codierten Zeichensatz für vereinfachtes Chinesisch von GBK (Codepage 1386) in GB18030 (Codepage 5488 oder 1392) geändert. Da DB2 Universal Database (UDB) für Linux den Zeichensatz GBK nativ und den Zeichensatz GB18030 über Unicode unterstützt, legt DB2 UDB seinen codierten Zeichensatz standardmäßig auf ISO 8859-1 (Codepage 819) fest. Darüber hinaus wird bei einigen Operationen als Gebiet die USA (US) festgelegt. Es gibt zwei Möglichkeiten, um diese Einschränkung zu umgehen: * Ändern Sie den Standardwert für den codierten Zeichensatz von Red Hat von GB18030 in GBK und das Gebiet von USA (US) in China (Gebietskennung: CN, Gebietscode: 86). * Verwenden Sie eine andere Ländereinstellung für vereinfachtes Chinesisch. Wenn Sie sich für die erste Möglichkeit entscheiden, setzen Sie die folgenden Befehle ab: db2set DB2CODEPAGE=1386 db2set DB2TERRITORY=86 db2 terminate db2stop db2start Wenn Sie sich für die zweite Möglichkeit entscheiden, setzen Sie einen der folgenden Befehle ab: export LANG=zh_CN.gbk export LANG=zh_CN export LANG=zh_CN.utf8 Dabei ist der codierte Zeichensatz, der zh_CN zugeordnet ist, eucCN oder Codepage 138, und der codierte Zeichensatz, der zh_CN.utf8 zugeordnet ist, Codepage 1208. Inkompatibilität bei Merant Driver Manager (UNIX) Bei der Unicode-Unterstützung sind Inkompatibilitäten vorhanden, wenn Merant Driver Manager unter UNIX auf den ODBC-Treiber von DB2 zugreift. Auf Grund dieser Inkompatibilitäten wird Merant Driver Manager zur Verwendung von Unicode veranlasst, selbst wenn die Anwendung die Unicode-Verwendung nicht angefordert hat. Dies kann zu Problemen mit Komponenten wie der Data Warehouse-Zentrale, Information Catalog Manager und MQSI führen, die Merant Driver Manager zur Unterstützung von Nicht-IBM Datenquellen benötigen. Sie können eine alternative DB2-ODBC-Treiberbibliothek ohne aktivierte Unicode-Unterstützung verwenden, bis eine dauerhafte Lösung zur Verfügung steht. Eine alternative DB2-ODBC-Treiberbibliothek ohne aktivierte Unicode-Unterstützung ist in DB2 Universal Database (UDB) Version 8.1 für AIX, HP-UX und die Solaris-Betriebsumgebung enthalten. Zur Verwendung der alternativen Bibliothek müssen Sie eine Kopie von dieser erstellen und die Kopie mit dem Originalnamen der DB2-ODBC-Treiberbibliothek benennen. Anmerkung: Die alternative Bibliothek (_36) enthält die Unicode-Funktionen, die für den DB2-JDBC-Treiber erforderlich sind. Bei Verwendung dieser Bibliothek können JDBC-Anwendungen einschließlich WebSphere Application Server erfolgreich mit DB2 UDB arbeiten. Beachten Sie folgende Hinweise, um zur Nicht-Unicode-ODBC-Bibliothek unter AIX, HP-UX oder der Solaris-Betriebsumgebung umschalten zu können: Da es sich dabei um einen manuellen Prozess handelt, müssen Sie diesen bei jeder Aktualisierung Ihres Produkts ausführen, ebenso nach Anwendung nachfolgender FixPaks oder Modifikationsstufen. Vorgehensweise AIX Gehen Sie wie folgt vor, um die alternative Bibliothek unter AIX zu erstellen: 1. Beenden Sie als Exemplareigner alle Datenbankexemplare mit dem Befehl db2stop force. 2. Beenden Sie unter Verwendung der Exemplar-ID des DB2-Verwaltungsservers (DVS) das DVS-Exemplar mit dem Befehl db2admin stop force. 3. Sichern Sie die Originaldatei db2.o im Verzeichnis /usr/lpp/db2_81/lib. 4. Setzen Sie mit der Rootberechtigung den Befehl slibclean ab. 5. Kopieren Sie die Datei db2_36.o in die Sicherungsdatei db2.o, und stellen Sie dabei sicher, dass Eigentumsrecht und Berechtigungen konsistent bleiben. Verwenden Sie die folgenden Befehle: cp db2_36.o db2.o -r--r--r-- bin:bin for db2.o Um wieder zum Originalobjekt zu wechseln, führen Sie dieselbe Prozedur aus. Verwenden Sie dabei die Sicherungsdatei an Stelle der Datei db2_36.o. Solaris-Betriebsumgebung Gehen Sie wie folgt vor, um die alternative Bibliothek in einer Solaris-Betriebsumgebung zu erstellen: 1. Beenden Sie als Exemplareigner alle Datenbankexemplare mit dem Befehl db2stop force. 2. Beenden Sie unter Verwendung der Exemplar-ID des DB2-Verwaltungsservers (DVS) das DVS-Exemplar mit dem Befehl db2admin stop force. 3. Sichern Sie die Originaldatei libdb2.so.1 im Verzeichnis /opt/IBMdb2/V8.1/lib. 4. Kopieren Sie die Datei libdb2_36.so.1 in die Sicherungsdatei libdb2.so.1, und stellen Sie dabei sicher, dass Eigentumsrecht und Berechtigungen konsistent bleiben. Verwenden Sie die folgenden Befehle: cp libdb2_36.so.1 libdb2.so.1 -r-xr-xr-x bin:bin libdb2.so.1 5. Setzen Sie den Befehl db2iupdt für jedes Datenbankexemplar und den Befehl dasupdt für jedes Datenbankexemplar und den Befehl dasupdt für jedes Datenbankexemplar und den Befehl dasupdt , obwohl er zu SYSADM_GROUP gehört Fehler Beim Versuch, die Konfigurationsdatei des Datenbankmanagers zu aktualisieren (update dbm cfg), empfängt der Benutzer den Systemfehler SQL5005C. Der Benutzer verfügt nicht über die erforderlichen NTFS-Berechtigungen, um in das Verzeichnis sqllib\exemplarverzeichnis zu schreiben, obwohl Sie diesen Benutzer der Gruppe SYSADM_GROUP hinzugefügt haben. Erste Fehlerumgehung Erteilen Sie den Benutzern mindestens die Berechtigung zum Modifizieren (MODIFY) für das Verzeichnis exemplarverzeichnis auf Dateisystemebene. Zweite Fehlerumgehung Erstellen Sie ein neues Verzeichnis, für das Sie dem Benutzer mindestens die Berechtigung zum Modifizieren (MODIFY) erteilen. Verwenden Sie den Befehl db2set db2instprof, um auf das neue Verzeichnis zu zeigen. Sie müssen entweder das Exemplar erneut erstellen, damit die Informationen unter dem neuen Exemplarverzeichnis gespeichert werden, das durch db2instprof angegeben wird, oder Sie müssen das alte Exemplarverzeichnis in das neue Verzeichnis versetzen. Beispielprogramme für XML Extender umbenannt Die Namen einiger XML Extender-Beispielprogramme sind möglicherweise mit den Namen anderer installierter Programme identisch. Wenn versehentlich ein anderes Programm mit demselben Namen wie das XML Extender-Beispielprogramm aufgerufen wird, können Ihre XML-Dateien beschädigt werden. In der folgenden Liste sind die alten Namen der XML Extender-Beispielprogramme sowie neue Programmnamen aufgeführt, die seltener Konflikte verursachen. Verwenden Sie an Stelle der alten Namen unbedingt die neuen Namen für die Beispielprogramme, damit keine XML-Dateien beschädigt werden. Tabelle 10. Neue Beispielprogramme für XML Extender (Windows) +----------------------------------+----------------------------------+ | Altes Programm (Nicht mehr | Neues Programm (Verwenden) | | verwenden) | | +----------------------------------+----------------------------------+ | insertx.exe | dxxisrt.exe | +----------------------------------+----------------------------------+ | retrieve.exe | dxxretr.exe | +----------------------------------+----------------------------------+ | retrieve2.exe | dxxretr2.exe | +----------------------------------+----------------------------------+ | retrievec.exe | dxxretrc.exe | +----------------------------------+----------------------------------+ | shred.exe | dxxshrd.exe | +----------------------------------+----------------------------------+ | tests2x.exe | dxxgenx.exe | +----------------------------------+----------------------------------+ | tests2xb.exe | dxxgenxb.exe | +----------------------------------+----------------------------------+ | tests2xc.exe | dxxgenxc.exe | +----------------------------------+----------------------------------+ Tabelle 11. Neue Beispielprogramme für XML Extender (Linux und UNIX) +----------------------------------+----------------------------------+ | Altes Programm (Nicht mehr | Neues Programm (Verwenden) | | verwenden) | | +----------------------------------+----------------------------------+ | insertx | dxxisrt | +----------------------------------+----------------------------------+ | retrieve | dxxretr | +----------------------------------+----------------------------------+ | retrieve2 | dxxretr2 | +----------------------------------+----------------------------------+ | retrievec | dxxretrc | +----------------------------------+----------------------------------+ | shred | dxxshrd | +----------------------------------+----------------------------------+ | tests2x | dxxgenx | +----------------------------------+----------------------------------+ | tests2xb | dxxgenxb | +----------------------------------+----------------------------------+ | tests2xc | dxxgenxc | +----------------------------------+----------------------------------+ Verwenden der neuen Beispielprogramme mit sqx-Beispieldateien Der Quellcode (sqx-Dateien) für die oben aufgeführten ausführbaren Dateien befindet sich im Verzeichnis samples\db2xml\c Ihrer Installation. Die Quellendateien werden immer noch mit ihren alten Namen bezeichnet. Wenn Sie Änderungen am Quellcode vornehmen, kopieren Sie Ihre neu kompilierten ausführbaren Dateien (mit den alten Namen) in das Verzeichnis sqllib\bin. Auf Windows-Plattformen müssen Sie eine zusätzliche Kopie erstellen, diese mit ihrem oben aufgeführten, neuen Namen benennen und in das Verzeichnis bin kopieren. Beide Kopien ersetzen die im bin-Verzeichnis vorhandenen Dateien. Nach dem Kompilieren Ihrer neuen Version von shred.exe müssen Sie zum Beispiel zwei Kopien machen und die Dateien im bin-Verzeichnis ersetzen: eine Datei shred.exe und die andere umbenannte Datei dxxshrd.exe. Auf Linux- und UNIX-Plattformen müssen Sie nur die Datei mit dem alten Namen durch Ihre neu kompilierte Version ersetzen. Wenn Sie anhand dieser Programme neue ausführbare Dateien erstellen, müssen Sie die neuen Dateien aus dem Verzeichnis \SQLLIB\samples\db2xml\c\ in das Verzeichnis \SQLLIB\bin\ kopieren. Erstellen Sie dann eine zusätzliche Kopie, indem Sie die Dateien gemäß der obigen Tabelle umbenennen. Zerlegen von Dokumenten in XML Extender, die nicht eindeutige Attribute und Elementnamen enthalten Sie können jetzt Dokumente zerlegen, die nicht eindeutige Attribute oder Elementnamen enthalten, die verschiedenen Spalten (der gleichen oder verschiedener Tabellen) zugeordnet sind, ohne die Fehlermeldung DXXQ045E zu erhalten. Es folgt ein ein Beispiel eines XML-Dokuments mit nicht eindeutigen Attributen und nicht eindeutigen Elementnamen: John Smith Jane Doe xxxx-xxxx 2 12.50 yyyy-yyyy 4 24.99 Die zugehörige DAD, welche die kopierten Elemente und Attribute anderen Spalten zuordnet, sieht wie folgt aus:
order_tab.order_id=detail_tab.order_id
detail_tab" />
Der Inhalt der Tabellen würde nach dem Zerlegen des vorangegangenen Dokuments wie folgt aussehen: ORDER _TAB: ORDER_ID CUST_ID CUST_NAME SALESP_ID SALESP_NAME 0001-6789 1111 John Smith 1234 Jane Doe DETAIL_TAB: ORDER_ID ITEMNO QUANTITY UNIT_PRICE 0001-6789 xxxx-xxxx 2 12.50 0001-6789 yyyy-yyyy 4 24.99 Anmerkung: Definieren Sie einen Aliasnamen für die Tabelle, und verwenden Sie den Aliasnamen im DAD-Element
von einer der Zuordnungen, um mehrere Elemente und Attribute derselben Spalte in derselben Tabelle zuzuordnen. Unterschiede zwischen SNA und TCP/IP bei Verwendung von DB2 Connect Bei der Herstellung einer Verbindung zu einem OS/390-System über SNA führt die VTAM-Schicht bei einer neuen Verbindung automatisch eine COMMIT-Operation aus. Die automatische COMMIT-Operation lässt zu, dass der Threadstatus des Hosts inaktiv ist. Deshalb wird der Thread sofort inaktiviert. Bei der Herstellung einer Verbindung zu einem OS/390-System über TCP/IP gibt es jedoch keine automatische COMMIT-Operation. Die Anwendung selbst muss nach Herstellung der Verbindung eine explizite COMMIT-Operation ausführen, damit der Thread auf dem Host inaktiviert werden kann. Ohne die explizite COMMIT-Operation unterliegt der Thread einem Zeitlimit für ruhende Threads. Zur Umgehung dieses Problems wird empfohlen, die Anwendung so umzuschreiben, dass eine explizite COMMIT-Operation ausgeführt wird, wenn die Verbindung nach deren Herstellung inaktiviert wird. Dokumentationsaktualisierungen Änderungsmarkierungen zeigen an, dass Text hinzugefügt oder geändert wurde. Ein vertikaler Balken ( | ) markiert Informationen, die in Version 8.2 FixPak 4 (äquivalent zu Version 8.1 FixPak 11). hinzugefügt oder geändert wurden. Systemverwaltung: Implementierung Konfiguration der automatischen Clientweiterleitung (DB2_MAX_CLIENT_CONNRETRIES und DB2_CONNRETRIES_INTERVAL) Die Funktion für die automatische Clientweiterleitung wiederholt die Verbindungsherstellung zu einer Datenbank standardmäßig bis zu 10 Minuten. Sie können das präzise Wiederholungsverhalten jedoch mit Hilfe von von einer der beiden folgenden Registrierdatenbankvariablen oder unter Verwendung beider Variablen konfigurieren: * DB2_MAX_CLIENT_CONNRETRIES: die maximale Anzahl versuchter Verbindungswiederholungen bei automatischer Clientweiterleitung. * DB2_CONNRETRIES_INTERVAL: die Ruhezeit zwischen aufeinanderfolgenden Verbindungswiederholungen in Sekunden. Wenn DB2_MAX_CLIENT_CONNRETRIES festgelegt ist, DB2_CONNRETRIES_INTERVAL jedoch nicht, nimmt DB2_CONNRETRIES_INTERVAL standardmäßig den Wert 30 an. Wenn DB2_CONNRETRIES_INTERVAL festgelegt ist, DB2_MAX_CLIENT_CONNRETRIES jedoch nicht, nimmt DB2_MAX_CLIENT_CONNRETRIES standardmäßig den Wert 10 an. Wenn weder DB2_MAX_CLIENT_CONNRETRIES noch DB2_CONNRETRIES_INTERVAL festgelegt ist, gilt für die Funktion der automatischen Clientweiterleitung das zuvor beschriebene Standardverhalten. Anmerkung: Benutzer, die Konnektivität des Typs 4 mit dem DB2(R) Universal JDBC-Treiber verwenden, müssen die automatische Clientweiterleitung mit Hilfe der beiden folgenden Datenquellenmerkmale konfigurieren: * maxRetriesForClientReroute: Mit diesem Merkmal können Sie die Anzahl Wiederholungen begrenzen, wenn die primäre Verbindung zum Server fehlschlägt. Dieses Merkmal wird nur verwendet, wenn das Merkmal retryIntervalClientReroute ebenfalls festgelegt ist. * retryIntervalForClientReroute: Mit diesem Merkmal können Sie die Ruhezeit (in Sekunden) vor einer erneuten Wiederholung angeben. Dieses Merkmal wird nur verwendet, wenn das Merkmal maxRetriesForClientReroute ebenfalls festgelegt ist. Erläuterung zur Registrierdatenbankvariablen DB2TIMEOUT Die Registrierdatenbankvariable DB2TIMEOUT wird nicht mehr unterstützt. Mit dieser Einstellung wurde das Zeitlimitintervall für Windows(R) 3.x- und Macintosh-Clients bei langen SQL-Abfragen gesteuert. Diese Funktion wurde standardmäßig inaktiviert. Während der Erstellung von Tabellenbereichsbehältern erstellte Verzeichnisse Beim Erstellen von Tabellenbereichsbehältern erstellt DB2 UDB nicht vorhandene Verzeichnisebenen. Wenn z. B. ein Behälter als /project/user_data/container1 angegeben wird und das Verzeichnis /project nicht vorhanden ist, erstellt DB2 UDB die Verzeichnisse /project und /project/user_data. Ab DB2 UDB Version 8.2 FixPak 4 erstellt DB2 UDB Verzeichnisse mit der Zugriffsberechtigung 700. Dies bedeutet, dass nur der Eigner Lese-, Schreib- und Ausführungszugriff hat. Beispielszenario beim Erstellen mehrerer Exemplare: 1. Angenommen, Sie verwenden die gleiche Verzeichnisstruktur wie oben, und die Verzeichnisebenen /project/user_data sind nicht vorhanden. 2. 'user1' erstellt standardmäßig ein Exemplar namens user1, dann eine Datenbank und anschließend einen Tabellenbereich mit /project/user_data/container1 als Behälter. 3. 'user2' erstellt standardmäßig ein Exemplar namens user2, dann eine Datenbank und versucht anschließend, einen Tabellenbereich mit /project/user_data/container2 als Behälter zu erstellen. Da DB2 UDB die Verzeichnisebenen /project/user_data basierend auf der ersten Anforderung mit der Zugriffsberechtigung 700 erstellt hat, hat 'user2' keinen Zugriff auf diese Verzeichnisebenen und kann container2 in diesen Verzeichnissen nicht erstellen. In diesem Fall schlägt die Operation CREATE TABLESPACE fehl. Es gibt zwei Methoden zur Lösung dieses Konflikts: 1. Erstellen Sie das Verzeichnis /project/user_data, bevor Sie die Tabellenbereiche erstellen, und setzen Sie die Berechtigung auf den entsprechenden Zugriff, der für 'user1' und 'user2' erforderlich ist, um die Tabellenbereiche zu erstellen. Wenn alle Ebenen eines Tabellenbereichs vorhanden sind, modifiziert DB2 UDB den Zugriff nicht. 2. Setzen Sie die Berechtigung von /project/user_data nach dem Erstellen von /project/user_data/container1 durch 'user1' auf den entsprechenden Zugriff, der für 'user2' erforderlich ist, um den Tabellenbereich zu erstellen. Dynamischer Speicher Durch die Änderung des Formats der Behälternamen haben sich ebenfalls die Tabellenbereichs-ID und die Behälter-ID geändert. Das neue Format lautet wie folgt: //NODE#### /T####### /C#######. Dabei gilt Folgendes: * /T####### ist die Tabellenbereichs-ID. Beispiel: T0000003. * /C####### ist die Behälter-ID. Beispiel: C0000012. Definieren einer generierten Spalte in einer vorhandenen Tabelle Ab DB2(R) Universal Database Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) können generierte Spalten in eindeutigen Indizes verwendet werden. Generierte Spalten können in Integritätsbedingungen, referenziellen Integritätsbedingungen, Primärschlüsseln und globalen temporären Tabellen nicht verwendet werden. Eine Tabelle, die mit LIKE und gespeicherten Sichten erstellt wurde, übernimmt Merkmale generierter Spalten nicht. Kumulative Registrierdatenbankvariablen Wenn Sie DB2WORKLOAD=SAP gesetzt haben, werden der Benutzertabellenbereich SYSTOOLSPACE und der temporäre Benutzertabellenbereich SYSTOOLSTEMPSPACE nicht automatisch erstellt. Diese Tabellenbereiche werden für Tabellen verwendet, die automatisch von den folgenden Assistenten, Dienstprogrammen oder Funktionen erstellt wurden: * Automatische Verwaltung * Designadvisor * Datenbankinformationsanzeige der Steuerzentrale * Gespeicherte Prozedur SYSINSTALLOBJECTS, falls der Eingabeparameter für den Tabellenbereich nicht angegeben ist * Gespeicherte Prozedur GET_DBSIZE_INFO Ohne die Tabellenbereiche SYSTOOLSPACE und SYSTOOLSTEMPSPACE können Sie diese Assistenten, Dienstprogramme und Funktionen nicht verwenden. Damit Sie diese Assistenten, Dienstprogramme oder Funktionen verwenden können, müssen Sie eine der folgenden Aktionen ausführen: * Erstellen Sie SYSTOOLSPACE manuell (bei Verwendung von DPF nur auf dem Katalogknoten). Beispiel: CREATE REGULAR TABLESPACE SYSTOOLSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSPACE') * Erstellen Sie mit SYSINSTALLOBJECTS für jedes der folgenden Tools Objekte, und geben Sie dabei jeweils einen gültigen Tabellenbereich an: "DB2AC", "POLICY" und "STMG_DBSIZE_INFO" Erstellen Sie nach der Ausführung mindestens einer dieser Aktionen einen temporären Benutzertabellenbereich (bei Verwendung von DPF ebenfalls nur auf dem Katalogknoten). Beispiel: CREATE USER TEMPORARY TABLESPACE SYSTOOLSTMPSPACE IN IBMCATGROUP MANAGED BY SYSTEM USING ('SYSTOOLSTMPSPACE') Sobald der Tabellenbereich SYSTOOLSPACE und der temporäre Tabellenbereich SYSTOOLSTEMPSPACE erstellt wurden, können Sie die bereits erwähnten Assistenten, Dienstprogramme oder Funktionen verwenden. Authentifizierungsaspekte für ferne Clients Mit dem Authentifizierungstyp DATA_ENCRYPT_CMP können Clients von einem Vorgängerrelease, die keine Datenverschlüsselung unterstützen, eine Verbindung zu einem Server mit Hilfe der Authentifizierung SERVER_ENCRYPT an Stelle von DATA_ENCRYPT herstellen. Diese Authentifizierung funktioniert nicht, wenn Folgendes gilt: * Die Version des Clients ist Version 7.2. * Die Version des Gateways ist Version 8 FixPak 7 oder höher. * Der Server ist Version 8 FixPak 7 oder höher. In diesem Fall kann der Client keine Verbindung zum Server herstellen. Damit die Verbindung hergestellt werden kann, müssen Sie entweder für den Client einen Upgrade auf Version 8 ausführen, oder das Gateway darf höchstens die Version 8 FixPak 6 aufweisen. Unterstützung von DIO (Direct I/O) und CIO (Concurrent I/O) DIO (Direct I/O, direkte Ein-/Ausgabe) verbessert die Leistung des Hauptspeichers, da das Caching auf Dateisystemebene umgangen wird. Dieser Vorgang reduziert den CPU-Aufwand und stellt dem Datenbankexemplar mehr Hauptspeicher zur Verfügung. CIO (Concurrent I/O, gleichzeitige Ein-/Ausgabe) schließt die Vorteile von DIO ein und entlastet darüber hinaus die serielle Verarbeitung von Schreibzugriffen. DB2 Universal Database (UDB) unterstützt DIO und CIO unter AIX sowie DIO unter HP-UX, Linux, Windows und der Solaris-Betriebsumgebung. Die Schlüsselwörter NO FILE SYSTEM CACHING und FILE SYSTEM CACHING sind Teil der SQL-Anweisungen CREATE und ALTER TABLESPACE, mit denen Sie angeben können, ob DIO oder CIO für die einzelnen Tabellenbereiche verwendet werden soll. Wenn NO FILE SYSTEM CACHING in Kraft tritt, versucht DB2 UDB wo immer es möglich ist, CIO zu verwenden. In Fällen, in denen CIO nicht unterstützt wird (z. B. wenn JFS verwendet wird), wird stattdessen DIO verwendet. Weitere Informationen finden Sie im Artikel "Improve database performance on file system containers in IBM DB2 UDB Stinger using Concurrent I/O on AIX" unter der folgenden URL-Adresse: http://www.ibm.com/developerworks/db2/library/techarticle/dm-0408lee/ Distributortechnologie und automatische Clientweiterleitung Die folgenden Informationen sind Teil des Handbuchs Systemverwaltung: Implementierung, Anhang B ("Verwenden der automatischen Clientweiterleitung"): Die automatische Clientweiterleitung in DB2 Universal Database für Linux, UNIX und Windows ermöglicht die Wiederherstellung von Clientanwendungen, nachdem die Verbindung zum Server unterbrochen wurde. Dazu wird die Datenbankverbindung vom Client zum Server automatisch wiederhergestellt, so dass die Anwendung mit einer minimalen Unterbrechung fortgesetzt werden kann. Wenn das Herstellen einer Verbindung vom Client zum Server fehlschlägt, werden die Anforderungen des Clients für erneutes Herstellen der Verbindung an eine definierte Gruppe von Systemen verteilt. Dazu wird eine Verteilungs- oder Zuteilerroutine verwendet, wie z. B. WebSphere EdgeServer. Sie können die Distributortechnologie in einer Umgebung verwenden, die der folgenden Umgebung ähnlich ist: Client --> Distributor Technology --> (DB2 Connect-Server 1 oder DB2 Connect-Server 2) --> DB2 z/OS Dabei gilt Folgendes: * Die Distributortechnologiekomponente hat den TCP/IP-Hostnamen DThostname. * Der DB2 Connect-Server 1 hat den TCP/IP-Hostnamen GWYhostname1. * Der DB2 Connect-Server 2 hat den TCP/IP-Hostnamen GWYhostname2. * Der DB2 z/OS-Server hat den TCP/IP-Hostnamen zOShostname. Der Client wird unter Verwendung von DThostname katalogisiert, damit die Verteilungstechnologie zum Zugriff auf einen der DB2 Connect-Server verwendet wird. Die verarbeitende Distributortechnologie entscheidet darüber, ob GWYhostname1 oder GWYhostname2 verwendet wird. Nachdem die Entscheidung gefällt worden ist, verfügt der Client über eine direkte Socketverbindung zu einem dieser zwei DB2 Connect-Gateways. Sobald die Socketverbindung zum ausgewählten DB2 Connect-Server hergestellt worden ist, verfügen Sie über eine typische Konnektivität zwischen Client, DB2 Connect-Server und DB2 z/OS. Gehen Sie z. B. davon aus, dass der Verteiler GWYhostname2 auswählt. Dadurch ergibt sich die folgende Umgebung: Client --> DB2 Connect-Server 2 --> DB2 z/OS Wenn ein Kommunikationsfehler aufgetreten ist, versucht der Verteiler nicht, die Verbindungen wiederherzustellen. Wenn Sie die Funktion zur automatischen Clientweiterleitung für eine Datenbank in einer solchen Umgebung aktivieren möchten, müssen Sie den alternativen Server für die zugeordnete Datenbank bzw. die zugeordneten Datenbanken auf dem DB2 Connect-Server (DB2 Connect-Server 1 oder DB2 Connect-Server 2) als Verteiler (DThostname) konfigurieren. Wenn der DB2 Connect-Server 1 aus irgendeinem Grund gesperrt wird, wird die automatische Clientweiterleitung ausgelöst, und es wird versucht, die Clientverbindung erneut herzustellen, wobei der Verteiler sowohl primärer und als auch alternativer Server ist. Mit dieser Option können Sie die Funktionalität des Verteilers mit der DB2-Funktion für automatische Clientweiterleitung kombinieren und verwalten. Wenn Sie den alternativen Server auf einen anderen Hostnamen setzen als den Hostnamen des Verteilers, wird den Clients die Funktion für automatische Clientweiterleitung weiterhin bereitgestellt. Die Clients stellen jedoch direkte Verbindungen zum definierten alternativen Server her und umgehen die Distributortechnologie, wodurch der Nutzen des Verteilers verloren geht. Die automatische Clientweiterleitung fängt die folgenden SQL-Codes ab: * SQLCODE-Wert -20157 * SQLCODE-Wert -1768 (Ursachencode = 7) Aspekte der automatischen Clientweiterleitung für die Katalogisierung auf einem DB2 Connect-Server Die folgenden beiden Aspekte sind im Hinblick auf die Verbindung zu alternativen Servern mit DB2 Connect-Server zu beachten: * Der erste Aspekt betrifft die Verwendung des DB2 Connect-Servers für die Bereitstellung des Zugriffs auf eine Hostdatenbank oder eine iSeries-Datenbank für ferne und lokale Clients. In diesen Fällen kann es in Bezug auf Informationen zur Verbindung zu alternativen Servern in einem Eintrag des Systemdatenbankverzeichnisses zu Unklarheiten kommen. Katalogisieren Sie daher zur Vermeidung von Unklarheiten zwei Einträge im Systemdatenbankverzeichnis, um dieselbe Host- oder iSeries-Datenbank darzustellen. Katalogisieren Sie einen Eintrag für ferne Clients und einen weiteren für lokale Clients. * Des weiteren ist zu beachten, dass die Informationen zu alternativen Servern, die von einem Zielserver zurückgegeben werden, nur im Cache gespeichert werden. Nach Abschluss des DB2-Prozesses gehen die Informationen im Cache und damit die Informationen zu alternativen Servern verloren. LSA-Unterstützung (Windows) Anwendungen, die im LSA-Kontext (Local System Account) ausgeführt werden, werden auf allen Windows-Plattformen außer unter Windows ME unterstützt. Unterstützung zweiteiliger Benutzer-IDs Die Anweisung CONNECT und der Befehl ATTACH unterstützen zweiteilige Benutzer-IDs. Das Qualifikationsmerkmal der SAM-kompatiblen Benutzer-ID ist der NetBIOS-Name, der maximal 15 Zeichen lang ist. Diese Funktion wird unter Windows ME nicht unterstützt. Details zur Kerberos-Authentifizierung Kerberos- und Clientprincipals Sie können den Namen des Kerberos-Serverprincipals überschreiben, der vom DB2(R) Universal Database-Server (UDB) unter den UNIX(R)- und Linux(TM)-Betriebssystemen verwendet wird. Setzen Sie die Umgebungsvariable DB2_KRB5_PRINCIPAL auf den gewünschten vollständig qualifizierten Namen des Serverprincipals. Das Exemplar muss erneut gestartet werden, da der Name des Serverprincipals nur von DB2 UDB erkannt wird, nachdem db2start ausgeführt wurde. Zusätzliche Informationen für die Kerberos-Unterstützung Voraussetzungen für Linux Die Voraussetzungen für die Kerberos-Unterstützung unter Linux sind in der Dokumentation nicht ausreichend beschrieben. Das bereitgestellte DB2-Kerberos-Sicherheits-Plug-in wird mit Red Hat Enterprise Linux Advanced Server 3 auf einem Client mit IBM Network Authentication Service (NAS) 1.4 unterstützt. zSeries- und iSeries-Kompatibilität Für Verbindungen zu zSeries und iSeries muss die Datenbank mit dem Parameter AUTHENTICATION KERBEROS katalogisiert werden. Der Parametername TARGET PRINCIPAL muss explizit angegeben werden. zSeries und iSeries unterstützen keine gegenseitige Authentifizierung. Aspekte unter Windows * Auf Grund der Art und Weise, wie Windows einige Fehler erkennt und protokolliert, führen die folgenden Bedingungen zu einem unerwarteten Fehler des Client-Sicherheits-Plug-ins (SQL30082N, rc=36): * Abgelaufenes Konto * Ungültiges Kennwort * Abgelaufenes Kennwort * Vom Administrator erzwungene Änderung des Kennworts * Inaktiviertes Konto Außerdem wird im DB2-Verwaltungsprotokoll oder in der Datei db2diag.log in allen Fällen eine Nachricht angezeigt, dass die Anmeldung fehlgeschlagen ist bzw. verweigert wurde. * Wenn der Kontoname einer Domäne auch lokal definiert wurde, schlagen Verbindungen fehl, in denen Domänenname und -kennwort explizit angeben sind, und die folgende Fehlernachricht wird angezeigt: Die lokale Sicherheitsautorität (LSA) ist nicht erreichbar. Dieser Fehler tritt auf, da Windows zuerst den lokalen Benutzer erkennt. Der Fehler kann behoben werden, indem der Benutzer in der Verbindungszeichenfolge vollständig qualifiziert wird. Beispiel: name@DOMAIN.IBM.COM * Windows-Konten dürfen in ihrem Namen nicht das Zeichen @ enthalten, da es vom DB2-Kerberos-Plug-in als Domänentrennzeichen interpretiert wird. * Wenn Sie auch mit einer anderen Plattform als Windows arbeiten, stellen Sie sicher, dass alle Konten des Windows-Domänenservers und des Windows-Clients so konfiguriert sind, dass die DES-Verschlüsselung verwendet werden kann. Wird das für den Start des DB2-Services verwendete Konto nicht so konfiguriert, dass die DES-Verschlüsselung verwendet werden kann, schlägt der DB2-Server beim Akzeptieren von Kerberos-Kontexten fehl. Speziell DB2 Universal Database schlägt mit einem unerwarteten Fehler des Server-Plug-ins fehl, und im Protokoll wird angegeben, dass die AcceptSecurityContext-API SEC_I_CONTINUE_NEEDED (0x00090312L) zurückgegeben hat. Wenn Sie bestimmen wollen, ob Windows-Konten so konfiguriert sind, dass die DES-Verschlüsselung verwendet werden kann, prüfen Sie die Kontomerkmale für Active Directory. Wenn die Kontomerkmale geändert werden, ist möglicherweise ein Neustart erforderlich. * Wenn auf dem Client und auf dem Server Windows installiert ist, kann der DB2-Service über das Konto des lokalen Systems gestartet werden. Befinden sich der Client und der Server jedoch in unterschiedlichen Domänen, schlägt die Verbindung möglicherweise fehl, und es wird die Fehlernachricht angezeigt, dass der Name des Zielprincipals ungültig ist. Der Fehler kann vermieden werden, indem der Zielprincipalname auf dem Client mit Hilfe des vollständig qualifizierten Hostnamens des Servers und des vollständig qualifizierten Domänennamens explizit im folgenden Format katalogisiert wird: host/@ Beispiel: host/myhost.domain.ibm.com@DOMAIN.IBM.COM Andernfalls müssen Sie den DB2-Service über ein gültiges Domänenkonto starten. Systemverwaltung: Optimierung Vergleich der Registrierdatenbankvariablen DB2_FORCE_FCM_BP in 32-Bit- und 64-Bit-Umgebungen Wenn Sie die Registrierdatenbankvariable DB2_FORCE_FCM_BP aktivieren, ist für andere Verwendungen, in erster Linie Datenbankpufferpools, ein gemeinsam genutztes Speichersegment weniger verfügbar. Durch das Aktivieren der Registrierdatenbankvariablen DB2_FORCE_FCM_BP wrid also die maximale Größe von Datenbankpufferpools reduziert. Beachten Sie, dass diese Reduzierung der Anzahl gemeinsam genutzter Speichersegmente nur in 32-Bit-Umgebungen problematisch ist. In einer 64-Bit-Umgebung stehen genügend gemeinsam genutzte Speichersegmente zur Verfügung. RUNSTATS nach der Erstellung einer Tabelle empfohlen Bei der Ersterstellung einer Tabelle wird die Systemkatalogstatistik auf -1 gesetzt, um anzugeben, dass für die Tabelle keine Statistik verfügbar ist. Bis zum Zusammenstellen der Statistik verwendet DB2 UDB die Standardwerte für die Kompilierung und Optimierung von SQL-Anweisungen. Die Aktualisierung der Tabellen- oder Indexstatistik schlägt möglicherweise fehl, wenn die neuen Werte mit den Standardwerten inkonsistent sind. Führen Sie daher den Befehl runstats für eine Tabelle oder einen Index aus, bevor Sie die entsprechende Statistik manuell aktualisieren. Neuer Ursachencode für SQL1169N Für die SQL-Fehlernachricht SQL1169N wurde der Ursachencode 5 eingeführt, um anzugeben, dass eine Spalte einer EXPLAIN-Tabelle zu klein ist. * Erläuterung des Ursachencodes 5: Eine Spalte einer EXPLAIN-Tabelle ist zu klein. db2diag.log enthält Nachrichten, die den Schema-, Tabellen- und Spaltennamen sowie die Spaltengröße angeben, die erforderlich ist, um die von der EXPLAIN-Funktion generierten Daten aufnehmen zu können. * Benutzeraktion: Entscheiden Sie, ob Ihre Tabelle und Datenbank die erforderliche Spaltengröße unterstützen. Ist dies der Fall, erhöhen Sie die Spaltengröße mit der Anweisung ALTER TABLE. Optimierungsstrategien für MDC-Tabellen Der folgende Text ist eine Aktualisierung für Kapitel 6, Der SQL-Compiler, des Handbuchs Systemverwaltung: Optimierung. MDC-Auslagerung kann selbst dann verwendet werden, wenn ein Satz-ID-Index Teil des Optimierungsplans und in der Anweisung DELETE eine Klausel WHERE vorhanden ist. Daher muss die Bedingung "Es wurde vom Optimierungsprogramm zum Suchen nach zu löschenden Zeilen kein Satz-ID-Index ausgewählt, solange es keine Klausel WHERE in der Anweisung DELETE gibt" in der Liste der Bedingungen entfernt werden, die für das Stattfinden einer Auslagerung und eine effizientere Art der Zeilenlöschung erfüllt sein müssen. Wenn die Ausgabe von db2expln die Wortfolge "Cell Delete" enthält, ist dies ein weiterer Hinweis auf die Aktivierung der MDC-Auslagerung. db2exfmt zeigt diese Informationen nicht an. Der folgende Text ist eine Aktualisierung für Anhang A. DB2-Registriervariablen und DB2-Umgebungsvariablen: In der Beschreibung von DB2_MDC_ROLLOUT muss die Bedingung "Es wurde vom Optimierungsprogramm zum Suchen nach zu löschenden Zeilen kein Satz-ID-Index ausgewählt, solange es keine Klausel WHERE in der Anweisung DELETE gibt" aus der Liste entfernt werden. Erläuterung zur Beschreibung der Konfigurationsparameter NEWLOGPATH, MIRRORPATH und OVERFLOWLOGPATH Wenn Sie den Wert des Konfigurationsparameters newlogpath, mirrorpath oder overflowlogpath in einer DB2 UDB Enterprise Server Edition-Umgebung aktualisieren, wird die Knotennummer unabhängig von der Anzahl Knoten im System an den Pfadnamen angehängt. Dies gilt für Einzelpartitions- und Mehrfachpartitionssysteme in einer DB2 UDB Enterprise Server Edition-Umgebung. Standardwert für DB2_COLLECT_TS_REC_INFO Der Standardwert für DB2_COLLECT_TS_REC_INFO ist ON. In DB2 UDB Version 8.1 FixPak 7 wurde der Standardwert für die Registrierdatenbankvariable DB2_COLLECT_TS_REC_INFO in ON geändert. In der aktuellen Dokumentation wird als Standardwert für diese Variable fälschlicherweise OFF angegeben. Dienstprogramm Governor Ein Governor-Exemplar besteht aus einem Front-End-Dienstprogramm und mindestens einem Dämon. Jedes Governor-Exemplar, das Sie starten, ist genau einem Exemplar des Datenbankmanagers zugeordnet. Wenn Sie den Governor starten, wird auf jeder Partition einer partitionierten Datenbank standardmäßig ein Governor-Dämon gestartet. Sie können jedoch angeben, dass auf einer einzelnen zu überwachenden Partition ein Dämon gestartet werden soll. Anmerkungen: 1. Wenn der Governor aktiv ist, können sich dessen Momentaufnahmeanforderungen auf die Leistung des Datenbankmanagers auswirken. Erhöhen Sie zur Leistungssteigerung das Abfrageintervall des Governors, damit seine CPU-Belastung reduziert wird. 2. Governor-Dämonen setzen bei der Ausführung lokale Momentaufnahmen an das lokale Exemplar ab. Daher werden alle Regeln, die setlimit-Klauseln enthalten, auf Ausgaben von lokalen Momentaufnahmen statt auf das zusammengefasste Ergebnis aus globalen Momentaufnahmen angewendet. Jeder Governor-Dämon sammelt Daten zu den Anwendungen, die für die Datenbank ausgeführt werden. Anschließend überprüft der Governor-Dämon diese Daten anhand von Regeln, die Sie in der Governor-Konfigurationsdatei für diese Datenbank angeben. Auswählen einer Methode zur Tabellenreorganisation Wenn Sie die Inplace-Tabellenreorganisation (statt der herkömmlichen Tabellenreorganisation) in Betracht ziehen, sollten Sie beachten, dass die Inplace-Tabellenreorganisation mehr Protokollspeicherbereich erfordert. Da die Inplace-Tabellenreorganisation ihre Aktivitäten protokolliert, um nach einem unvorhergesehenen Ausfall eine Wiederherstellung ausführen zu können, wird für diesen Reorganisationstyp mehr Protokollspeicherbereich benötigt als für die herkömmliche Reorganisation. Die Inplace-Tabellenreorganisation kann unter Umständen als Protokollspeicherbereich ein Vielfaches der Größe der reorganisierten Tabelle erfordern. Die Größe des erforderlichen Speicherbereichs hängt von der Anzahl der verschobenen Zeilen sowie von der Anzahl und Größe der Indizes für die Tabelle ab. Empfehlung: Wählen Sie die Inplace-Tabellenreorganisation für Operationen aus, die mit minimalen Wartungszeiten rund um die Uhr ausgeführt werden. Während einer Onlinetabellenreorganisation einer DMS-Tabelle können Sie eine Onlinesicherung für einen Tabellenbereich aufrufen, in dem sich die Tabelle befindet. Während der Abschneidephase können für die Reorganisationsoperation Wartestatus für Sperren (Lock Waits) auftreten. Detaillierte Informationen zur Ausführung dieser Tabellenreorganisationsmethoden finden Sie in den Beschreibungen zur Syntax von REORG TABLE. Unterstützung großer Seiten für FCM-Speicher (AIX 5L, 64 Bit) Unter AIX(R) 5L, 64 Bit, unterstützt die Registrierdatenbankvariable DB2_LARGE_PAGE_MEM nun das Schlüsselwort FCM. Unter AIX(R) 5L(TM), 64 Bit, befindet sich FCM-Speicher standardmäßig in der DBMS-Speichergruppe. Wenn jedoch die Registrierdatenbankvariable DB2_FORCE_FCM_BP aktiviert ist, befindet sich der FCM-Speicher in seiner eigenen Speichergruppe. Unter AIX 5L(TM), 64 Bit, unterstützt die Registrierdatenbankvariable DB2_LARGE_PAGE_MEM die Angabe der DBMS-Speichergruppe. Wenn sich FCM-Speicher in der DBMS-Speichergruppe befindet und die Unterstützung großer Seiten für diese Speichergruppe aktiviert ist, verfügt der FCM-Speicher über größere Seiten. Wenn FCM-Speicher sich in einer eigenen Speichergruppe befindet, muss dem Wert der Registrierdatenbankvariablen DB2_LARGE_PAGE_MEM das Schlüsselwort FCM hinzugefügt werden, damit große Seiten für FCM-Speicher unterstützt werden. Registrierdatenbankvariable DB2_RESOURCE_POLICY akzeptiert ein neues Element Ab DB2 Universal Database(TM) (UDB) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) akzeptiert die Konfigurationsdatei, die von der Registrierdatenbankvariablen DB2_RESOURCE_POLICY angegeben wird, ein SCHEDULING_POLICY-Element. Das SCHEDULING_POLICY-Element kann einigen Plattformen zur Auswahl folgender Elemente verwendet werden: * Planungsrichtlinie des Betriebssystems, die vom DB2 UDB-Server verwendet wird Anmerkung: Die Funktionalität zum Festlegen einer Planungsrichtlinie für das Betriebssystems gilt auch für DB2 für AIX (R). Früher war sie nur für DB2 UDB für Windows(R) unter Verwendung der Registrierdatenbankvariablen DB2NTPRICLASS verfügbar. * Betriebssystemprioritäten, die von einzelnen DB2-Serveragenten verwendet werden Die Registrierdatenbankvariablen DB2PRIORITIES und DB2NTPRICLASS können einzeln zum Steuern der Planungsrichtlinie des Betriebssystems und zum Festlegen von DB2-Agentenprioritäten verwendet werden. Durch die Angabe eines SCHEDULING_POLICY-Elements in der Konfigurationsdatei für die Ressourcenrichtlinie können Sie die Planungsrichtlinie und die zugehörigen Agentenprioritäten an einer Stelle festlegen. Beispiel 1 Auswahl der AIX-Planungsrichtlinie SCHED_FIFO2 mit gleichzeitiger Zuordnung einer höheren Priorität für die Prozesse der DB2-Ein- und -Ausgabeprogramme für Protokolle: SCHED_FIFO2 60 db2loggr 56 db2loggw 56 Beispiel 2 Ersatz für DB2NTPRICLASS=H unter Windows. HIGH_PRIORITY_CLASS Neue Systemumgebungsvariablen (Linux) In FixPak 8 wurden die Systemumgebungsvariablen DB2_MAPPED_BASE und DB2DBMSADDR hinzugefügt. Nur fortgeschrittene Benutzer sollten diese Registrierdatenbankvariablen verwenden. DB2_MAPPED_BASE Variablenname DB2_MAPPED_BASE Werte 0 oder (hexadezimale) virtuelle Adresse im 31-Bit- und 32-Bit-Adressbereich oder NULL (nicht gesetzt) Betriebssysteme Linux auf x86 und Linux auf zSeries (31 Bit) Beschreibung Mit der Registrierdatenbankvariablen DB2_MAPPED_BASE können Sie den verfügbaren zusammenhängenden virtuellen Adressraum für einen Prozess von DB2 Universal Database (UDB) erhöhen, indem Sie die Anschlussadresse der gemeinsam genutzten Bibliotheken für den jeweiligen Prozess verlagern. Der zusammenhängende virtuelle Adressraum ist wichtig, um die Größe des für die gemeinsame Datenbanknutzung verfügbaren Speichers für DB2 UDB zu maximieren. Diese Variable tritt nur bei Verteilungen in Kraft, für die sich im Dateisystem proc die Datei mapped_base im Verzeichnis für die Prozessidentifikation befindet. Wenn diese Variable nicht gesetzt ist, versucht DB2 UDB, die gemeinsam genutzten Bibliotheken an die virtuelle Adresse 0x10000000 zu verlagern. Die Registrierdatenbankvariable kann auch auf eine beliebige virtuelle Adresse (hexadezimal) im Bereich des 31- und 32-Bit-Adressraums gesetzt werden. Anmerkung: Eine falsche Adresse kann schwer wiegende Probleme bei DB2 UDB verursachen, die vom Fehlschlagen des Starts von DB2 UDB bis zum Fehlschlagen der Verbindung zur Datenbank reichen können. Eine falsche Adresse ist eine Adresse, die einen Konflikt mit einem Adressbereich verursacht, der bereits verwendet wird oder der für andere Daten oder Programme reserviert ist. Dieses Problem können Sie beheben, indem Sie die Variable DB2_MAPPED_BASE mit dem folgenden Befehl auf NULL setzen: db2set DB2_MAPPED_BASE= Die folgende Nachricht kann mehrmals in der Datei db2diag.log vorkommen, da diese Änderung für jeden logischen Knoten einmal erforderlich ist: ADM0506I DB2 hat den Kernelparameter "mapped_base" automatisch von "0x40000000(hex) 1073741824(dec)" auf den empfohlenen Wert "0x10000000(hex) 268435456(dec)" aktualisiert. Diese Nachricht wird nur angezeigt, wenn das Setzen der Registrierdatenbankvariablen erfolgreich war, und sie enthält die Adresse, an die die gemeinsam genutzten Bibliotheken verlagert werden. DB2DBMSADDR Variablenname DB2DBMSADDR Werte Virtuelle Adressen im Bereich 0x09000000 bis 0xB0000000 in Inkrementen von 0x10000 Betriebssysteme Linux auf x86 und Linux auf zSeries (31 Bit) Beschreibung Gibt die Standardadresse des gemeinsam benutzten Datenbankspeichers im Hexadezimalformat an. Anmerkung: Eine falsche Adresse kann schwer wiegende Probleme bei DB2 UDB verursachen, die vom Fehlschlagen des Starts von DB2 UDB bis zum Fehlschlagen der Verbindung zur Datenbank reichen können. Ein Beispiel für eine falsche Adresse ist eine Adresse, die einen Konflikt mit einem Speicherbereich verursacht, der bereits verwendet wird oder der für andere Daten oder Programme reserviert ist. Dieses Problem können Sie beheben, indem Sie die Variable DB2DBMSADDR mit dem folgenden Befehl auf NULL setzen: db2set DB2DBMSADDR= Diese Variable können Sie in Verbindung mit DB2_MAPPED_BASE oder alleine setzen, um die Adressraumbelegung von DB2 UDB-Prozessen zu optimieren. Diese Variable ändert die Position des gemeinsam genutzten Speichers für das Exemplar von der aktuellen Position bei der virtuellen Adresse 0x20000000 in den neu angegebenen Wert. Neue Kommunikationsvariable der Registrierdatenbank In Version 8.2 wurde die Registrierdatenbankvariable DB2TCP_CLIENT_RCVTIMEOUT hinzugefügt. Tabelle 12. Kommunikationsvariablen +---------------------------+-------------+---------------------------+ | Variablenname | Betriebssys | Werte | | | teme | | +---------------------------------------------------------------------+ | Beschreibung | +---------------------------+-------------+---------------------------+ | DB2TCP_CLIENT_RCVTIMEOUT | Alle | Standard=0 (nicht | | | | definiert) | | | | Werte: 0 bis 32767 | | | | Sekunden | +---------------------------------------------------------------------+ | Gibt den Zeitraum (in Sekunden) an, den ein Client beim Empfang | | über TCP/IP auf Daten wartet. | | Wenn für die Registrierdatenbankvariable kein Wert festgelegt oder | | 0 angegeben wurde, ist kein Zeitlimit vorhanden. Wenn beim Empfang | | über TCP/IP vor Ablauf des Zeitlimits Daten zurückgegeben werden, | | wird die Anwendung wie üblich weiter ausgeführt. Läuft das | | Zeitlimit ab, bevor Daten zurückgegeben wurden, wird die Verbindung | | abgebrochen. | | | | Anmerkung: Diese Registrierdatenbankvariable gilt nur für den | | DB2-Client und die Clientseite des DB2-Gateways. Sie gilt nicht für | | den DB2-Server. | +---------------------------------------------------------------------+ Neue Leistungsvariable In Version 8.2 wurde die Leistungsvariable DB2_LARGE_PAGE_MEM hinzugefügt. Tabelle 13. Leistungsvariablen +---------------------------+-------------+---------------------------+ | Variablenname | Betriebssys | Werte | | | teme | | +---------------------------------------------------------------------+ | Beschreibung | +---------------------------+-------------+---------------------------+ | DB2_LARGE_PAGE_MEM | Nur AIX 5.x | Standardwert=NULL | | | (64 Bit) | Geben Sie mit Hilfe eines | | | | Sterns (*) an, dass alle | | | Linux | gültigen Speicherbereiche | | | | große Seitenspeicher | | | | verwenden sollen, oder | | | | geben Sie eine durch | | | | Kommas getrennte Liste | | | | spezifischer | | | | Speicherbereiche an, die | | | | den großen Seitenspeicher | | | | verwenden sollen. Die | | | | verfügbaren Bereiche | | | | variieren je nach dem | | | | verwendeten | | | | Betriebssystem. Unter AIX | | | | 5.x (64 Bit) können die | | | | folgenden Bereiche | | | | angegeben werden: DB, | | | | DBMS oder PRIVATE. Unter | | | | Linux kann der folgende | | | | Bereich angegeben werden: | | | | DB. | +---------------------------------------------------------------------+ | Der große Seitenspeicher wird lediglich für DB2 Universal Database | | (UDB) für AIX 5L (64-Bit-Edition) und DB2 UDB für Linux | | unterstützt. | | Die Registrierdatenbankvariable DB2_LARGE_PAGE_MEM wird verwendet, | | um unter AIX 5.x oder für eine beliebige Linux-Architektur mit der | | entsprechenden Kernelunterstützung die Unterstützung für große | | Seiten zu aktivieren. Sie ersetzt die Registrierdatenbankvariable | | DB2_LGPAGE_BP, die lediglich zur Aktivierung des großen | | Seitenspeichers für den gemeinsam genutzten | | Datenbankspeicherbereich verwendet wird. Dieser kann jetzt durch | | die Angabe von DB2_LARGE_PAGE_MEM=DB aktiviert werden. In einigen | | Dokumentationen wird erläutert, dass große Seiten mit der | | Registrierdatenbankvariablen DB2_LGPAGE_BP ermöglicht werden. Dies | | entspricht der Einstellung DB2_LARGE_PAGE_MEM=DB. | | Die Verwendung großer Seiten dient hauptsächlich zur | | Leistungsverbesserung hochleistungsfähiger | | Datenverarbeitungsanwendungen. Bei Anwendungen, die einen | | intensiven Speicherzugriff erfordern und große Mengen an virtuellem | | Speicher verwenden, kann die Verwendung großer Seiten zu einer | | Leistungsverbesserung führen. Um DB2 UDB für die Verwendung großer | | Seiten zu aktivieren, müssen Sie zunächst das Betriebssystem für | | die Verwendung solcher Seiten konfigurieren. | | Durch die Aktivierung großer privater Seiten nimmt die DB2 | | UDB-Speicherbelegung deutlich zu, da jeder DB2 UDB-Agent mindestens | | eine große Seite (16 MB) an physischem Speicher belegt. Zum | | Aktivieren großer Seiten für privaten Agentenspeicher auf | | 64-Bit-DB2 UDB für AIX (Einstellung DB2_LARGE_PAGE_MEM=PRIVATE) | | müssen große Seiten auf dem Betriebssystem konfiguriert sein. | | Außerdem müssen die folgenden Voraussetzungen gegeben sein: | | * Der Exemplareigner muss die Funktionen CAP_BYPASS_RAC_VMM und | | CAP_PROPOGATE aufweisen. | | * Der Kernel muss Schnittstellen unterstützen, mit denen ein | | Prozess die zugehörige Seitengröße während der Ausführung | | modifizieren kann. . | | Unter DB2 UDB für AIX (64 Bit) reduziert diese Variable die Größe | | des gemeinsamen Speichersegments, das den Datenbankspeicher | | unterstützt, auf den Mindestbedarf. Standardmäßig wird ein | | 64-GB-Segment erstellt. Weitere Informationen hierzu finden Sie | | unter dem Konfigurationsparameter für die Größe des gemeinsamen | | Datenbankspeichers. Dadurch wird vermieden, dass mehr gemeinsam | | genutzter Speicher im Arbeitsspeicher belassen wird als | | voraussichtlich verwendet wird. | | Die Aktivierung dieser Variablen schränkt die Möglichkeit ein, die | | Konfiguration für den gesamten gemeinsamen Datenbankspeicher | | dynamisch zu erhöhen (z. B. Vergrößerung der Pufferpools). | | Unter Linux muss als zusätzliche Voraussetzung die Bibliothek | | libcap.so verfügbar sein. Diese Bibliothek muss installiert sein, | | damit diese Option funktioniert. Wenn die Option aktiviert wird und | | die Bibliothek nicht im System vorhanden ist, inaktiviert DB2 UDB | | die großen Kernelseiten und setzt die Verarbeitung wie zuvor fort. | | Um unter Linux zu prüfen, ob große Kernelseiten verfügbar sind, | | können Sie den folgenden Befehl absetzen: | | cat /proc/meminfo | | | | Wenn sie verfügbar sind, sollten die drei folgenden Zeilen | | angezeigt werden (mit anderen Werten, je nach Größe des auf Ihrer | | Maschine konfigurierten Speichers): | | HugePages_Total: 200 | | HugePages_Free: 200 | | Hugepagesize: 16384 KB | | | | Wenn diese Zeilen nicht angezeigt werden oder HugePages_Total den | | Wert 0 hat, ist eine Konfiguration des Betriebssystems oder des | | Kernels erforderlich. | +---------------------------------------------------------------------+ Variablen des SQL-Compilers Die folgende Aktualisierung gilt für das Thema "Variablen des SQL-Compilers" im Anhang A "Registrierdatenbank- und Umgebungsvariablen von DB2" des Handbuchs Systemverwaltung: Optimierung: Wenn mindestens eine der beiden DB2-Compilervariablen DB2_MINIMIZE_LISTPREFETCH und DB2_INLIST_TO_NLJN auf ON gesetzt ist, bleibt sie selbst dann aktiv, wenn REOPT(ONCE) angegeben ist. Aktualisierung von Konfigurationsparametern Im Folgenden finden Sie die Aktualisierungen der Dokumentation zu den Konfigurationsparametern: authentication - Authentifizierungstyp Der Konfigurationsparameter für den Authentifizierungstyp (authentication) des Datenbankmanagers akzeptiert außerdem die folgenden Werte: * DATA_ENCRYPT Der Server akzeptiert verschlüsselte SERVER-Authentifizierungsschemata und die Verschlüsselung von Benutzerdaten. Die Authentifizierung funktioniert genau wie für SERVER_ENCRYPT. Die folgenden Benutzerdaten werden bei Verwendung dieses Authentifizierungstyps verschlüsselt: * SQL-Anweisungen * Daten von SQL-Programmvariablen * Ausgabedaten aus der Serververarbeitung einer SQL-Anweisung, einschließlich einer Beschreibung der Daten * Einige oder alle Antwortgruppendaten, die aus einer Abfrage resultieren * LOB-Datenströme (große Objekte) * SQLDA-Deskriptoren * DATA_ENCRYPT_CMP Der Server akzeptiert verschlüsselte SERVER-Authentifizierungsschemata und die Verschlüsselung von Benutzerdaten. Darüber hinaus bietet dieser Authentifizierungstyp Kompatibilität mit Produkten früherer Versionen, die den Authentifizierungstyp DATA_ENCRYPT nicht unterstützen. Diese Produkte erhalten die Möglichkeit, die Verbindung mit dem Authentifizierungstyp SERVER_ENCRYPT und ohne Verschlüsselung von Benutzerdaten herzustellen. Produkte, die den neuen Authentifizierungstyp unterstützen, müssen ihn verwenden. Dieser Authentifizierungstyp ist nur in der Konfigurationsdatei des Datenbankmanagers des Servers, jedoch nicht im Befehl CATALOG DATABASE gültig. util_impact_lim - Auslastungswirkung durch gedrosselte Dienstprogramme Ab DB2 Universal Database Version 8.2 wird der Standardwert des Konfigurationsparameters Auslastungswirkung durch gedrosselte Dienstprogramme (util_impact_lim) für den Datenbankmanager von 100 in 10 geändert. sysadm_group, sysmaint_group, sysctrl_group, sysmon_group Die folgenden Konfigurationsparameter für den Datenbankmanager akzeptieren auf allen Plattformen bis zu 30 Byte lange Gruppennamen: * Berechtigungsgruppenname für Systemverwaltung (sysadm_group) * Berechtigungsgruppenname für Systemwartung (sysmaint_group) * Berechtigungsgruppenname für Systemsteuerung (sysctrl_group) * Berechtigungsgruppenname für Systemmonitor (sysmon_group) Die Tabelle unter der Übersicht über die Konfigurationsparameter des Datenbankmanagers (Handbuch Systemverwaltung: Optimierung) enthält falsche Datentypen zu diesen Konfigurationsparametern für den Datenbankmanager. Der richtige Wert muss in allen Fällen char(30) lauten. estore_seg_sz - Segmentgröße für erweiterten Speicher Die Maximalgröße für den Datenbankkonfigurationsparameter Segmentgröße für erweiterten Speicher (estore_seg_size) auf Windows-Plattforman lautet 16.777.216. hadr_timeout - HADR-Zeitlimitwert Die richtige Obergrenze für den Datenbankkonfigurationsparameter HADR-Zeitlimitwert (hadr_timeout) lautet 4.294.967.295. locklist - Maximaler Speicher für Sperrenliste In der Dokumentation zum Datenbankkonfigurationsparameter Max. Speicher für Sperrenliste (locklist) steht, dass der Maximalwert für Windows-64-Bit- und 32-Bit-Server, die nur Server für lokale Clients sind, 60.000 beträgt. Dieser Wert ist falsch. Er muss 524.288 lauten. num_db_backups - Anzahl der Datenbanksicherungen Der Wertebereich für den Datenbankkonfigurationsparameter Anzahl der Datenbanksicherungen (num_db_backups) ist falsch. Der richtige Bereich ist 0 - 32.767. Datei SQLDBCONF für Datenbankkonfigurationsparameter Nach der Migration von Version 8.1 auf DB2 Universal Database (UDB) Version 8.2 verwendet DB2 UDB eine neue 16 KB große Datei für Datenbankkonfigurationsparameter mit dem Namen SQLDBCONF. (In Version 8.1 war die Datei für Datenbankkonfigurationsparameter nur 4 KB groß und hieß SQLDBCON.) Änderung des Standardwerts für DB2_HASH_JOIN Ab Version 8.1 ist die Registrierdatenbankvariable DB2_HASH_JOIN standardmäßig auf ON gesetzt. Die Hashverknüpfungsvariable DB2_HASH_JOIN sollte verwendet werden, muss jedoch optimiert werden, um die maximale Leistung zu erzielen. Die Leistung der Hashverknüpfung ist am besten, wenn Sie Hashschleifen und Überläufe auf den Plattenspeicher vermeiden können. Zur Optimierung der Leistung von Hashverknüpfungen schätzen Sie die maximale Speichergröße ab, die für den Parameter sheapthres verfügbar ist, und optimieren anschließend den Parameter sortheap. Erhöhen Sie den Wert dieses Parameters, bis Sie möglichst viele Hashschleifen und Überläufe auf den Plattenspeicher vermeiden, jedoch nicht den durch den Parameter sheapthres definierten Grenzwert erreichen. Weitere Informationen finden Sie im Thema "Verknüpfungsmethoden" im Handbuch Systemverwaltung: Optimierung. Registrierdatenbankvariable DB2NTNOCACHE wird ersetzt Die zuvor durch die Variable DB2NTNOCACHE erreichte Funktionalität kann auf Tabellenbereichsebene erreicht werden, indem in der Anweisung CREATE TABLESPACE oder ALTER TABLESPACE die Klausel NO FILE SYSTEM CACHING angegeben wird. Weitere Informationen hierzu finden Sie im Handbuch SQL Reference. Die Registrierdatenbankvariable DB2NTNOCACHE wird in einem zukünftigen Release entfernt. EXPLAIN-Tabellen und Organisieren von EXPLAIN-Informationen EXPLAIN-Tabellen können für mehrere Benutzer gemeinsame Daten enthalten. Die EXPLAIN-Tabellen können jedoch auch für nur einen Benutzer definiert werden. Außerdem können Aliasnamen für jeden weiteren Benutzer definiert werden, der denselben Namen verwendet, um auf die definierten Tabellen zu verweisen. Die EXPLAIN-Tabellen können auch unter dem Schema SYSTOOLS definiert werden. Die EXPLAIN-Funktion verwendet standardmäßig das Schema SYSTOOLS, wenn keine anderen EXPLAIN-Tabellen oder -Aliasnamen unter der Sitzungs-ID des Benutzers für dynamisches SQL oder unter der Berechtigungs-ID der Anweisung für statisches SQL gefunden werden. Jeder Benutzer, der auf die gemeinsamen EXPLAIN-Tabellen zugreift, muss das Zugriffsrecht INSERT zum Einfügen für diese Tabellen aufweisen. Der Lesezugriff für die allgemeinen EXPLAIN-Tabellen muss ebenfalls eingeschränkt werden, speziell für Benutzer, die die EXPLAIN-Informationen analysieren. Richtlinien zur Erfassung von EXPLAIN-Informationen EXPLAIN-Daten werden bei der Kompilierung einer SQL-Anweisung erfasst, wenn Sie dies anfordern. Bei der Anforderung von EXPLAIN-Daten sollten Sie berücksichtigen, wie die erfassten Informationen später verwendet werden sollen. Erfassen von Informationen in EXPLAIN-Tabellen * Dynamische SQL-Anweisungen: Informationen für EXPLAIN-Tabellen werden in folgenden Fällen erfasst: * Das Sonderregister CURRENT EXPLAIN MODE enthält einen der folgenden Werte: * YES: Der SQL-Compiler erfasst EXPLAIN-Daten und führt die SQL-Anweisung aus. * EXPLAIN: Der SQL-Compiler erfasst EXPLAIN-Daten, führt die SQL-Anweisung jedoch nicht aus. * RECOMMEND INDEXES: Der SQL-Compiler erfasst EXPLAIN-Daten, und die Daten zu den empfohlenen Indizes werden in der Tabelle ADVISE_INDEX gespeichert, jedoch wird die SQL-Anweisung nicht ausgeführt. * EVALUATE INDEXES: Der SQL-Compiler verwendet die vom Benutzer in die Tabelle ADVISE_INDEX eingefügten Indizes zur Beurteilung. Im Modus EVALUATE INDEXES werden alle dynamischen Anweisungen mit EXPLAIN so bearbeitet, als wären diese virtuellen Indizes verfügbar. Der SQL-Compiler wählt in diesem Fall die virtuellen Indizes aus, wenn sie die Leistung der Anweisungen verbessern. Ansonsten werden die Indizes ignoriert. Durch eine Analyse der EXPLAIN-Ergebnisse können Sie feststellen, ob die vorgeschlagenen Indizes nützlich wären. * REOPT: Der SQL-Compiler erfasst EXPLAIN-Daten für statische oder dynamische SQL-Anweisungen bei der Reoptimierung der Anweisung während der Ausführung, wenn für die Hostvariablen, Sonderregister oder Parametermarken tatsächliche Werte zur Verfügung stehen. * Die Option EXPLAIN ALL wurde im Befehl BIND oder PREP angegeben. Der SQL-Compiler erfasst EXPLAIN-Daten für dynamisches SQL bei der Ausführung, auch wenn das Sonderregister CURRENT EXPLAIN MODE auf den Wert NO gesetzt ist. Die SQL-Anweisung wird ausgeführt und gibt die Abfrageergebnisse zurück. Zusätzliche Rückkehrcodes von der API db2CfgGet, Parameter collate_info Der Parameter für Sortierinformationen kann nur mit der API db2CfgGet angezeigt werden. Er kann nicht mit Hilfe des Befehlszeilenprozessors oder der Steuerzentrale angezeigt werden. Konfigurationstyp Datenbank Parametertyp Informativ Dieser Parameter enthält 260 Byte mit Informationen zur Sortierfolge der Datenbank. Die ersten 256 Byte geben die Sortierfolge der Datenbank an, wobei Byte "n" die Sortierwertigkeit des Codepunkts enthält, dessen zu Grunde liegende dezimale Darstellung "n" in der Codepage der Datenbank ist. Die letzten 4 Byte enthalten interne Informationen zum Typ der Sortierfolge. Bei den letzten vier Byte von collate_info handelt es sich um eine ganze Zahl. Die ganze Zahl erkennt die Endian-Folge der Plattform. Die möglichen Werte sind: * 0 - Die Sortierfolge enthält nicht eindeutige Wertigkeiten. * 1 - Die Sortierfolge enthält ausschließlich eindeutige Wertigkeiten. * 2 - Die Sortierfolge ist die Identitätssortierfolge, nach der Zeichenfolgen Byte für Byte verglichen werden. * 3 - Die Sortierfolge lautet NLSCHAR und wird für das Sortieren von Zeichen in der Datenbank für Thailändisch TIS620-1 (Codepage 874) verwendet. * 4 - Die Sortierfolge lautet IDENTITY_16BIT und implementiert den Algorithmus "CESU-8 Compatibility Encoding Scheme for UTF-16: 8-Bit", wie er im Unicode Technical Report 26 spezifiziert wird, der auf der Webseite des Unicode Technical Consortium (http://www.unicode.org) zur Verfügung steht. * X'8001' - Die Sortierfolge lautet UCA400_NO und implementiert den UCA-Algorithmus (Unicode Collation Algorithm) auf der Grundlage von Unicode Standard Version 4.00 mit implizit aktivierter Normalisierung. * X'8002' - Die Sortierfolge lautet UCA400_LTH und implementiert den UCA-Algorithmus (Unicode Collation Algorithm) auf der Grundlage von Unicode Standard Version 4.00. Sie sortiert alle Zeichen der thailändischen Sprache in der Reihenfolge des Royal Thai Dictionary. * X'8003' - Die Sortierfolge lautet UCA400_LSK und implementiert den UCA-Algorithmus (Unicode Collation Algorithm) auf der Grundlage von Unicode Standard Version 4.00. Sie sortiert alle Zeichen der slowakischen Sprache in der richtigen Reihenfolge. Wenn Sie diese internen Informationen zum Typ der Sortierfolge verwenden, müssen Sie eine Bytefolgeumkehrung in Betracht ziehen, wenn Informationen zu einer Datenbank auf einer anderen Plattform abgerufen werden. Sie können die Sortierfolge bei der Erstellung der Datenbank angeben. Automatische Einstellung der Standardgröße für den Vorablesezugriff und der Standardwerte für Aktualisierungen Ab DB2 Universal Database (UDB) Version 8.2 können Sie als Vorablesezugriffsgröße für einen Tabellenbereich die Einstellung AUTOMATIC verwenden. DB2 UDB aktualisiert automatisch die Vorablesezugriffsgröße, sobald sich die Anzahl der Behälter für den Tabellenbereich ändert. Die Syntax der Registrierdatenbankvariablen DB2_PARALLEL_IO wird so erweitert, dass Behälter mit unterschiedlichen Merkmalen für die E/A-Parallelität erkannt werden. Bei der erweiterten Syntax können Behälter für unterschiedliche Tabellenbereiche unterschiedliche Merkmale für die E/A-Parallelität aufweisen. Die Merkmale für die E/A-Parallelität der einzelnen Tabellenbereiche werden verwendet, wenn für den Tabellenbereich als Vorablesezugriffsgröße AUTOMATIC angegeben ist. Wenn die Registrierdatenbankvariable DB2_PARALLEL_IO aktiviert ist, die erweiterte Syntax zur Angabe besonderer Merkmale für die E/A-Parallelität für Tabellenbereiche jedoch nicht verwendet wird, wird die Standardstufe für die Parallelität vorausgesetzt. Die Standardstufe ist RAID 5 (6+1). Die vom Optimierungsprogramm verwendeten Daten für die Vorablesezugriffsgröße werden nur aktualisiert, wenn Sie eine ALTER TABLESPACE-Anweisung absetzen, die die Vorablesezugriffsgröße eines Tabellenbereichs oder die Anzahl der Behälter (mit ADD/DROP/BEGIN NEW STRIPE SET/ADD TO NEW STRIPE SET) ändert. Wenn sich die Anzahl physischer Festplatten pro Behälter in den Registry-Einstellungen ändert, muss die Anweisung ALTER TABLESPACE PREFETCHSIZE AUTOMATIC abgesetzt werden, um die Daten des Optimierungsprogramms zu aktualisieren (es sei denn, eine ALTER TABLESPACE-Anweisung zur Aktualisierung der Daten des Optimierungsprogramms wurde bereits abgesetzt). Wenn ein Tabellenbereich umgeleitet oder wiederhergestellt wird, so dass eine andere Anzahl von Behältern verwendet wird, sollten Sie die Daten des Optimierungsprogramms aktualisieren, indem Sie eine Anweisung ALTER TABLESPACE PREFETCHSIZE AUTOMATIC absetzen. Wenn in einem Tabellenbereich mehrere Stripe-Sets vorhanden sind, wird der Stripe-Set mit der maximalen Anzahl von Behältern zur Berechnung der Vorablesezugriffsgröße verwendet. Wenn die berechnete Vorablesezugriffsgröße die Maximalgröße (32.767 Seiten) überschreitet, wird als Vorablesezugriffsgröße das größte Vielfache der Behälteranzahl verwendet, das kleiner als die Maximalgröße ist. Wenn ein Tabellenbereich in einer DB2 UDB Enterprise Server Edition-Umgebung die Einstellung AUTOMATIC für die Vorablesezugriffsgröße verwendet, kann die Vorablesezugriffsgröße auf unterschiedlichen Datenbankpartitionen voneinander abweichen. Diese Situation kann eintreten, da unterschiedliche Datenbankpartitionen eine unterschiedliche Anzahl von Behältern aufweisen können, die zur Berechnung der Vorablesezugriffsgröße verwendet werden. Zum Generieren des Abfragezugriffsplans verwendet das Optimierungsprogramm die Vorablesezugriffsgröße aus der ersten Partition innerhalb einer Datenbankpartitionsgruppe. Systemverwaltung: Konzept Bereichsclustertabelle Eine Bereichsclustertabelle kann nicht in einer Datenbank erstellt werden, die mehr als eine Partition hat. Konzept des Katalogtabellenbereichs Bei der Erstellung einer Datenbank werden drei Tabellenbereiche definiert. Dazu gehört der Tabellenbereich SYSCATSPACE für die Systemkatalogtabellen. Die Seitengröße, die als Standardeinstellung für alle Tabellenbereiche gilt, wird bei der Erstellung der Datenbank festgelegt. Bei Auswahl einer Seitengröße von mehr als 4096 bzw. 4 KB wird die Seitengröße für die Katalogtabellen auf eine Zeilengröße beschränkt, die sie haben würde, wenn der Katalogtabellenbereich eine Seitengröße von 4 KB hätte. Die Standardseitengröße der Datenbank wird als informativer Datenbankkonfigurationsparameter mit dem Namen pagesize gespeichert. Unterstützte Gebietscodes und Codepages Im Anhang B "Unterstützung in der Landessprache" des Handbuchs Systemverwaltung: Konzept finden Sie im Thema "Unterstützte Gebietscodes und Codepages" Tabellen für die einzelnen Gebiete. Für zwei Tabellen ist eine Aktualisierung erforderlich: China (VRC), Gebietskennung: CN Die Codepage für die GBK-Zeile für Linux in der Tabelle "China (VRC), Gebietskennung: CN" muss von 1383 in 1386 geändert werden. Die Zeile sollte also wie folgt lauten: 1386 D-4 GBK 86 zh_CN.GBK Linux(R) Japan, Gebietskennung: JP Die Tabelle für "Japan, Gebietskennung: JP" wurde überarbeitet. Der folgende Name für die Ländereinstellung muss entfernt werden: 954 D-1 eucJP 81 japanese Solaris Die überarbeitete Tabelle sieht wie folgt aus: Tabelle 14. Japan, Gebietskennung: JP +----------+----------+----------+----------+---------------+---------+ | Codepage | Gruppe | Codierte | Gebietsc | Ländereinstel | Betrieb | | | | r | ode | lung | ssystem | | | | Zeichens | | | | | | | atz | | | | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | Ja_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | | 81 | ja_JP | AIX | | | | IBM-eucJ | | | | | | | P | | | | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | JA_JP | AIX | +----------+----------+----------+----------+---------------+---------+ | 930 | D-1 | IBM-930 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 939 | D-1 | IBM-939 | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 5026 | D-1 | | 81 | - | Host | | | | IBM-5026 | | | | +----------+----------+----------+----------+---------------+---------+ | 5035 | D-1 | | 81 | - | Host | | | | IBM-5035 | | | | +----------+----------+----------+----------+---------------+---------+ | 1390 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 1399 | D-1 | | 81 | - | Host | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 5039 | D-1 | SJIS | 81 | ja_JP.SJIS | HP-UX | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | EUC-JP | 81 | ja_JP | Linux | +----------+----------+----------+----------+---------------+---------+ | 932 | D-1 | IBM-932 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 942 | D-1 | IBM-942 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | OS/2 | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.EUC | SCO | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja_JP.eucJP | SCO | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | ja_JP.PCK | Solaris | +----------+----------+----------+----------+---------------+---------+ | 954 | D-1 | eucJP | 81 | ja | Solaris | +----------+----------+----------+----------+---------------+---------+ | 1208 | N-1 | UTF-8 | 81 | ja_JP.UTF-8 | Solaris | +----------+----------+----------+----------+---------------+---------+ | 943 | D-1 | IBM-943 | 81 | - | Windows | +----------+----------+----------+----------+---------------+---------+ | 1394 | D-1 | | 81 | - | | +----------+----------+----------+----------+---------------+---------+ Von DB2 Universal Database unterstützte XA-Funktionalität DB2 Universal Database (UDB) unterstützt die Spezifikation XA91, die in X/Open CAE Specification Distributed Transaction Processing: The XA Specification definiert ist, mit folgenden Ausnahmen: * Asynchrone Services Die XA-Spezifikation ermöglicht der Schnittstelle die Verwendung asynchroner Services, so dass das Ergebnis einer Anforderung zu einem späteren Zeitpunkt überprüft werden kann. Für den Datenbankmanager müssen die Anforderungen im synchronen Modus aufgerufen werden. * Registrierung Die XA-Schnittstelle ermöglicht zwei Methoden zur Registrierung eines Ressourcenmanagers: statische und dynamische Registrierung. DB2 UDB unterstützt die dynamische und statische Registrierung. DB2 UDB stellt zwei Schalter zur Verfügung: * db2xa_switch für dynamische Registrierung * db2xa_switch_static für statische Registrierung * Migration von Zuordnungen DB2 UDB unterstützt die Transaktionsmigration zwischen Threads der Steuerung nicht. Verwendung und Position von XA-Schaltern Wie für die XA-Schnittstelle erforderlich, stellt der Datenbankmanager eine externe C-Variable db2xa_switch und db2xa_switch_static des Typs xa_switch_t bereit, um die XA-Schalterstruktur an den Transaktionsmanager zurückzugeben. Neben den Adressen verschiedener XA-Funktionen werden folgende Felder zurückgegeben: Feld Wert name Der Produktname des Datenbankmanagers. Beispielweise DB2 UDB für AIX. flags Für db2xa_switch ist der Wert TMREGISTER | TMNOMIGRATE festgelegt. Gibt explizit an, dass DB2 UDB die dynamische Registrierung verwendet und dass der TM keine Migration von Zuordnungen verwenden soll. Gibt implizit an, dass kein asynchroner Betrieb unterstützt wird. Für db2xa_switch_static ist der Wert TMNOMIGRATE festgelegt. Gibt explizit an, dass DB2 UDB die dynamische Registrierung verwendet und dass der TM keine Migration von Zuordnungen verwenden soll. Gibt implizit an, dass kein asynchroner Betrieb unterstützt wird. version Muss Null sein. Verwenden des XA-Schalters von DB2 Universal Database Die XA-Architektur erfordert, dass ein Ressourcenmanager (RM) einen Schalter bereitstellt, der dem XA-Transaktionsmanager (TM) Zugriff auf die xa_-Routinen des Ressourcenmanagers gibt. Ein RM-Schalter verwendet eine Struktur, die als xa_switch_t bezeichnet wird. Der Schalter enthält den Namen des RMs, Nicht-NULL-Zeiger auf die XA-Eingangspunkte des RMs, eine Markierung (Flag) und eine Versionsnummer. Linux- und UNIX-basierte Systeme Der Schalter für DB2 Universal Database (UDB) kann durch eine der folgenden Methoden abgerufen werden: * Über eine weitere Zwischenstufe. In einem C-Programm kann dies durch Definieren eines Makros erfolgen: #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) Führen Sie dies vor Verwendung von db2xa_switch oder db2xa_switch_static durch. * Durch Aufrufen von db2xacic oder db2xacicst. DB2 UDB stellt diese APIs zur Verfügung, die die Adresse der Struktur db2xa_switch oder db2xa_switch_static zurückgeben. Der Prototyp dieser Funktion lautet: struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Bei beiden Methoden müssen Sie die Anwendung an libdb2 binden ("linken"). Windows NT Der Zeiger auf die Struktur xa_switch, db2xa_switch oder db2xa_switch_static wird in Form von DLL-Daten exportiert. Dies heißt für eine Anwendung unter Windows NT, die diese Struktur verwendet, dass sie mit Hilfe einer der folgenden drei Methoden auf die Struktur zugreifen muss: * Über eine weitere Zwischenstufe. In einem C-Programm kann dies durch Definieren eines Makros erfolgen: #define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch) Führen Sie dies vor Verwendung von db2xa_switch oder db2xa_switch_static durch. * Bei Verwendung des Microsoft Visual C++-Compilers kann db2xa_switch oder db2xa_switch_static folgendermaßen definiert werden: extern __declspec(dllimport) struct xa_switch_t db2xa_switch extern __declspec(dllimport) struct xa_switch_t db2xa_switch_static * Durch Aufrufen von db2xacic oder db2xacicst. DB2 UDB stellt diese API zur Verfügung, die die Adresse der Struktur db2xa_switch oder db2xa_switch_static zurückgibt. Der Prototyp dieser Funktion lautet: struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( ) Bei jeder dieser Methoden müssen Sie die Anwendung an db2api.lib binden ("linken"). C-Beispielcode Der folgende Code veranschaulicht die verschiedenen Methoden des Zugriffs auf db2xa_switch oder db2xa_switch_static über ein C-Programm auf einer beliebigen DB2 UDB-Plattform. Stellen Sie sicher, dass die Anwendung mit der entsprechenden Bibliothek verbunden wird. #include #include struct xa_switch_t * SQL_API_FN db2xacic( ); #ifdef DECLSPEC_DEFN extern __declspec(dllimport) struct xa_switch_t db2xa_switch; #else #define db2xa_switch (*db2xa_switch) extern struct xa_switch_t db2xa_switch; #endif main( ) { struct xa_switch_t *foo; printf ( "%s \n", db2xa_switch.name ); foo = db2xacic(); printf ( "%s \n", foo->name ); return ; } Aktualisierte TPM- und tp_mon_name-Werte für xa_open-Zeichenfolgeformate Die Spalte "Interne Einstellungen" in der folgenden Tabelle wurde so aktualisiert, dass sie die Einstellungen für den TOC (Thread of Control) enthält. TOC ist die Entität, an die alle DB2 UDB-XA-Verbindungen gebunden werden: * Wenn Sie den Wert auf T setzen, sind alle DB2 UDB-XA-Verbindungen, die unter einem bestimmten Betriebssystemthread gebildet werden, für diesen Thread eindeutig. DB2 UDB-Verbindungen können nicht von mehreren Threads gemeinsam genutzt werden. Jeder Betriebssystemthread muss einen eigenen Satz von DB2 UDB-XA-Verbindungen bilden. * Wenn Sie den Wert auf P setzen, sind alle DB2 UDB-XA-Verbindungen für den Betriebssystemprozess eindeutig, und alle XA-Verbindungen können von den Betriebssystemthreads gemeinsam genutzt werden. Tabelle 15. Gültige Werte für TPM und tp_mon_name +-----------------+----------------+----------------------------------+ | TPM-Wert | TP-Monitorprod | Interne Einstellungen | | | ukt | | +-----------------+----------------+----------------------------------+ | CICS | IBM TxSeries | AXLIB=libEncServer (für Windows) | | | CICS | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (für Linux and UNIX-Systeme) | | | | HOLD_CURSOR=T | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | ENCINA | IBM TxSeries | AXLIB=libEncServer (für Windows) | | | Encina Monitor | =/usr/lpp/encina/lib/libEncServ | | | | er | | | | (für Linux and UNIX-Systeme) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MQ | IBM MQSeries | AXLIB=mqmax | | | | (für Windows) | | | | =/usr/mqm/lib/libmqmax_r.a | | | | (für AIX-Anwendungen mit | | | | Threads) | | | | =/usr/mqm/lib/libmqmax.a | | | | (für AIX-Anwendungen ohne | | | | Threads) | | | | =/opt/mqm/lib/libmqmax.so | | | | (für Solaris) | | | | =/opt/mqm/lib/libmqmax_r.sl | | | | (für HP-Anwendungen mit Threads) | | | | =/opt/mqm/lib/libmqmax.sl | | | | (für HP-Anwendungen ohne | | | | Threads) | | | | =/opt/mqm/lib/libmqmax_r.so | | | | (für Linux-Anwendungen mit | | | | Threads) | | | | =/opt/mqm/lib/libmqmax.so | | | | (für Linux-Anwendungen ohne | | | | Threads) | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=P | +-----------------+----------------+----------------------------------+ | CB | IBM Component | AXLIB=somtrx1i (für Windows) | | | Broker | =libsomtrx1 | | | | (für Linux and UNIX-Systeme) | | | | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | SF | IBM San | AXLIB=ibmsfDB2 | | | Francisco | HOLD_CURSOR=F | | | | CHAIN_END=T | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | TUXEDO | BEA Tuxedo | AXLIB=libtux | | | | HOLD_CURSOR=F | | | | CHAIN_END=F | | | | SUSPEND_CURSOR=F | | | | TOC=T | +-----------------+----------------+----------------------------------+ | MTS | Microsoft | Es ist nicht nötig, DB2 UDB für | | | Transaction | MTS zu konfigurieren. MTS wird | | | Server | vom ODBC-Treiber von DB2 UDB | | | | automatisch erkannt. | +-----------------+----------------+----------------------------------+ | JTA | Java | Es ist nicht nötig, DB2 UDB for | | | Transaction | Enterprise Java Servers (EJS) | | | API | wie IBM WebSphere zu | | | | konfigurieren. Der JDBC-Treiber | | | | von DB2 UDB erkennt diese | | | | Umgebung automatisch. In diesem | | | | Fall wird der TPM-Wert | | | | ignoriert. | +-----------------+----------------+----------------------------------+ Aktivieren von Konvertierungstabellen für die Codepages 923 und 924 Die folgende Tabelle enthält eine Liste mit allen Konvertierungstabellendateien für Codepages, die den Codepages 923 und 924 zugeordnet sind. Jeder Dateiname hat das Format XXXXYYYY.cnv oder ibmZZZZZ.ucs, wobei XXXX die Nummer der Quellencodepage und YYYY die Nummer der Zielcodepage ist. Die Datei ibmZZZZZ.ucs unterstützt die Konvertierung zwischen Codepage ZZZZZ und Unicode. Vorgehensweise Zur Aktivierung einer bestimmten Codepagekonvertierungstabelle benennen Sie die Konvertierungstabellendatei in den neuen Namen um (oder kopieren die Datei in den neuen Namen), der in der zweiten Spalte angegeben ist. Wenn Sie zum Beispiel bei der Verbindung eines Clients mit 8859-1/15 (Latin 1/9) mit einer Windows-1252-Datenbank das Euro-Symbol verwenden wollen, müssen Sie die folgenden Dateien mit Codepagekonvertierungstabellen im Verzeichnis sqllib/conv/ in den neuen Namen umbenennen bzw. kopieren: * 09231252.cnv in 08191252.cnv * 12520923.cnv in 12520819.cnv * ibm00923.ucs in ibm00819.ucs Tabelle 16. Konvertierungstabellendateien für die Codepages 923 und 924 +----------------------------------+----------------------------------+ | Konvertierungstabellendateien | Neuer Name | | für 923 und 924 im Verzeichnis | | | sqllib/conv/ | | +----------------------------------+----------------------------------+ | 04370923.cnv | 04370819.cnv | +----------------------------------+----------------------------------+ | 08500923.cnv | 08500819.cnv | +----------------------------------+----------------------------------+ | 08600923.cnv | 08600819.cnv | +----------------------------------+----------------------------------+ | 08630923.cnv | 08630819.cnv | +----------------------------------+----------------------------------+ | 09230437.cnv | 08190437.cnv | +----------------------------------+----------------------------------+ | 09230850.cnv | 08190850.cnv | +----------------------------------+----------------------------------+ | 09230860.cnv | 08190860.cnv | +----------------------------------+----------------------------------+ | 09231043.cnv | 08191043.cnv | +----------------------------------+----------------------------------+ | 09231051.cnv | 08191051.cnv | +----------------------------------+----------------------------------+ | 09231114.cnv | 08191114.cnv | +----------------------------------+----------------------------------+ | 09231252.cnv | 08191252.cnv | +----------------------------------+----------------------------------+ | 09231275.cnv | 08191275.cnv | +----------------------------------+----------------------------------+ | 09241252.cnv | 10471252.cnv | +----------------------------------+----------------------------------+ | 10430923.cnv | 10430819.cnv | +----------------------------------+----------------------------------+ | 10510923.cnv | 10510819.cnv | +----------------------------------+----------------------------------+ | 11140923.cnv | 11140819.cnv | +----------------------------------+----------------------------------+ | 12520923.cnv | 12520819.cnv | +----------------------------------+----------------------------------+ | 12750923.cnv | 12750819.cnv | +----------------------------------+----------------------------------+ | ibm00923.ucs | ibm00819.ucs | +----------------------------------+----------------------------------+ Konvertierungstabellendateien für Euro-fähige Codepages In den folgenden Tabellen sind die Konvertierungstabellen aufgelistet, die zur Unterstützung des Euro-Symbols erweitert wurden. Wenn Sie die Unterstützung für das Euro-Symbol inaktivieren wollen, laden Sie die Konvertierungstabellendatei herunter, die in der Spalte 'Konvertierungstabellendateien' angegeben ist. Arabisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1046, 9238 | 08641046.cnv, | | | | 10460864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1256, 5352 | 08641256.cnv, | | | | 12560864.cnv, | | | | IBM00864.ucs | +-------------------+----------------------+--------------------------+ | 864, 17248 | 1200, 1208, 13488, | IBM00864.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 864, 17248 | 10460864.cnv, | | | | 08641046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1089 | 10461089.cnv, | | | | 10891046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1256, 5352 | 10461256.cnv, | | | | 12561046.cnv, | | | | IBM01046.ucs | +-------------------+----------------------+--------------------------+ | 1046, 9238 | 1200, 1208, 13488, | IBM01046.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1089 | 1046, 9238 | 10891046.cnv, | | | | 10461089.cnv | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 864, 17248 | 12560864.cnv, | | | | 08641256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1046, 9238 | 12561046.cnv, | | | | 10461256.cnv, | | | | IBM01256.ucs | +-------------------+----------------------+--------------------------+ | 1256, 5352 | 1200, 1208, 13488, | IBM01256.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Baltikum +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 921, 901 | 1257 | 09211257.cnv, | | | | 12570921.cnv, | | | | IBM00921.ucs | +-------------------+----------------------+--------------------------+ | 921, 901 | 1200, 1208, 13488, | IBM00921.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 921, 901 | 12570921.cnv, | | | | 09211257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 922, 902 | 12570922.cnv, | | | | 09221257.cnv, | | | | IBM01257.ucs | +-------------------+----------------------+--------------------------+ | 1257, 5353 | 1200, 1208, 13488, | IBM01257.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Weißrussland +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1251, 5347 | 11311251.cnv, | | | | 12511131.cnv | +-------------------+----------------------+--------------------------+ | 1131, 849 | 1283 | 11311283.cnv | +-------------------+----------------------+--------------------------+ Kyrillisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 855, 872 | 866, 808 | 08550866.cnv, | | | | 08660855.cnv | +-------------------+----------------------+--------------------------+ | 855, 872 | 1251, 5347 | 08551251.cnv, | | | | 12510855.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 855, 872 | 08660855.cnv, | | | | 08550866.cnv | +-------------------+----------------------+--------------------------+ | 866, 808 | 1251, 5347 | 08661251.cnv, | | | | 12510866.cnv | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 855, 872 | 12510855.cnv, | | | | 08551251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 866, 808 | 12510866.cnv, | | | | 08661251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1124 | 12511124.cnv, | | | | 11241251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1125, 848 | 12511125.cnv, | | | | 11251251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1131, 849 | 12511131.cnv, | | | | 11311251.cnv, | | | | IBM01251.ucs | +-------------------+----------------------+--------------------------+ | 1251, 5347 | 1200, 1208, 13488, | IBM01251.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Estland +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 922, 902 | 1257 | 09221257.cnv, | | | | 12570922.cnv, | | | | IBM00922.ucs | +-------------------+----------------------+--------------------------+ | 922, 902 | 1200, 1208, 13488, | IBM00922.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Griechisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 813, 4909 | 869, 9061 | 08130869.cnv, | | | | 08690813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1253, 5349 | 08131253.cnv, | | | | 12530813.cnv, | | | | IBM00813.ucs | +-------------------+----------------------+--------------------------+ | 813, 4909 | 1200, 1208, 13488, | IBM00813.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 869, 9061 | 813, 4909 | 08690813.cnv, | | | | 08130869.cnv | +-------------------+----------------------+--------------------------+ | 869, 9061 | 1253, 5349 | 08691253.cnv, | | | | 12530869.cnv | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 813, 4909 | 12530813.cnv, | | | | 08131253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 869, 9061 | 12530869.cnv, | | | | 08691253.cnv, | | | | IBM01253.ucs | +-------------------+----------------------+--------------------------+ | 1253, 5349 | 1200, 1208, 13488, | IBM01253.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Hebräisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 856, 9048 | 862, 867 | 08560862.cnv, | | | | 08620856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 916 | 08560916.cnv, | | | | 09160856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1255, 5351 | 08561255.cnv, | | | | 12550856.cnv, | | | | IBM0856.ucs | +-------------------+----------------------+--------------------------+ | 856, 9048 | 1200, 1208, 13488, | IBM0856.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 862, 867 | 856, 9048 | 08620856.cnv, | | | | 08560862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 916 | 08620916.cnv, | | | | 09160862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1255, 5351 | 08621255.cnv, | | | | 12550862.cnv, | | | | IBM00862.ucs | +-------------------+----------------------+--------------------------+ | 862, 867 | 1200, 1208, 13488, | IBM00862.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ | 916 | 856, 9048 | 09160856.cnv, | | | | 08560916.cnv | +-------------------+----------------------+--------------------------+ | 916 | 862, 867 | 09160862.cnv, | | | | 08620916.cnv | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 856, 9048 | 12550856.cnv, | | | | 08561255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 862, 867 | 12550862.cnv, | | | | 08621255.cnv, | | | | IBM01255.ucs | +-------------------+----------------------+--------------------------+ | 1255, 5351 | 1200, 1208, 13488, | IBM01255.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Latin-1 +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 437 | 850, 858 | 04370850.cnv, | | | | 08500437.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 437 | 08500437.cnv, | | | | 04370850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 860 | 08500860.cnv, | | | | 08600850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1114, 5210 | 08501114.cnv, | | | | 11140850.cnv | +-------------------+----------------------+--------------------------+ | 850, 858 | 1275 | 08501275.cnv, | | | | 12750850.cnv | +-------------------+----------------------+--------------------------+ | 860 | 850, 858 | 08600850.cnv, | | | | 08500860.cnv | +-------------------+----------------------+--------------------------+ | 1275 | 850, 858 | 12750850.cnv, | | | | 08501275.cnv | +-------------------+----------------------+--------------------------+ Latin-2 +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 852, 9044 | 1250, 5346 | 08521250.cnv, | | | | 12500852.cnv | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 852, 9044 | 12500852.cnv, | | | | 08521250.cnv, | | | | IBM01250.ucs | +-------------------+----------------------+--------------------------+ | 1250, 5346 | 1200, 1208, 13488, | IBM01250.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Vereinfachtes Chinesisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 837, 935, 1388 | 1200, 1208, 13488, | 1388ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1386 | 1200, 1208, 13488, | 1386ucs2.cnv, | | | 17584 | ucs21386.cnv | +-------------------+----------------------+--------------------------+ Traditionelles Chinesisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 950, 1370 | 09370950.cnv, | | | | 0937ucs2.cnv | +-------------------+----------------------+--------------------------+ | 937, 835, 1371 | 1200, 1208, 13488, | 0937ucs2.cnv | | | 17584 | | +-------------------+----------------------+--------------------------+ | 1114, 5210 | 850, 858 | 11140850.cnv, | | | | 08501114.cnv | +-------------------+----------------------+--------------------------+ Thailand +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 874, 1161 | 1200, 1208, 13488, | IBM00874.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Türkisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 857, 9049 | 1254, 5350 | 08571254.cnv, | | | | 12540857.cnv | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 857, 9049 | 12540857.cnv, | | | | 08571254.cnv, | | | | IBM01254.ucs | +-------------------+----------------------+--------------------------+ | 1254, 5350 | 1200, 1208, 13488, | IBM01254.ucs | | | 17584 | | +-------------------+----------------------+--------------------------+ Ukraine +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 1124 | 1251, 5347 | 11241251.cnv, | | | | 12511124.cnv | +-------------------+----------------------+--------------------------+ | 1125, 848 | 1251, 5347 | 11251251.cnv, | | | | 12511125.cnv | +-------------------+----------------------+--------------------------+ Unicode +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 813, 4909 | IBM00813.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 862, 867 | IBM00862.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 864, 17248 | IBM00864.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 874, 1161 | IBM00874.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 921, 901 | IBM00921.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 922, 902 | IBM00922.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1046, 9238 | IBM01046.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1250, 5346 | IBM01250.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1251, 5347 | IBM01251.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1253, 5349 | IBM01253.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1254, 5350 | IBM01254.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1255, 5351 | IBM01255.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1256, 5352 | IBM01256.ucs | | 13488, 17584 | | | +-------------------+----------------------+--------------------------+ | 1200, 1208, | 1386 | ucs21386.cnv, | | 13488, 17584 | | 1386ucs2.cnv | +-------------------+----------------------+--------------------------+ Vietnamesisch +-------------------+----------------------+--------------------------+ | Datenbankserver-C | Datenbankclient-CCSI | Konvertierungstabellenda | | CSIDs/CPGIDs | Ds/CPGIDs | teien | +-------------------+----------------------+--------------------------+ | 1258, 5354 | 1129, 1163 | 12581129.cnv | +-------------------+----------------------+--------------------------+ API Reference Parameter oBackupsize der API db2Backup In DB2 UDB Version 8 wird der Parameter oBackupsize der API db2Backup für Gesamtsicherungen und nicht für Delta- oder inkrementelle Sicherungen verwendet. Der Parameter oBackupsize repräsentiert die Größe des Sicherungsimages (in MB). Unterstützung der Option SYNCPOINT Die Option SYNCPOINT für die APIs sqlesetc, sqleqryc und sqlaprep wird ab Version 8 ignoriert; sie ist nur aus Gründen der Abwärtskompatibilität verfügbar. Neues Feld für die Struktur SQLEDBDESC Der API sqlecrea wurde ein neues Feld hinzugefügt, damit direkte E/A unterstützt wird. Feldname Unsigned char sqlfscaching Beschreibung Zwischenspeichern des Dateisystems Werte 0 Das Zwischenspeichern des Dateisystems ist für den aktuellen Tabellenbereich eingeschaltet. 1 Das Zwischenspeichern des Dateisystems ist für den aktuellen Tabellenbereich ausgeschaltet. Sonstige Codes Das Zwischenspeichern des Dateisystems ist für den aktuellen Tabellenbereich eingeschaltet. Korrektur beim neuen Feld in der Struktur SQLB-TBSPQRY-DATA Der Struktur SQLB-TBSPQRY-DATA wurde das neue Feld unsigned char fsCaching hinzugefügt. Dieses Feld unterstützt die direkte E/A. Obwohl die Größe des reservierten Bits in der Dokumentation als 32 Bit dokumentiert ist, muss die richtige Größe 31 Bit lauten. Anwendungsentwicklung: Erzeugen und Ausführen von Anwendungen Beispiele für die dynamische Rekonfiguration (AIX) In DB2 Universal Database(TM) (UDB) Version 8.2 FixPak 3 (äquivalent zu Version 8.1 FixPak 10) ist die neue Musterdatei ibm_db2_sln_upart_smt enthalten. In der folgenden Tabelle sind der Name und die Beschreibung der Musterdatei dargestellt. Tabelle 17. Musterscripts für die dynamische Rekonfiguration +-----------------+---------------------------------------------------+ | Name des | Dateibeschreibung | | Musterscripts | | +-----------------+---------------------------------------------------+ | ibm_db2_sln_upa | Dieses Korn-Shell-Script für die dynamische | | rt_smt | Rekonfiguration (DR-Script) unter AIX ermöglicht | | | die Verwendung der DLPAR-Funktionalität (Dynamic | | | Logical Partitioning), die unter AIX Version 5.3 | | | auf POWER5-basierten pSeries(R)-Systemen | | | bereitgestellt wird, wie z. B. auf dem p5-570 und | | | dem p5-590. Dieses Script ähnelt dem DR-Script | | | ibm_db2_sln, ist jedoch für die Unterstützung der | | | Merkmale von POWER5(TM) und AIX Version 5.3 | | | optimiert, wie z. B. für die Mikropartitionierung | | | und für SMT. Weitere Informationen hierzu finden | | | Sie im DR-Script selbst. | +-----------------+---------------------------------------------------+ Das Beispielscript ibm_db2_sln_upart_smt befindet sich in DB2 UDB für AIX im Verzeichnis sqllib/samples/DLPAR. Von Linux unterstützte Entwicklungssoftware Details zur Installation finden Sie in der Beschreibung der Linux 2.6-Kernel-Installations-Images in den Release-Informationen für DB2 UDB Version 8.2.2 (Abschnitt Neuheiten in diesem Release). In den folgenden Tabellen wird die DB2-Unterstützung der Linux-Architektur in FixPak 9 beschrieben. Aktualisierungen für diese Unterstützung finden Sie auf der folgenden Website: http://www.ibm.com/db2/linux/validate Tabelle 18. Linux für Intel(R) x86 (32 Bit) +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Conectiva Linux Enterprise | 2.4.19 | glibc | Powered by United | | Edition (CLEE) | | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | LINX Rocky Secure Server | 2.4.21 | glibc | | | 2.1 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Advanced Server | 2.4.21- | glibc | | | 4.0 | as.2 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Flag Function Server | 2.4.20- | glibc | | | 4.0 | 8smp | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.9-e | glibc | | | 2.1 AS/ES/WS | 16 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Erfordert | | (RHEL) 4 | | .3.3 | außerdem das | | | | | Paket | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SCO Linux 4.0 | 2.4.19 | glibc | Powered by United | | | | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.0 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SuSE Pro 8.1 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.7 | glibc | | | Server (SLES) 7 | | 2.2.2 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19 | glibc | Geprüft bis SuSE | | Server (SLES) 8 | | 2.2.5 | Service-Pack 2 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 7 Server | 2.4.9 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux 8 Server | 2.4.18- | glibc | | | | 5 | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19 | glibc | | | Server 8 | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabelle 19. Linux für Intel(R) x86 (32 Bit) Nicht-Enterprise-Varianten (nicht mehr vom Hersteller unterstützt) +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 4 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.3 | 2.4.18 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ | Red Hat 8.0 | 2.4.18- | glibc | | | | 14 | 2.2.93- | | | | | 5 | | +-----------------------------+---------+---------+-------------------+ | SuSE 7.3 | 2.4.10 | glibc | | | | | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ Tabelle 20. Linux für s/390 und zSeries(R) (31-Bit-Kernel-Version für s/390 unterstützt; 64 Bit für zSeries) +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Red Hat 7.2 | 2.4.9-3 | glibc | | | | 8 | 2.2.4 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Erfordert | | (RHEL) 4 | | .3.3 | außerdem das | | | | | Paket | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.7-5 | glibc | compat.rpm | | Server (SLES) 7 | 8 | 2.2.4 | enthält libstdc++ | | | | | 6.1. Verwenden | | | | | Sie JDK 1.3.1 SR | | | | | 1 für Java(TM). | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19 | glibc | Powered by United | | Server (SLES) 8 | | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbo Linux Enterprise | 2.4.19 | glibc | Powered by United | | Server (TLES) 8 | | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabelle 21. Linux für x86-64 +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Erfordert | | (RHEL) 4 | | .3.3 | außerdem das | | | | | Paket | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19- | glibc | | | Server (SLES) 8.0 | SMP | 2.2.5-1 | | | | | 6 | | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ Tabelle 22. Linux für POWER(TM) (iSeries und pSeries(R)) +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Erfordert | | (RHEL) 4 | | .3.3 | außerdem das | | | | | Paket | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SuSE Enterprise Server | 2.4.19- | glibc | Powered by United | | (SLES) 8 | 16 | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | Turbolinux Enterprise | 2.4.19- | glibc | Powered by United | | Server 8 | 16 | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ Tabelle 23. Linux für IA64 +-----------------------------+---------+---------+-------------------+ | Varianten | Kernel | Bibliot | Kommentare | | | | hek | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.18- | glibc | | | 2.1 AS/ES/WS | e.12smp | | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.4.21- | glibc-2 | | | (RHEL) 3 AS/ES/WS | 7.EL | .3.2-95 | | | | | .3 | | +-----------------------------+---------+---------+-------------------+ | Red Hat Enterprise Linux | 2.6.9 | glibc-2 | Erfordert | | (RHEL) 4 | | .3.3 | außerdem das | | | | | Paket | | | | | compat-libstdc++- | | | | | 33 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.4.19- | glibc | Powered by United | | Server (SLES) 8 | SMP | 2.2.5 | Linux 1.0 | +-----------------------------+---------+---------+-------------------+ | SuSE Linux Enterprise | 2.6.5 | glibc-2 | | | Server (SLES) 9 | | .3.3 | | +-----------------------------+---------+---------+-------------------+ | United Linux 1.0 | 2.4.19 | glibc | | | | | 2.2.5 | | +-----------------------------+---------+---------+-------------------+ DB2 UDB für auf dem 2.6-Kernel basierende Linux-Varianten für Intel(R) x86 unterstützt die folgenden Programmiersprachen und Compiler: C GNU/Linux gcc Version 3.3 C++ GNU/Linux g++ Version 3.3 COBOL Micro Focus COBOL Server Express Version 2.2 mit Service-Pack 1 Java(TM) IBM(R) Developer Kit und Runtime Environment für Linux, Java(TM) 2 Technology Edition Version 1.3.1 und 1.4.1 Service-Release 1 (32 Bit) Anmerkung: DB2 UDB installiert die neueste unterstützte Developer Kit-Version, sofern diese noch nicht installiert ist, es sei denn, die DB2 UDB-Installation ist eine Aktualisierung einer früheren Insallation von DB2 UDB Version 8. Wenn eine frühere Installation von DB2 UDB Version 8 aktualisiert wird, muss das unterstützte Developer Kit manuell von der CD-ROM installiert werden. Perl Perl 5.004_04 oder höher, DBI 0.93 oder höher PHP PHP 4.3.4 oder höher REXX Object REXX Interpreter für Linux Version 2.1 Ein 32-Bit-Exemplar für DB2 UDB für auf dem 2.6-Kernel basierende Linux-Varianten für x86-64 unterstützt die folgenden Programmiersprachen und Compiler: C GNU/Linux gcc Version 3.3 Anmerkung: Die Compileroption "-m32" muss verwendet werden, um 32-Bit-Anwendungen oder -Routinen (gespeicherte Prozeduren und benutzerdefinierte Funktionen) zu generieren. C++ GNU/Linux g++ Version 3.3 Anmerkungen: 1. Diese Versionen des GNU/Linux-Compilers g++ akzeptieren für einige fstream-Funktionen keine ganzzahligen Parameter. Weitere Informationen finden Sie in der Dokumentation zu diesem Compiler. 2. Die Compileroption "-m32" muss verwendet werden, um 32-Bit-Anwendungen oder -Routinen (gespeicherte Prozeduren und benutzerdefinierte Funktionen) zu generieren. Java IBM(R) Developer Kit und Runtime Environment für Linux x86, Java 2 Technology Edition Version 1.3.1 Service-Release 4 (32 Bit) und Version 1.4.1 Service-Release 1 (32 Bit) Anmerkung: DB2 UDB installiert die neueste unterstützte Developer Kit-Version, sofern diese noch nicht installiert ist, es sei denn, die DB2 UDB-Installation ist eine Aktualisierung einer früheren Insallation von DB2 UDB Version 8. Wenn eine frühere Installation von DB2 UDB Version 8 aktualisiert wird, muss das unterstützte Developer Kit manuell von der CD-ROM installiert werden. Perl Perl 5.8 PHP PHP 4.3.4 oder höher Ein 64-Bit-Exemplar für DB2 UDB für auf dem 2.6-Kernel basierende Linux-Varianten für x86-64 unterstützt die folgenden Programmiersprachen und Compiler: C GNU/Linux gcc Version 3.3 C++ GNU/Linux g++ Version 3.3 Anmerkung: Diese Versionen des GNU/Linux-Compilers g++ akzeptieren für einige fstream-Funktionen keine ganzzahligen Parameter. Weitere Informationen finden Sie in der Dokumentation zu diesem Compiler. Java DB2 UDB unterstützt zurzeit kein 64-Bit-Java Developer Kit für Linux für x86-64. Perl Perl 5.8 PHP PHP 4.3.4 oder höher Anpassen der Optionen für das Vorkompilieren und Binden für SQL-Prozeduren Die Optionen für das Vorkompilieren und Binden für SQL-Prozeduren können Sie anpassen, indem Sie die im Exemplar gültige DB2-Registrierdatenbankvariable DB2_SQLROUTINE_PREPOPTS mit dem folgenden Befehl setzen: db2set DB2_SQLROUTINE_PREPOPTS= Außer den Optionen, die in Version 8.2 dokumentiert sind, ist die Option REOPT zulässig: BLOCKING {UNAMBIG | ALL | NO} DATETIME {DEF | USA | EUR | ISO | JIS | LOC} DEGREE {1 | grad-der-parallelität | ANY} DYNAMICRULES {BIND | RUN} EXPLAIN {NO | YES | ALL} EXPLSNAP {NO | YES | ALL} FEDERATED {NO | YES} INSERT {DEF | BUF} ISOLATION {CS | RR | UR | RS | NC} QUERYOPT optimierungsgrad REOPT {ALWAYS | NONE | ONCE} VALIDATE {RUN | BIND} C/C++-Compileroption erforderlich (Linux auf POWER (64 Bit)) Die Compileroption "-m64" ist erforderlich, wenn gcc/g++ zur Erzeugung von C/C++-Anwendungen und -Routinen für ein 64-Bit-Exemplar unter DB2 Universal Database für Linux auf POWER verwendet wird. Die Compileroption "-q64" ist erforderlich, wenn xlc/xlC zur Erzeugung von C/C++-Anwendungen und -Routinen für ein 64-Bit-Exemplar unter DB2 Universal Database für Linux auf POWER verwendet wird. Kompilierungs- und Bindebefehl für gespeicherte Micro Focus COBOL-Prozeduren (HP-UX) Der Kompilierungs- und Bindebefehl in der Dokumentation zu DB2 Universal Database Version 8.2, mit dem gespeicherte Prozeduren in Micro Focus COBOL unter HP-UX erzeugt werden, ist falsch. Der Kompilierungsbefehl in der Prozedur sqllib/samples/cobol_mf/bldrtn ist jedoch richtig. Die Befehle zum Kompilieren und Binden werden nun in einem einzigen Befehl zusammengefasst, wobei mit der Option -y angegeben wird, dass die gewünschte Ausgabe eine gemeinsam genutzte Bibliothek ist. Mindestens unterstützte Version von Micro Focus COBOL (HP-UX) Vom Micro Focus COBOL-Compiler und von der Micro Focus COBOL-Laufzeitumgebung unter HP-UX wird mindestens die Version Micro Focus Server Express 2.2 - Service Pack 1 mit Fixpack Fixpack22.02_14 für HP-UX PA-RISC 11.x (32/64 Bit) unterstützt. Dieser Fixpack ist auf der Website der Micro Focus Support Line unter http://supportline.microfocus.com verfügbar . Setzen der Umgebungsvariablen für gespeicherte Micro Focus COBOL-Prozeduren (Windows) Damit externe Micro Focus COBOL-Routinen unter Windows ausgeführt werden können, müssen die Micro Focus COBOL-Umgebungsvariablen dauerhaft als Systemvariablen gesetzt sein. Vorgehensweise Gehen Sie wie folgt vor, um die Umgebungsvariablen als Systemvariablen zu setzen: 1. Öffnen Sie die Systemsteuerung. 2. Wählen Sie System aus. 3. Wählen Sie die Indexzunge Erweitert aus. 4. Klicken Sie die Option Umgebungsvariablen an. 5. Fügen Sie die Variablen der Liste Systemvariablen hinzu. Wenn Sie die Umgebungsvariablen in der Liste Benutzervariablen, an der Eingabeaufforderung oder mit einer Prozedur setzen, reicht dies nicht aus. Anwendungsentwicklung: CLI (Call Level Interface) CLI/ODBC-Konfigurationsschlüsselwort Trusted_Connection Beschreibung des Schlüsselworts Erlaubt die Herstellung einer Verbindung zum zurzeit authentifizierten Benutzer. Syntax: Trusted_Connection=Yes Anmerkung: Dieses Schlüsselwort hat keine Auswirkung, wenn es in der Datei db2cli.ini angegeben wird. Es muss stattdessen in der Verbindungszeichenfolge für SQLDriverConnect() bereitgestellt werden. Standardeinstellung: CLI verwendet die in der Verbindungszeichenfolge für SQLDriverConnect() bereitgestellten Informationen für Benutzer-ID und Kennwort, nicht den zurzeit authentifizierten Benutzer. Hinweise: CLI-Anwendungen stellen die Verbindung zu einer Datenbank in der Regel mit der Funktion SQLDriverConnect() her. Eins der Eingabeargumente für diese Funktion ist der Wert für DriverCompletion, der bestimmt, wann ein Fenster geöffnet wird. Die Werte für DriverCompletion lauten wie folgt: * SQL_DRIVER_PROMPT: Es wird immer ein Dialog aufgebaut. * SQL_DRIVER_COMPLETE: Ein Dialog wird nur dann aufgebaut, wenn in der Verbindungszeichenfolge unzureichende Informationen vorhanden sind. * SQL_DRIVER_COMPLETE_REQUIRED: Ein Dialog wird nur dann aufgebaut, wenn in der Verbindungszeichenfolge unzureichende Informationen vorhanden sind. Es werden nur obligatorische Informationen angefordert. Der Benutzer wird nur zur Angabe der erforderlichen Informationen aufgefordert. * SQL_DRIVER_NOPROMPT: Der Benutzer wird nicht dazu aufgefordert, Informationen anzugeben. Es wird versucht, mit den in der Verbindungszeichenfolge enthaltenen Informationen eine Verbindung herzustellen. Wenn nicht genügend Informationen vorhanden sind, wird SQL_ERROR zurückgegeben. Anmerkung: Weitere Details zu DriverCompletion finden Sie in der Dokumentation für SQLDriverConnect(). Einige Anwendungen, z. B. jene in einer Kerberos-Umgebung, erfordern eventuell, dass ein Benutzer eine Verbindung zu einem DB2 UDB-Server ohne Angabe von Benutzer-ID oder Kennwort herstellen muss. Wenn die Anwendung die Option SQL_DRIVER_NO_PROMPT im SQLDriverConnect()-Aufruf verwendet, wird die Herstellung der Verbindung ohne Benutzerauthentifizierung versucht. Dieses Schlüsselwort ist in diesem Fall nicht erforderlich. Bei einer Anwendung eines anderen Herstellers mit einer anderen Ebene der Eingabeaufforderung als SQL_DRIVER_NO_PROMPT öffnet CLI ein Fenster, um die fehlenden Informationen anzufordern. Wird Trusted_Connection in der Eingabeverbindungszeichenfolge für SQLDriverConnect() auf 'Yes' gesetzt ("Trusted_Connection=Yes"), ignoriert CLI jede Zeichenfolge mit Benutzer-ID oder Kennwort (einschließlich leere Zeichenfolgen) aus der Verbindungszeichenfolge und die Ebene der Eingabeaufforderung für die Verbindungsfunktion. CLI verwendet den zurzeit authentifizierten Benutzer beim Versuch, eine Verbindung zur Datenbank herzustellen. Wenn der Verbindungsversuch fehlschlägt, wird der Benutzer dazu aufgefordert, die Benutzer-ID und das Kennwort einzugeben. Dieses Schlüsselwort wird nur in der Verbindungszeichenfolge für die Einstellung SQLDriverConnect() verwendet. Eine Einstellung in der Datei db2cli.ini hat keine Auswirkung. Diagnosetabellenaktualisierung für die Funktion SQLDescribeParam (CLI) Die Funktion SQLDescribeParam() gibt die Beschreibung einer Parametermarke zurück, die einer vorbereiteten SQL-Anweisung zugeordnet ist. Bei SQLSTATE HYC00 wurde die Diagnosetabelle aktualisiert. Diagnose Tabelle 24. SQLSTATE-Werte für SQLDescribeParam +--------+-------------------+----------------------------------------+ | SQLSTA | Beschreibung | Erläuterung | | TE-Wer | | | | t | | | +--------+-------------------+----------------------------------------+ | HYC00 | Treiber ist nicht | Die gespeicherten Prozeduren der | | | funktionsfähig. | Schemafunktion sind auf dem Server | | | | nicht zugänglich. Installieren Sie die | | | | gespeicherten Prozeduren der | | | | Schemafunktion auf dem Server, und | | | | stellen Sie sicher, dass sie | | | | zugänglich sind. | +--------+-------------------+----------------------------------------+ Asynchrone Ausführung der CLI (Call Level Interface) Die DB2 CLI (DB2 Call Level Interface) kann eine Untermenge von Funktionen asynchron ausführen. Der DB2 CLI-Treiber gibt die Steuerung nach dem Aufruf der Funktion, jedoch vor der Beendung ihrer Ausführung, an die Anwendung zurück. Die Funktion gibt bei jedem Aufruf SQL_STILL_EXECUTING zurück, bis ihre Ausführung beendet ist. Danach gibt sie einen anderen Wert zurück (z. B. SQL_SUCCESS). Die asynchrone Ausführung ist nur unter Single-Thread-Betriebssystemen von Vorteil. Anwendungen, die unter Multithread-Betriebssystemen ausgeführt werden, sollten Funktionen in separaten Threads ausführen. Die asynchrone Ausführung ist für diejenigen Funktionen möglich, die normalerweise eine Anforderung an den Server senden und anschließend auf eine Antwort warten. Statt zu warten, gibt eine asynchron ausgeführte Funktion die Steuerung an die Anwendung zurück. Die Anwendung kann anschließend andere Tasks ausführen, oder sie kann die Steuerung an das Betriebssystem zurückgeben und die Funktion mit Hilfe eines Interrupts wiederholt abfragen, bis ein anderer Rückkehrcode als SQL_STILL_EXECUTING zurückgegeben wird. Die Unterstützung für eine asynchrone Ausführung der CLI ist ab Version 8.2 FixPak 1 (äquivalent zu Version 8.1 FixPak 8) in DB2 Universal Database (UDB) enthalten. Die Dokumentation zu dieser Funktion finden Sie unter der URL-Adresse http://publib.boulder.ibm.com/infocenter/db2v7luw/index.jsp in Information - Unterstützung für DB2 UDB Version 7. Alle Informationen in der Dokumentation zu Version 7 gelten für Versionen ab Version 8.2 FixPak 1 (äquivalent zu Version 8.1 FixPak 8). Information - Unterstützung für DB2 Version 8 enthält keine Dokumentation zu dieser Funktion. Verbindungsattribut SQL_ATTR_PING_DB SQL_ATTR_PING_DB (DB2 CLI Version 8.2) SQL_ATTR_PING_DB ist eine 32-Bit-Ganzzahl, die mit der Funktion SQLGetConnectAttr() verwendet wird, um die Antwortzeit des Netzwerks bei einer vorhandenen Verbindung zwischen dem DB2 UDB-Client und dem DB2 UDB-Server abzurufen. Die Antwortzeit wird in Mikrosekunden zurückgemeldet. Wenn die Datenbank vorher eine Verbindung hergestellt und diese freigegeben hat, wird der Wert 0 zurückgemeldet. Wenn die Verbindung von der Anwendung geschlossen wurde, wird der SQLSTATE-Wert 08003 zurückgemeldet. Dieses Verbindungsattribut kann von SQLGetConnectAttr() zurückgegeben werden, Es kann jedoch nicht mit Hilfe von SQLSetConnectAttr() gesetzt werden. Wenn Sie versuchen, dieses Attribut festzulegen, wird der SQLSTATE-Wert HYC00 (Treiber ist nicht funktionsfähig) zurückgegeben. Funktion SQLBindParameter (CLI) In der Dokumentation zur Funktion SQLBindParameter ist die Beschreibung im Abschnitt zum Eingabeparameter falsch. Die richtige Beschreibung muss wie folgt lauten: Eingabeparameter Der Wert 0 für ColumnSize bedeutet, dass DB2 CLI die maximale Länge für den SQL-Typ verwendet, der als Größe für den Spaltenparameter oder für den Parameter für gespeicherte Prozedur angegeben wird. DB2 CLI führt alle erforderlichen Konvertierungen unter Verwendung dieser Größe aus. Funktion SQLMoreResults (CLI) In der Dokumentation zur Funktion SQLMoreResults ist das Anweisungsattribut SQL_ATTR_ROW_ARRAY_SIZE falsch angegeben. Das richtige Anweisungsattribut muss SQL_ATTR_PARAMSET_SIZE lauten. Der Abschnitt zur Verwendung muss wie folgt lauten: Diese Funktion gibt mehrere Ergebnismengen sequenziell zurück, wenn Folgendes ausgeführt wird: * Abfrage mit Parameterangaben und mit einer Feldgruppe von Eingabeparameterwerten, die mit dem Anweisungsattribut SQL_ATTR_PARAMSET_SIZE und mit SQLBindParameter() eingegeben werden Zusätzliche Umgebungsattribute Die folgenden Attribute sind CLI-Verbindungsattribute und werden außerdem als CLI-Umgebungsattribute unterstützt: * SQL_ATTR_INFO_ACCTSTR * SQL_ATTR_INFO_APPLNAME * SQL_ATTR_INFO_USERID * SQL_ATTR_INFO_WRKSTNNAME Informationen zu diesen Attributen finden Sie in der Dokumentation zu den CLI-Verbindungsattributen in DB2 Information - Unterstützung oder in CLI Guide and Reference Volume 2. Voraussetzung für dynamische verschiebbare Cursor Zum Aktualisieren und Löschen von Zeilen in der Ergebnismenge eines dynamischen verschiebbaren Cursors muss die Anweisung UPDATE oder DELETE alle Spalten von mindestens einem eindeutigen Schlüssel in der Basistabelle einschließen. Dies kann der Primärschlüssel oder ein beliebiger anderer eindeutiger Schlüssel sein. CLI/ODBC-Konfigurationsschlüsselwort RetCatalogAsCurrServer Beschreibung des Schlüsselworts Katalogfunktionen geben für die Katalogspalten nicht den Nullwert sondern den Wert für CURRENT SERVER zurück. Syntax für das Schlüsselwort der db2cli.ini: RetCatalogAsCurrServer= 0 | 1 Standardeinstellung: Wenn das Ziel-DBMS für die Katalogspalten einen Nullwert zurückgibt, wird der Wert für CURRENT SERVER nicht ersetzt. Hinweise: Wenn die Katalogfunktionen für das Ziel-DBMS einen Nullwert für die Katalogspalten zurückgeben, und wenn Sie den Wert für RetCatalogAsCurrServer auf 1 setzen, gibt das DBMS stattdessen den Wert für CURRENT SERVER zurück. * 0 = Katalogfunktionen geben für die Katalogspalten den Nullwert zurück (Standardeinstellung). * 1 = Katalogfunktionen geben für die Katalogspalten nicht den Nullwert sondern den Wert für CURRENT SERVER zurück Beispiel: Die Katalogfunktion SQLTables() gibt eine Ergebnismenge zurück, in der die Werte für die Spalte TABLE_CAT Nullwerte sind. Wenn der Wert für RetCatalogAsCurrServer auf 1 gesetzt wird, gibt das DBMS den Wert für CURRENT SERVER in der Spalte TABLE_CAT zurück. Anmerkung: Dieses Schlüsselwort wird von DB2 UDB für Linux, UNIX(R) und Windows(R) ab Version 8.2 FixPak 3 (äquivalent zu Version 8.1 FixPak 10) unterstützt. CLI/ODBC-Konfigurationsschlüsselwort ReceiveTimeout Beschreibung des Schlüsselworts Geben Sie die Zeit in Sekunden an, die auf eine Antwort vom Server über eine hergestellte Verbindung gewartet werden soll, bevor der Versuch beendet wird und ein Fehler auf Grund der Zeitlimitüberschreitung bei der Datenübertragung generiert wird. Syntax für das Schlüsselwort der db2cli.ini: ReceiveTimeout = 0 | 1 | 2 | ... | 32767 Standardeinstellung: Der Client wartet unbestimmte Zeit auf eine Antwort vom Server über eine hergestellte Verbindung. Funktional entsprechendes Verbindungsattribut: SQL_ATTR_RECEIVE_TIMEOUT Hinweise: Der Standardwert 0 gibt an, dass der Client unbestimmte Zeit auf eine Antwort wartet. Die Zeitlimitüberschreitung bei Empfang hat während des Verbindungsaufbaus keine Auswirkungen. Sie wird nur für TCP/IP unterstützt und wird für jedes andere Protokoll ignoriert. Verbindungsattribut SQL_ATTR_RECEIVE_TIMEOUT SQL_ATTR_RECEIVE_TIMEOUT (DB2 CLI Version 8) Ein ganzzahliger 32-Bit-Wert, der die Anzahl Sekunden angibt, die ein Client auf eine Antwort vom Server über eine hergestellte Verbindung wartet, bevor der Versuch beendet wird und ein Fehler auf Grund der Zeitlimitüberschreitung bei der Datenübertragung generiert wird. Der Standardwert 0 gibt an, dass der Client unbestimmte Zeit auf eine Antwort wartet. Die Zeitlimitüberschreitung bei Empfang hat während des Verbindungsaufbaus keine Auswirkungen. Sie wird nur für TCP/IP unterstützt und wird für jedes andere Protokoll ignoriert. Als unterstützte Werte gelten ganze Zahlen von 0 bis 32767. CLI/ODBC-Konfigurationsschlüsselwort Reopt Beschreibung des Schlüsselworts Ermöglicht die Abfrageoptimierung oder -reoptimierung für SQL-Anweisungen, die spezielle Register oder Parametermarken haben. Syntax für das Schlüsselwort der db2cli.ini: Reopt = 2 | 3 | 4 Standardeinstellung: Während der Ausführungszeit einer Abfrage wird keine Abfrageoptimierung durchgeführt. Die vom Compiler ausgewählten Standardschätzwerte werden für spezielle Register oder Parametermarken verwendet. Funktional entsprechendes Anweisungs- und Verbindungsattribut: SQL_ATTR_REOPT Hinweise: Die Optimierung wird durchgeführt, wenn an Stelle der vom Compiler ausgewählten Standardschätzwerte die Werte verwendet werden, die während der Ausführungszeit der Abfrage für die speziellen Register und Parametermarken verfügbar sind. Die gültigen Werte des Schlüsselwerts lauten wie folgt: * 2 = SQL_REOPT_NONE. Dies ist der Standardwert. Während der Ausführungszeit einer Abfrage wird keine Abfrageoptimierung durchgeführt. Die vom Compiler ausgewählten Standardschätzwerte werden für spezielle Register oder Parametermarken verwendet. Der "NULLID"-Standardpaketsatz wird für die Ausführung dynamischer SQL-Anweisungen verwendet. * 3 = SQL_REOPT_ONCE. Die Abfrageoptimierung wird während der Ausführungszeit einer Abfrage einmal durchgeführt, und zwar bei der ersten Ausführung der Abfrage. Es wird der "NULLIDR1"-Paketsatz verwendet, der mit der Bindeoption REOPT ONCE gebunden ist. * 4 = SQL_REOPT_ALWAYS. Die Abfrageoptimierung oder -reoptimierung wird während der Ausführungszeit einer Abfrage bei jeder Ausführung der Abfrage durchgeführt. Es wird der "NULLIDRA"-Paketsatz verwendet, der mit der Bindeoption REOPT ALWAYS gebunden ist. "NULLIDR1" und "NULLIDRA" sind reservierte Paketsatznamen, bei deren Verwendung REOPT ONCE und REOPT ALWAYS entsprechend impliziert sind. Diese Paketsätze müssen mit den folgenden Befehlen explizit erstellt werden: db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA Wenn sowohl das Schlüsselwort Reopt als auch das Schlüsselwort CurrentPackageSet angegeben sind, hat CurrentPackageSet Vorrang. Anweisungs- und Verbindungsattribut SQL_ATTR_REOPT SQL_ATTR_REOPT (DB2 CLI Version 8) Ein ganzzahliger 32-Bit-Wert, der die Abfrageoptimierung für SQL-Anweisungen ermöglicht, die spezielle Register oder Parametermarken enthalten. Die Optimierung wird durchgeführt, wenn an Stelle der vom Compiler ausgewählten Standardschätzwerte die Werte verwendet werden, die während der Ausführungszeit einer Abfrage für spezielle Register und Parametermarken verfügbar sind. Die gültigen Werte des Attributs lauten wie folgt: * 2 = SQL_REOPT_NONE. Dies ist der Standardwert. Während der Ausführungszeit einer Abfrage wird keine Abfrageoptimierung durchgeführt. Die vom Compiler ausgewählten Standardschätzwerte werden für spezielle Register oder Parametermarken verwendet. Der "NULLID"-Standardpaketsatz wird für die Ausführung dynamischer SQL-Anweisungen verwendet. * 3 = SQL_REOPT_ONCE. Die Abfrageoptimierung wird während der Ausführungszeit einer Abfrage einmal durchgeführt, und zwar bei der ersten Ausführung der Abfrage. Es wird der "NULLIDR1"-Paketsatz verwendet, der mit der Bindeoption REOPT ONCE gebunden ist. * 4 = SQL_REOPT_ALWAYS. Die Abfrageoptimierung oder -reoptimierung wird während der Ausführungszeit einer Abfrage bei jeder Ausführung der Abfrage durchgeführt. Es wird der "NULLIDRA"-Paketsatz verwendet, der mit der Bindeoption REOPT ALWAYS gebunden ist. "NULLIDR1" und "NULLIDRA" sind reservierte Paketsatznamen, bei deren Verwendung REOPT ONCE und REOPT ALWAYS entsprechend impliziert sind. Diese Paketsätze müssen mit den folgenden Befehlen explizit erstellt werden: db2 bind db2clipk.bnd collection NULLIDR1 db2 bind db2clipk.bnd collection NULLIDRA SQL_ATTR_REOPT und SQL_ATTR_CURRENT_PACKAGE_SET schließen sich gegenseitig aus. Wenn also eines dieser Attribute gesetzt ist, ist das andere Attribut nicht zulässig. CLI/ODBC-Konfigurationsschlüsselwort CurrentPackageSet Beschreibung des Schlüsselworts Setzt die Anweisung SET CURRENT PACKAGESET nach jedem Verbindungsaufbau ab. Syntax für das Schlüsselwort der db2cli.ini: CurrentPackageSet = schemaname Standardeinstellung: Die Klausel ist nicht angehängt. Funktional entsprechendes Verbindungsattribut: SQL_ATTR_CURRENT_PACKAGE_SET Hinweise: Diese Option setzt die SQL-Anweisung SET CURRENT PACKAGESET mit dem Wert CurrentPackageSet ab, sobald eine Verbindung zu einer Datenbank hergestellt wurde. Die Klausel ist standardmäßig nicht angehängt. Die SQL-Anweisung SET CURRENT PACKAGESET legt den Schemanamen (Objektgruppen-ID) fest, mit dem das Paket für nachfolgende SQL-Anweisungen ausgewählt wird. CLI/ODBC-Anwendungen setzen dynamische SQL-Anweisungen ab. Mit dieser Option können Sie die Zugriffsrechte steuern, mit denen diese Anweisungen ausgeführt werden: * Wählen Sie ein Schema aus, das bei der Ausführung von SQL-Anweisungen in CLI/ODBC-Anwendungen verwendet werden soll. * Stellen Sie sicher, dass die Objekte im Schema die gewünschten Zugriffsrechte haben, und führen Sie anschließend eine erneute Bindeoperation aus. * Geben Sie dieses Schema in der Option CurrentPackageSet an. Die SQL-Anweisungen in den CLI/ODBC-Anwendungen werden jetzt unter dem angegebenen Schema ausgeführt und verwenden die dort definierten Zugriffsrechte. Die folgenden Paketsatznamen sind reserviert: "NULLID", "NULLIDR1", "NULLIDRA". Wenn sowohl das Schlüsselwort Reopt als auch das Schlüsselwort CurrentPackageSet angegeben sind, hat CurrentPackageSet Vorrang. Verbindungsattribut SQL_ATTR_CURRENT_PACKAGE_SET SQL_ATTR_CURRENT_PACKAGE_SET (DB2 CLI Version 5) Eine auf Null endende Zeichenfolge, die den Schemanamen (Objektgruppen-ID) angibt, mit dem das Paket für nachfolgende SQL-Anweisungen ausgewählt wird. Durch das Setzen dieses Attributs wird die SQL-Anweisung SET CURRENT PACKAGESET abgesetzt. Wenn dieses Attribut gesetzt wird, bevor eine Verbindung hergestellt wurde, wird die SQL-Anweisung SET CURRENT PACKAGESET abgesetzt, sobald eine Verbindung hergestellt wird. CLI/ODBC-Anwendungen setzen dynamische SQL-Anweisungen ab. Mit diesem Verbindungsattribut können Sie die Zugriffsrechte steuern, mit denen diese Anweisungen ausgeführt werden: * Wählen Sie ein Schema aus, das bei der Ausführung von SQL-Anweisungen in CLI/ODBC-Anwendungen verwendet werden soll. * Stellen Sie sicher, dass die Objekte im Schema die gewünschten Zugriffsrechte haben, und führen Sie anschließend eine erneute Bindeoperation aus. In der Regel werden dabei die CLI-Pakete (sqllib/bnd/db2cli.lst) unter Verwendung der Option COLLECTION gebunden. Weitere Informationen hierzu finden Sie in der Dokumentation zum Befehl BIND. * Geben Sie dieses Schema in der Option CURRENTPACKAGESET an. Die SQL-Anweisungen in den CLI/ODBC-Anwendungen werden jetzt unter dem angegebenen Schema ausgeführt und verwenden die dort definierten Zugriffsrechte. Das Setzen des CLI/ODBC-Konfigurationsschlüsselworts CURRENTPACKAGESET ist eine alternative Methode zur Angabe des Schemanamens. Die folgenden Paketsatznamen sind reserviert: "NULLID", "NULLIDR1", "NULLIDRA". SQL_ATTR_REOPT und SQL_ATTR_CURRENT_PACKAGE_SET schließen sich gegenseitig aus. Wenn also eines dieser Attribute gesetzt ist, ist das andere Attribut nicht zulässig. Schlüsselwort MapBigintCDefault für die CLI/ODBC-Konfiguration Beschreibung des Schlüsselworts Geben Sie den Standard-C-Typ der BIGINT-Spalten und der BIGINT-Parametermarken an. Syntax für das Schlüsselwort der db2cli.ini: MapBigintCDefault = 0 | 1 | 2 Standardeinstellung: Die Standard-C-Typ-Darstellung für BIGINT-Daten ist SQL_C_BIGINT. Hinweise: MapBigintCDefault steuert den C-Typ, der verwendet wird, wenn SQL_C_DEFAULT für BIGINT-Spalten und für BIGINT-Parametermarken angegeben wird. Dieses Schlüsselwort sollte vor allem für Microsoft-Anwendungen eingesetzt werden, z. B. für die Anwendung Microsoft Access, die keine 8-Byte-Ganzzahlen verarbeiten kann. Setzen Sie MapBigintCDefault wie folgt: * 0 - für die SQL_C_BIGINT-Standard-C-Typ-Darstellung * 1 - für eine SQL_C_CHAR-C-Typ-Darstellung * 2 - für eine SQL_C_WCHAR-C-Typ-Darstellung Dieses Kennwort wirkt sich auf das Verhalten von CLI-Funktionen aus, bei denen SQL_C_DEFAULT als C-Typ angegeben werden kann, z. B. SQLBindParameter(), SQLBindCol() und SQLGetData(). Schlüsselwort DescribeOutputLevel für die CLI/ODBC-Konfiguration Beschreibung des Schlüsselworts Legt die Stufe der DESCRIBE-Daten der Ausgabespalte fest, die vom CLI-Treiber bei PREPARE- oder DESCRIBE-Anforderungen angefordert werden. Syntax für das Schlüsselwort der db2cli.ini: DescribeOutputLevel = 0 | 1 | 2 | 3 Standardeinstellung: Anforderung der DESCRIBE-Daten, die in Stufe 2 der Tabelle 25 aufgelistet sind. Hinweise: Dieses Schlüsselwort steuert die Datenmenge, die der CLI-Treiber bei einer PREPARE- oder DESCRIBE-Anforderung anfordert. Standardmäßig gibt der Server bei Empfang einer DESCRIBE-Anforderung die Informationen zurück, die in Stufe 2 der Tabelle 25 für die Ergebnismengenspalten aufgelistet sind. Möglicherweise benötigt eine Anwendung jedoch nicht alle Informationen, oder sie benötigt zusätzliche Informationen. Wenn das Schlüsselwort DescribeOutputLevel auf eine Stufe gesetzt wird, die dem Bedarf der Clientanwendung entspricht, wird möglicherweise die Leistung gesteigert, da die zwischen dem Client und dem Server übertragenen DESCRIBE-Daten auf die Mindestmenge begrenzt sind, die für die Anwendung erforderlich ist. Wenn DescribeOutputLevel auf einen zu niedrigen Wert gesetzt wird, kann sich dies auf die Funktionalität der Anwendung auswirken (in Abhängigkeit von den Anforderungen der Anwendung). Die CLI-Funktionen zum Abrufen der DESCRIBE-Informationen schlagen in diesem Fall möglicherweise nicht fehl, die zurückgegebenen Daten sind jedoch möglicherweise unvollständig. Folgende Einstellungen für DescribeOutputLevel werden unterstützt: * 0 - Es werden keine DESCRIBE-Informationen an die Clientanwendung zurückgegeben. * 1 - DESCRIBE-Informationen, die in Stufe 1 kategorisiert werden (siehe Tabelle 25), werden an die Clientanwendung zurückgegeben. * 2 - (Standardeinstellung) DESCRIBE-Informationen, die in Stufe 2 kategorisiert werden (siehe Tabelle 25), werden an die Clientanwendung zurückgegeben. * 3 - DESCRIBE-Informationen, die in Stufe 3 kategorisiert werden (siehe Tabelle 25), werden an die Clientanwendung zurückgegeben. In der folgenden Tabelle sind die Felder aufgeführt, aus denen die DESCRIBE-Informationen bestehen, die der Server bei Empfang einer PREPARE- oder DESCRIBE-Anforderung zurückgibt. Diese Felder werden in Stufen gruppiert, und das Schlüsselwort DescribeOutputLevel für die CLI/ODBC-Konfiguration steuert, welche Stufen von DESCRIBE-Informationen der CLI-Treiber anfordert. Anmerkung: Nicht alle Stufen von DESCRIBE-Informationen werden von allen DB2-Servern unterstützt. Auf den folgenden DB2-Servern werden alle Stufen von DESCRIBE-Informationen unterstützt: DB2 Universal Database (UDB) für Linux, UNIX und Windows ab Version 8, DB2 UDB für z/OS ab Version 8 und DB2 UDB für iSeries ab Version 5 Release 3. Alle übrigen DB2-Server unterstützten für DescribeOutputLevel nur die Einstellung 2 oder 0. Tabelle 25. Stufen der DESCRIBE-Informationen +-----------------------+----------------------+----------------------+ | Stufe 1 | Stufe 2 | Stufe 3 | +-----------------------+----------------------+----------------------+ | SQL_DESC_COUNT | Alle Felder der | Alle Felder der | | SQL_COLUMN_COUNT | Stufe 1 | Stufen 1 | | SQL_DESC_TYPE | und: | und 2 und: | | SQL_DESC_CONCISE_TYPE | SQL_DESC_NAME | SQL_DESC_BASE_COLUMN | | SQL_COLUMN_LENGTH | SQL_DESC_LABEL | _NAME | | SQL_DESC_OCTET_LENGTH | SQL_COLUMN_NAME | SQL_DESC_UPDATABLE | | SQL_DESC_LENGTH | SQL_DESC_UNNAMED | SQL_DESC_AUTO_UNIQUE | | SQL_DESC_PRECISION | SQL_DESC_TYPE_NAME | _VALUE | | SQL_COLUMN_PRECISION | SQL_DESC_DISTINCT_TY | SQL_DESC_SCHEMA_NAME | | SQL_DESC_SCALE | PE | SQL_DESC_CATALOG_NAM | | SQL_COLUMN_SCALE | SQL_DESC_REFERENCE_T | E | | SQL_DESC_DISPLAY_SIZE | YPE | SQL_DESC_TABLE_NAME | | SQL_DESC_NULLABLE | SQL_DESC_STRUCTURED_ | SQL_DESC_BASE_TABLE_ | | SQL_COLUMN_NULLABLE | TYPE | NAME | | SQL_DESC_UNSIGNED | SQL_DESC_USER_TYPE | | | SQL_DESC_SEARCHABLE | SQL_DESC_LOCAL_TYPE_ | | | SQL_DESC_LITERAL_SUFF | NAME | | | IX | SQL_DESC_USER_DEFINE | | | SQL_DESC_LITERAL_PREF | D_ | | | IX | TYPE_CODE | | | SQL_DESC_CASE_SENSITI | | | | VE | | | | SQL_DESC_FIXED_PREC_S | | | | CALE | | | +-----------------------+----------------------+----------------------+ Anwendungsentwicklung: Programmieren von Clientanwendungen Konnektivität des Typs 4 mit dem DB2 Universal JDBC-Treiber zu DB2 für VM/VSE nicht unterstützt Der DB2 Universal JDBC-Treiber unterstützt Konnektivität des Typs 4 zu DB2 für VM/VSE-Datenbanken nicht. In den Themen zum Konfigurieren der Windows Java-Umgebung und zum Installieren des DB2 Universal JDBC-Treibers im Handbuch Application Development Guide: Programming Client Applications und in Information - Unterstützung von DB2 UDB wird fälschlicherweise angegeben, dass der DB2 Universal JDBC-Treiber Konnektivität des Typs 4 zu DB2 für VM/VSE-Datenbanken unterstützt. Lastausgleich für DB2 Universal JDBC-Treiber über Verbindungskonzentrator und Sysplex Java-Anwendungen, die über die DB2 Universal JDBC-Treiber Type 4-Konnektivität auf DB2 UDB für z/OS(R)-Server zugreifen, können die zugehörigen Verbindungskonzentrator- und Sysplex-Funktionen für den Lastausgleich nutzen. Diese Funktionen ähneln den Verbindungskonzentrator- und Sysplex-Funktionen für Lastausgleich von DB2 Connect. Der Verbindungskonzentrator für den DB2 Universal JDBC-Treiber kann die Ressourcen reduzieren, die DB2 UDB für z/OS(R)-Datenbankserver zur Unterstützung einer großen Anzahl Clientanwendungen benötigen. Dies geschieht, indem viele Verbindungsobjekte dieselbe physische Verbindung verwenden dürfen. Dadurch verringert sich die Gesamtzahl physischer Verbindungen zum Datenbankserver. Der Sysplex-Lastausgleich für DB2 Universal JDBC-Treiber kann die Verfügbarkeit einer Gruppe mit gemeinsamer Datennutzung verbessern, da der Treiber häufige Statusinformationen zu den Mitgliedern einer solchen Gruppe erhält. Der Treiber bestimmt anhand dieser Informationen das Mitglied der Gruppe mit gemeinsamer Datennutzung, an das die nächste Transaktion weitergeleitet werden soll. Über den Sysplex-Lastausgleich stellen der DB2 UDB für z/OS-Server und der Workload Manager für z/OS (WLM) sicher, dass die Last zwischen Mitgliedern der Gruppe mit gemeinsamer Datennutzung effizient verteilt und dass die Last bei Ausfall eines Mitglieds einer Gruppe mit gemeinsamer Datennutzung an die anderen Mitglieder dieser Gruppe übertragen wird. Der DB2 Universal JDBC-Treiber verwendet Transportobjekte und einen globalen Transportobjektpool, damit der Verbindungskonzentrator- und Sysplex-Lastausgleich unterstützt wird. Für jede physische Verbindung zum Datenbankserver gibt es ein einziges Transportobjekt. Wenn Sie den Verbindungskonzentrator- und Sysplex-Lastausgleich aktivieren, können Sie die maximale Anzahl physischer Verbindungen zum Datenbankserver zu einem beliebigen Zeitpunkt festlegen, indem Sie die maximale Anzahl Transportobjekte festlegen. Für die Anzahl Transportobjekte legen Sie auf Treiberebene mit Hilfe der Konfigurationsmerkmale des DB2 Universal JDBC-Treibers Grenzen fest. Auf Verbindungsebene aktivieren und inaktivieren Sie für den DB2 Universal JDBC-Treiber den Verbindungskonzentrator- und Sysplex-Lastausgleich und legen Grenzen für die Anzahl Transportobjekte fest. Dazu verwenden Sie die DataSource-Merkmale. Sie können den globalen Transportobjektpool auf eine der folgenden Arten überwachen: * Verwendung von Traces, die Sie unter Verwendung der Konfigurationsmerkmale des DB2 Universal JDBC-Treibers starten * Verwendung einer Anwendungsprogrammierschnittstelle Konfigurationsmerkmale des DB2 Universal JDBC-Treibers für den Verbindungskonzentrator- und Sysplex-Lastausgleich Jedes der folgenden Konfigurationsmerkmale wird für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. db2.jcc.dumpPool Gibt zusätzlich zur geschriebenen Zusammenfassungsstatistik die Statistiktypen an, die für globale Transportpoolereignisse geschrieben wurden. Der globale Transportpool wird für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Der Datentyp von db2.jcc.dumpPool ist eine ganze Zahl (int.). Die Konfigurationsmerkmale db2.jcc.dumpPoolStatisticsOnSchedule und db2.jcc.dumpPoolStatisticsOnScheduleFile müssen für das Schreiben von Statistiken ebenfalls festgelegt werden, noch bevor Statistiken geschrieben werden. Sie können für das Merkmal db2.jcc.dumpPool folgende Statistiktypen angeben: * DUMP_REMOVE_OBJECT (hexadezimal: X'01', dezimal: 1) * DUMP_GET_OBJECT (hexadezimal: X'02', dezimal: 2) * DUMP_WAIT_OBJECT (hexadezimal: X'04', dezimal: 4) * DUMP_SET_AVAILABLE_OBJECT (hexadezimal: X'08', dezimal: 8) * DUMP_CREATE_OBJECT (hexadezimal: X'10', dezimal: 16) * DUMP_SYSPLEX_MSG (hexadezimal: X'20', dezimal: 32) * DUMP_POOL_ERROR (hexadezimal: X'80', dezimal: 128) Wenn Sie einen Trace für mehrere Ereignistypen durchführen möchten, fügen Sie die Werte für diese Ereignistypen hinzu. Nehmen Sie z. B. einmal an, Sie möchten einen Trace für die Ereignisse DUMP_GET_OBJECT und DUMP_CREATE_OBJECT durchführen. Die numerischen Entsprechungen dieser Werte sind 2 und 16. Also geben Sie als Wert für db2.jcc.dumpPool die Zahl 18 an. Der Standardwert ist 0, d. h., für den globalen Transportpool werden nur Zusammenfassungstatistiken geschrieben. db2.jcc.dumpPoolStatisticsOnSchedule Gibt in der Maßeinheit Sekunden an, wie oft Transportpoolstatistiken in die Datei geschrieben werden, die mit dem Konfigurationsmerkmal db2.jcc.dumpPoolStatisticsOnScheduleFile angegeben wurde. Der globale Transportpool wird für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Der Standardwert lautet -1, d. h., die Statistikdaten für den globalen Transportpool werden nicht überschrieben. db2.jcc.dumpPoolStatisticsOnScheduleFile Gibt den Namen der Datei an, in die die Statistikdaten für den globalen Transportpool geschrieben werden. Der globale Transportpool wird für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Wenn das Konfigurationsmerkmal db2.jcc.dumpPoolStatisticsOnScheduleFile nicht angegeben ist, werden die Statistikdaten für den globalen Transportpool nicht geschrieben. db2.jcc.maxTransportObjectIdleTime Gibt die Zeitspanne in Sekunden an, die ein nicht verwendetes Transportobjekt im globalen Transportobjektpool bleibt, bis es aus dem Pool gelöscht werden kann. Transportobjekte werden für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Der Standardwert für das Konfigurationsmerkmal db2.jcc.maxTransportObjectIdleTime beträgt 60. Wenn Sie das Konfigurationsmerkmal b2.jcc.maxTransportObjectIdleTime auf einen Wert unter 0 setzen, werden nicht verwendete Transportobjekte sofort aus dem Pool gelöscht. Diese Aktion wird nicht empfohlen, da sie hohe Leistungseinbußen verursachen kann. db2.jcc.maxTransportObjectWaitTime Gibt die Höchstdauer in Sekunden an, die eine Anwendung auf ein Transportobjekt wartet, falls der Wert für db2.jcc.maxTransportObjects erreicht wurde. Transportobjekte werden für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Wenn eine Anwendung länger wartet als im Wert für db2.jcc.maxTransportObjectWaitTime angegeben, löst der globale Transportobjektpool eine SQLException aus. Der Standardwert für das Konfigurationsmerkmal db2.jcc.maxTransportObjectWaitTime beträgt -1. Ein negativer Wert bedeutet, dass Anwendungen unbegrenzte Zeit warten. db2.jcc.maxTransportObjects Gibt die Obergrenze für die Anzahl Transportobjekte in einem globalen Transportobjektpool für den Verbindungskonzentrator- und Sysplex-Lastausgleich an. Wenn die Anzahl Transportobjekte im Pool den Wert für db2.jcc.maxTransportObjects erreicht, werden Transportobjekte aus dem Pool gelöscht, die nicht länger als im Wert für db2.jcc.maxTransportObjectIdleTime angegeben verwendet wurden. Der Standardwert für das Konfigurationsmerkmal db2.jcc.maxTransportObjects beträgt -1. Dies bedeutet, dass es für die Anzahl Transportobjekte im globalen Transportobjektpool keinen Grenzwert gibt. db2.jcc.minTransportObjects Gibt die Untergrenze für die Anzahl Transportobjekte in einem globalen Transportobjektpool für den Verbindungskonzentrator- und Sysplex-Lastausgleich an. Wenn eine JVM erstellt wird, sind im Pool keine Transportobjekte vorhanden. Transportobjekte werden dem Pool bei Bedarf hinzugefügt. Nach Erreichen des Werts für db2.jcc.minTransportObjects unterschreitet die Anzahl Transportobjekte im globalen Transportobjektpool für die Lebensdauer der entsprechenden JVM nie den Wert für db2.jcc.minTransportObjects. Der Standardwert für das Konfigurationsmerkmal db2.jcc.minTransportObjects beträgt 0. Alle Werte kleiner-gleich 0 bedeuten, dass der globale Transportobjektpool leer werden kann. DataSource-Merkmale für den DB2 Universal JDBC-Treiber zum Verbindungskonzentrator- und Sysplex-Lastausgleich Jedes der folgenden DataSource-Merkmale für den DB2 Universal JDBC-Treiber wird für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. enableConnectionConcentrator Gibt an, ob die Verbindungskonzentratorfunktion des DB2 Universal JDBC-Treibers aktiviert ist. Die Verbindungskonzentratorfunktion ist nur für Verbindungen zu DB2 UDB für z/OS-Server verfügbar. Der Datentyp des Merkmals enableConnectionConcentrator ist Boolean. Der Standardwert ist false. Wenn jedoch enableSysplexWLB auf true gesetzt ist, lautet der Standardwert true. enableSysplexWLB Gibt an, ob die Sysplex-Lastausgleichsfunktion des DB2 Universal JDBC-Treibers aktiviert ist. Die Sysplex-Lastausgleichsfunktion ist nur für Verbindungen zu DB2 UDB für z/OS-Servern verfügbar. Der Datentyp des Merkmals enableSysplexWLB ist Boolean. Der Standardwert ist false. Wenn enableSysplexWLB jedoch auf true gesetzt ist, wird enableConnectionConcentrator standardmäßig auf true gesetzt. maxTransportObjects Gibt die maximale Anzahl Transportobjekte an, die für alle Verbindungen mit dem zugeordneten DataSource-Objekt verwendet werden können. Transportobjekte werden für den Verbindungskonzentrator- und Sysplex-Lastausgleich verwendet. Der Wert für maxTransportObjects wird ignoriert, falls das Merkmal enableConnectionConcentrator oder enableSysplexWLB nicht so eingestellt ist, dass die Verwendung des Verbindungskonzentrator- und Sysplex-Lastausgleichs aktiviert ist. Der Datentyp dieses Merkmals ist eine ganze Zahl (int.). Wenn der Wert für maxTransportObjects nicht erreicht wurde und wenn im globalen Transportobjektpool kein Transportobjekt verfügbar ist, erstellt der Pool ein neues Transportobjekt. Wenn der Wert für maxTransportObjects erreicht ist, wartet die Anwendung während der Zeitspanne, die im Konfigurationsmerkmal db2.jcc.maxTransportObjectWaitTime angegeben ist. Wenn diese Zeitspanne vorbei ist und im Pool immer noch kein Transportobjekt verfügbar ist, löst der Pool eine SQLException aus. Das Merkmal maxTransportObjects überschreibt das Konfigurationsmerkmal db2.jcc.maxTransportObjects nicht. Das Merkmal maxTransportObjects wirkt sich nicht auf Verbindungen von anderen DataSource-Objekten aus. Wenn der Wert für maxTransportObjects größer ist als der Wert für db2.jcc.maxTransportObjects, erhöht der Wert für maxTransportObjects den Wert für db2.jcc.maxTransportObjects nicht. Der Standardwert für das Merkmal maxTransportObjects beträgt -1. Dies bedeutet, dass die Anzahl der Transportobjekte für DataSource nur durch den Wert für db2.jcc.maxTransportObjects für den Treiber begrenzt wird. Beispiel für die Aktivierung der Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber bei WebSphere Application Server Die folgende Vorgehensweise ist ein Beispiel für die Aktivierung der Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber bei WebSphere(R) Application Server. Voraussetzungen Servervoraussetzungen: * WLM für z/OS * DB2 UDB für OS/390(R) und z/OS ab Version 7 Clientvoraussetzungen: * DB2 Universal JDBC-Treiber mit FixPak 10 * WebSphere(R) Application Server ab Version 5.1 Vorgehensweise Gehen Sie wie folgt vor, um die Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber bei WebSphere Application Server zu aktivieren: 1. Überprüfen Sie, ob der DB2 Universal JDBC-Treiber die richtige Stufe aufweist, damit er die Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion unterstützt. Setzen Sie dazu an den Befehlszeilenprozessor unter z/OS oder in den System Services unter UNIX(R) den folgenden Befehl ab: java com.ibm.db2.jcc.DB2Jcc -version Suchen Sie in der Ausgabe eine Zeile ähnlich der Folgenden: [ibm][db2][jcc] Driver: IBM DB2 JDBC Universal Driver Architecture n n Dabei steht n für eine Versionsnummer ab 2.7. 2. Setzen Sie die Konfigurationsmerkmale für den DB2 Universal JDBC-Treiber so, dass der Verbindungskonzentrator- und Sysplex-Lastausgleich für alle DataSource-Exemplare aktiviert wird, die unter dem Treiber erstellt werden. Legen Sie die Konfigurationsmerkmale in der Datei DB2JccConfiguration.properties fest. a. Erstellen Sie eine Datei mit dem Namen DB2JccConfiguration.properties, oder editieren Sie die vorhandene Datei DB2JccConfiguration.properties. b. Legen Sie die folgenden Konfigurationsmerkmale fest: * db2.jcc.minTransportObjects * db2.jcc.maxTransportObjects * db2.jcc.maxTransportObjectWaitTime * db2.jcc.dumpPool * db2.jcc.dumpPoolStatisticsOnScheduleFile Starten Sie mit Einstellungen ähnlich den Folgenden: db2.jcc.minTransportObjects=0 db2.jcc.maxTransportObjects=1500 db2.jcc.maxTransportObjectWaitTime=-1 db2.jcc.dumpPool=0 db2.jcc.dumpPoolStatisticsOnScheduleFile= /home/WAS/logs/srv1/poolstats c. Fügen Sie den Verzeichnispfad für die Datei DB2JccConfiguration.properties dem Klassenpfad des DB2 Universal JDBC-Treibers für WebSphere Application Server hinzu. 3. Legen Sie die Datenquellenmerkmale für den DB2 Universal JDBC-Treiber so fest, dass die Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion aktiviert ist. Legen Sie in der WebSphere Application Server-Verwaltungskonsole die folgenden Merkmale für die Datenquelle fest, die die Anwendung zum Herstellen der Verbindung zum Datenbankserver verwendet: * enableSysplexWLB * enableConnectionConcentrator * maxTransportObjects Angenommen, Sie möchten sowohl die Verbindungskonzentratorfunktion als auch die Sysplex-Lastausgleichsfunktion aktivieren. Starten Sie mit Einstellungen ähnlich den Folgenden: Tabelle 26. Beispiel für Einstellungen von Datenquellenmerkmalen für die Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber +-------------------------+-------------------------------------------+ | Merkmal Einstellung | +-------------------------+-------------------------------------------+ | enableSysplexWLB true1 | +-------------------------+-------------------------------------------+ | maxTransportObjects 100 | +---------------------------------------------------------------------+ | Anmerkungen: | | 1. Das Merkmal enableConnectionConcentrator ist standardmäßig auf | | true gesetzt, da das Merkmal enableSysplexWLB auf true gesetzt ist. | +---------------------------------------------------------------------+ 4. Starten Sie WebSphere Application Server erneut. Methoden zur Überwachung der Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber Zur Überwachung der Verbindungskonzentrator- und Sysplex-Lastausgleichsfunktion für den DB2 Universal JDBC-Treiber müssen Sie den globalen Transportobjektpool überwachen. Sie können den globalen Transportobjektpool auf eine der folgenden Arten überwachen: * Verwendung von Traces, die Sie über die Einstellung der Konfigurationsmerkmale des DB2 Universal JDBC-Treibers starten * Verwendung einer Anwendungsprogrammierschnittstelle Konfigurationsmerkmale zur Überwachung des globalen Transportobjektpools Die Konfigurationsmerkmale db2.jcc.dumpPool, db2.jcc.dumpPoolStatisticsOnSchedule und db2.jcc.dumpPoolStatisticsOnScheduleFile steuern die Traceverarbeitung des globalen Transportobjektpools. Zum Beispiel führen die folgenden Konfigurationsmerkmale dazu, dass Sysplex-Fehlernachrichten und Nachrichten über Speicherauszugspoolfehler alle 60 Sekunden in eine Datei mit dem Namen /home/WAS/logs/srv1/poolstats geschrieben werden: db2.jcc.dumpPool=DUMP_SYSPLEX_MSG|DUMP_POOL_ERROR db2.jcc.dumpPoolStatisticsOnSchedule=60 db2.jcc.dumpPoolStatisticsOnScheduleFile=/home/WAS/logs/srv1/poolstats Ein Eintrag in der Poolstatistikdatei sieht wie folgt aus: uhrzeit Scheduled PoolStatistics npr:2575 nsr:2575 lwroc:439 hwroc:1764 coc:372 aooc:362 rmoc:362 nbr:2872 tbt:857520 tpo:10 Die Felder haben die folgenden Bedeutungen: npr Gesamtzahl der Anforderungen, die der DB2 Universal JDBC-Treiber seit der Erstellung des Pools an diesen gesendet hat. nsr Anzahl der erfolgreichen Anforderungen, die der DB2 Universal JDBC-Treiber an den Pool seit der Erstellung des Pools gesendet hat. Eine erfolgreiche Anforderung bedeutet, dass der Pool ein Objekt zurückgegeben hat. lwroc Anzahl der Objekte, die wiederverwendet wurden, jedoch nicht im Pool waren. Dieser Fall kann eintreten, wenn ein Verbindungsobjekt an einer Transaktionsgrenze ein Transportobjekt freigibt. Wenn das Verbindungsobjekt später ein Transportobjekt benötigt und wenn das ursprüngliche Transportobjekt von keinem anderen Verbindungsobjekt verwendet wurde, kann das Verbindungsobjekt dieses Transportobjekt verwenden. hwroc Anzahl der Objekte, die aus dem Pool wiederverwendet wurden. coc Anzahl der seit der Poolerstellung vom DB2 Universal JDBC-Treiber erstellten Objekte. aooc Anzahl der Objekte, die die im Konfigurationsmerkmal db2.jcc.maxTransportObjectIdleTime angegebene Leerlaufzeit überschritten haben und aus dem Pool gelöscht wurden. rmoc Anzahl der Objekte, die seit der Poolerstellung aus dem Pool gelöscht wurden. nbr Anzahl der Anforderungen, die der DB2 Universal JDBC-Treiber an den Pool gesendet hat und die der Pool wegen bereits belegter maximaler Kapazität blockiert hat. Eine blockierte Anforderung kann erfolgreich sein, falls ein Objekt an den Pool zurückgegeben wird, bevor der Konfigurationswert für db2.jcc.maxTransportObjectWaitTime überschritten und eine Ausnahmebedingung ausgelöst wird. tbt Gesamtzeit in Millisekunden, während der der Pool Anforderungen blockiert hat. Wenn die Anwendung mehrere Threads verwendet, kann diese Zeitdauer viel größer sein als die Ausführungszeit der Anwendung. tpo Anzahl der Objekte, die sich momentan im Pool befinden. Anwendungsprogrammierschnittstellen zur Überwachung des globalen Transportobjektpools Sie können Anwendungen schreiben, um Statistikdaten zum globalen Transportobjektpool zu erfassen. Derartige Anwendungen erstellen Objekte in der Klasse DB2PoolMonitor und rufen Daten zum Pool mit Hilfe von Methoden ab. Der folgenden Code erstellt z. B. ein Objekt zur Überwachung des globalen Transportobjektpools: import com.ibm.db2.jcc.DB2PoolMonitor; DB2PoolMonitor transportObjectPoolMonitor = DB2PoolMonitor.getPoolMonitor (DB2PoolMonitor.TRANSPORT_OBJECT); Nach der Erstellung des DB2PoolMonitor-Objekts können Sie die folgenden Methoden verwenden, um den globalen Transportobjektpool zu überwachen. getMonitorVersion Format: public int getMonitorVersion() Ruft die Version der DB2PoolMonitor-Klasse ab, die mit dem DB2 Universal JDBC-Treiber ausgeliefert wird. totalRequestsToPool Format: public int totalRequestsToPool() Ruft die Gesamtzahl der Anforderungen ab, die der DB2 Universal JDBC-Treiber seit der Poolerstellung an den Pool gesendet hat. successfullRequestsFromPool Format: public int successfullRequestsFromPool() Ruft die Anzahl erfolgreicher Anforderungen ab, die der DB2 Universal JDBC-Treiber seit der Poolerstellung an den Pool gesendet hat. Eine erfolgreiche Anforderung bedeutet, dass der Pool ein Objekt zurückgegeben hat. numberOfRequestsBlocked Format: public int numberOfRequestsBlocked() Ruft die Anzahl der Anforderungen ab, die der DB2 Universal JDBC-Treiber an den Pool gesendet hat und die der Pool wegen bereits belegter maximaler Kapazität blockiert hat. Eine blockierte Anforderung kann erfolgreich sein, falls ein Objekt an den Pool zurückgegeben wird, bevor der Konfigurationswert für db2.jcc.maxTransportObjectWaitTime überschritten und eine Ausnahmebedingung ausgelöst wird. totalTimeBlocked Format: public long totalTimeBlocked() Ruft die Gesamtzeit in Millisekunden ab, während der der Pool Anforderungen blockiert hat. Wenn die Anwendung mehrere Threads verwendet, kann diese Zeitdauer viel größer sein als die Ausführungszeit der Anwendung. lightWeightReusedObjectCount Format: public int lightWeightReusedObjectCount() Ruft die Anzahl der Objekte ab, die wiederverwendet wurden, jedoch nicht im Pool waren. Dieser Fall kann eintreten, wenn ein Verbindungsobjekt an einer Transaktionsgrenze ein Transportobjekt freigibt. Wenn das Verbindungsobjekt später ein Transportobjekt benötigt und wenn das ursprüngliche Transportobjekt von keinem anderen Verbindungsobjekt verwendet wurde, kann das Verbindungsobjekt dieses Transportobjekt verwenden. heavyWeightReusedObjectCount Format: public int heavyWeightReusedObjectCount() Ruft die Anzahl der Objekte ab, die aus dem Pool wiederverwendet wurden. createdObjectCount Format: public int createdObjectCount() Ruft die Anzahl der seit der Poolerstellung vom DB2 Universal JDBC-Treiber erstellten Objekte ab. agedOutObjectCount Format: public int agedOutObjectCount() Ruft die Anzahl der Objekte ab, die die im Konfigurationsmerkmal db2.jcc.maxTransportObjectIdleTime angegebene Leerlaufzeit überschritten haben und aus dem Pool gelöscht wurden. removedObjectCount Format: public int removedObjectCount() Ruft die Anzahl der Objekte ab, die seit der Poolerstellung aus dem Pool gelöscht wurden. totalPoolObjects Format: public int totalPoolObjects() Anzahl der Objekte, die sich momentan im Pool befinden. CLI/ODBC-Konfigurationsschlüsselwort OleDbReportIsLongForLongTypes Das Schlüsselwort OleDbReportIsLongForLongTypes wird für die folgenden Datenbankserver unterstützt: * DB2 UDB für z/OS Version 6 mit PTF UQ93891 * DB2 UDB für z/OS Version 7 mit PTF UQ93889 * DB2 UDB für z/OS Version 8 mit PTF UQ93890 * DB2 UDB für Linux, UNIX und Windows ab Version 8.2 (äquivalent zu Version 8.1 FixPak 7) Beschreibung des Schlüsselworts Bewirkt, dass OLE DB LONG-Datentypen mit DBCOLUMNFLAGS_ISLONG markiert. Syntax für das Schlüsselwort der db2cli.ini: OleDbReportIsLongForLongTypes = 0 | 1 Funktional entsprechendes Anweisungsattribut: SQL_ATTR_REPORT_ISLONG_FOR_LONGTYPES_OLEDB Standardeinstellung: Für LONG-Typen (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC und LONG VARGRAPHIC FOR BIT DATA) ist das Flag DBCOLUMNFLAGS_ISLONG nicht gesetzt. Dadurch können die Spalten ggf. in der WHERE-Klausel verwendet werden. Hinweise: CCE (Client Cursor Engine) von OLE DB und CommandBuilder von OLE DB .NET Data Provider generieren Aktualisierungs- und Löschanweisungen auf der Basis von Spalteninformationen, die von IBM DB2 OLE DB Provider bereitgestellt werden. Wenn die generierte Anweisung in der WHERE-Klausel einen LONG-Typ enthält, schlägt die Anweisung fehl, da LONG-Typen bei einer Suche mit Gleichheitsoperator nicht verwendet werden können. Wenn Sie das Schlüsselwort OleDbReportIsLongForLongTypes auf 1 setzen, meldet IBM DB2 OLE DB Provider LONG-Typen (LONG VARCHAR, LONG VARCHAR FOR BIT DATA, LONG VARGRAPHIC und LONG VARGRAPHIC FOR BIT DATA) über das gesetzte Flag DBCOLUMNFLAGS_ISLONG zurück. Dadurch wird verhindert, dass die Spalten mit LONG-Typen in der WHERE-Klausel verwendet werden. CLI/ODBC-Konfigurationsschlüsselwort OleDbSQLColumnsSortByOrdinal Das Schlüsselwort OleDbSQLColumnsSortByOrdinal wird von den folgenden Datenbankservern unterstützt: * DB2 UDB für z/OS Version 6 mit PTF UQ93891 * DB2 UDB für z/OS Version 7 mit PTF UQ93889 * DB2 UDB für z/OS Version 8 mit PTF UQ93890 * DB2 UDB für Linux, UNIX und Windows ab Version 8.2 (äquivalent zu Version 8.1 FixPak 7) Beschreibung des Schlüsselworts Bewirkt, dass IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) von OLE DB eine Zeilengruppe zurückgibt, die nach der Spalte ORDINAL_POSITION sortiert ist. Syntax für das Schlüsselwort der db2cli.ini: OleDbSQLColumnsSortByOrdinal = 0 | 1 Funktional entsprechendes Anweisungsattribut: SQL_ATTR_SQLCOLUMNS_SORT_BY_ORDINAL_OLEDB Standardeinstellung: IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) gibt die Zeilengruppe nach den Spalten TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME und COLUMN_NAME sortiert zurück. Hinweise: Die Microsoft OLE DB-Spezifikation erfordert, dass IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) die Zeilengruppe nach den Spalten TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME und COLUMN_NAME sortiert zurückgibt. IBM DB2 OLE DB Provider entspricht der Spezifikation. Allerdings wurden Anwendungen, die den Microsoft ODBC Bridge-Provider (MSDASQL) verwenden, normalerweise so codiert, dass die Zeilengruppe nach ORDINAL_POSITION sortiert wird. Wenn Sie das Schlüsselwort OleDbSQLColumnsSortByOrdinal auf 1 setzen, gibt der Provider eine Zeilengruppe zurück, die nach ORDINAL_POSITION sortiert ist. Eigenschaftsgruppe DB2 Data Source für IBM DB2 OLE DB Provider IBM DB2 OLE DB Provider hat eine neue Eigenschaftsgruppe hinzugefügt: DB2 Data Source. Diese Eigenschaftsgruppe für DB2 Data Source ist DBPROPSET_DB2DATASOURCE. Die GUID für die Eigenschaftsgruppe lautet wie folgt: {0x8a80412a,0x7d94,0x4fec,{0x87,0x3e,0x6c,0xd1,0xcd,0x42,0x0d,0xcd}} DBPROPSET_DB2DATASOURCE weist drei Merkmale auf: * DB2PROP_REPORTISLONGFORLONGTYPES * DB2PROP_RETURNCHARASWCHAR * DB2PROP_SORTBYORDINAL DB2PROP_REPORTISLONGFORLONGTYPES #define DB2PROP_REPORTISLONGFORLONGTYPES 4 Eigenschaftsgruppe: DB2 Data Source Eigenschaftsset: DB2PROPSET_DATASOURCE Typ: VT_BOOL Typischer Schreib-/Lesezugriff: R/W Beschreibung: IsLong für LONG-Typen zurückmelden CCE (Client Cursor Engine) von OLE DB und CommandBuilder von OLE DB .NET Data Provider generieren Aktualisierungs- und Löschanweisungen auf der Basis von Spalteninformationen, die von IBM DB2 OLE DB Provider bereitgestellt werden. Wenn die generierte Anweisung in der WHERE-Klausel einen LONG-Typ enthält, schlägt die Anweisung fehl, da LONG-Typen bei einer Suche mit Gleichheitsoperator nicht verwendet werden können. Tabelle 27. Werte für DB2PROP_REPORTISLONGFORLONGTYPES +----------------+----------------------------------------------------+ | Werte | Bedeutung | +----------------+----------------------------------------------------+ | VARIANT_TRUE | IBM DB2 OLE DB Provider meldet LONG-Typen (LONG | | | VARCHAR, LONG VARCHAR FOR BIT DATA, LONG | | | VARGRAPHIC und LONG VARGRAPHIC FOR BIT DATA) über | | | das gesetzte Flag DBCOLUMNFLAGS_ISLONG zurück. | | | Dadurch wird verhindert, dass die Spalten mit | | | LONG-Typen in der WHERE-Klausel verwendet werden. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | DBCOLUMNFLAGS_ISLONG ist für LONG VARCHAR, LONG | | | VARCHAR FOR BIT DATA, LONG VARGRAPHIC und LONG | | | VARGRAPHIC FOR BIT DATA nicht gesetzt. Dies ist | | | der Standardwert. | +----------------+----------------------------------------------------+ DB2PROP_RETURNCHARASWCHAR #define DB2PROP_RETURNCHARASWCHAR 2 Eigenschaftsgruppe: DB2 Data Source Eigenschaftsset: DB2PROPSET_DATASOURCE Typ: VT_BOOL Typischer Schreib-/Lesezugriff: R/W Beschreibung: Char als WChar zurückgeben Tabelle 28. Werte für DB2PROP_RETURNCHARASWCHAR +----------------+----------------------------------------------------+ | Werte | Bedeutung | +----------------+----------------------------------------------------+ | VARIANT_TRUE | OLE DB beschreibt Spalten des Typs CHAR, VARCHAR, | | | LONG VARCHAR oder CLOB als DBTYPE_WSTR. Die | | | Codepage der in ISequentialStream implizierten | | | Daten ist UCS-2. Dies ist der Standardwert. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | OLE DB beschreibt Spalten des Typs CHAR, VARCHAR, | | | LONG VARCHAR oder CLOB als DBTYPE_STR. Die | | | Codepage der in ISequentialStream implizierten | | | Daten ist die lokale Codepage des Clients. | +----------------+----------------------------------------------------+ DB2PROP_SORTBYORDINAL #define DB2PROP_SORTBYORDINAL 3 Eigenschaftsgruppe: DB2 Data Source Eigenschaftsset: DB2PROPSET_DATASOURCE Typ: VT_BOOL Typischer Schreib-/Lesezugriff: R/W Beschreibung: Nach Ordinalzahl sortieren Die Microsoft OLE DB-Spezifikation erfordert, dass IDBSchemaRowset::GetRowset(DBSCHEMA_COLUMNS) die Zeilengruppe nach den Spalten TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME und COLUMN_NAME sortiert zurückgibt. IBM DB2 OLE DB Provider entspricht der Spezifikation. Allerdings wurden Anwendungen, die den Microsoft ODBC Bridge-Provider (MSDASQL) verwenden, normalerweise so codiert, dass die Zeilengruppe nach ORDINAL_POSITION sortiert wird. Tabelle 29. Werte für DB2PROP_SORTBYORDINAL +----------------+----------------------------------------------------+ | Werte | Bedeutung | +----------------+----------------------------------------------------+ | VARIANT_TRUE | Der Provider gibt eine Zeilengruppe zurück, die | | | nach ORDINAL_POSITION sortiert ist. | +----------------+----------------------------------------------------+ | VARIANT_FALSE | Der Provider gibt eine Zeilengruppe zurück, die | | | nach TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME und | | | COLUMN_NAME sortiert ist. Dies ist der | | | Standardwert. | +----------------+----------------------------------------------------+ Falsche URL-Syntax im Syntaxdiagramm für DB2Binder Im Thema "Installieren des allgemeinen DB2-Treibers", ist im Syntaxdiagramm für DB2Binder die URL-Syntax für den allgemeinen DB2-JDBC-Treiber falsch definiert. Die richtige Darstellung der URL-Syntax für DB2Binder sehen Sie im folgenden Diagramm: Syntax für DB2Binder +----------------------------------------------------------------------+ | >>-java--com.ibm.db2.jcc.DB2Binder------------------------------> | | | | >---url jdbc:db2://server-+---------+-/datenbank----------------> | | '-:--port-' | | | | >---user benutzer-id---password kennwort------------------------> | | | | >--+------------------+--+-------------------------------+------> | | '--size ganze-zahl-' '--collection objektgruppenname-' | | | | >--+-------------------------------+--+-------+---------------->< | | | .-,------------. | '--help-' | | | V | | | | '--tracelevel ---trace-option-+-' | +----------------------------------------------------------------------+ Datenweiterleitung bei Clients mit DB2 Universal JDBC-Treiber Die Funktion für automatische Clientweiterleitung in DB2 Universal Database (UDB) für Linux, UNIX und Windows ermöglicht die Wiederherstellung von Clientanwendungen, nachdem die Verbindung zum Server unterbrochen wurde, so dass die Anwendungen nach minimaler Ausfallzeit weiterarbeiten können. Immer wenn ein Server gesperrt wird, empfängt jeder Client, der mit diesem Server verbunden ist, einen Kommunikationsfehler, der die Verbindung beendet und zu einem Anwendungsfehler führt. Wenn die Verfügbarkeit wichtig ist, sollte eine redundante Installation oder eine Funktionsübernahme eingerichtet sein. (Die Funktionsübernahme ist die Fähigkeit des Servers, bei einem Ausfall eines anderen Servers dessen Aufgaben zu übernehmen.) In jedem Fall versucht der Client mit dem DB2 Universal JDBC-Treiber, die Verbindung zu einem neuen Server oder zum ursprünglichen Server wiederherzustellen, der möglicherweise auf einem Knoten mit Funktionsübernahme aktiv ist. Wenn die Verbindung wiederhergestellt wird, empfängt die Anwendung eine SQL-Ausnahmebedingung, die ihr das Fehlschlagen der Transaktion mitteilt, die Anwendung kann jedoch mit der nächsten Transaktion fortfahren. Einschränkungen * Die Unterstützung für die Clientweiterleitung mit dem DB2 Universal JDBC-Treiber ist nur für Verbindungen verfügbar, die die Schnittstelle javax.sql.DataSource verwenden. * Bevor eine Clientanwendung nach einem Kommunikationsausfall wiederhergestellt werden kann, muss auf dem Server die Position eines alternativen Servers angegeben werden. Der Datenbankadministrator gibt den alternativen Server mit dem Befehl UPDATE ALTERNATE SERVER FOR DATABASE an. Vorgehensweise Nachdem der Datenbankadministrator den alternativen Serverstandort für eine bestimmte Datenbank im Serverexemplar angegeben hat, werden die Positionen des primären und des alternativen Servers beim Verbindungsaufbau an den Client zurückgegeben. Der DB2 Universal JDBC-Treiber erstellt ein Exemplar des referenzierbaren Objekts DB2ClientRerouteServerList und speichert dieses in seinem Übergangsspeicher. Bei einem Kommunikationsausfall versucht der DB2 Universal JDBC-Treiber, die Verbindung unter Verwendung der vom Server zurückgegebenen Serverinformationen wieder herzustellen. Das DataSource-Merkmal clientRerouteServerListJNDIName stellt auf dem Client zusätzliche Unterstützung für die Clientweiterleitung zur Verfügung; clientRerouteServerListJNDIName hat die folgenden zwei Funktionen: * Daten zu alternativen Servern können JVM-übergreifend persistent vorhanden sein. * Falls die erste Verbindung zum Datenbankserver fehlschlägt, wird die Position eines alternative Servers zur Verfügung gestellt. clientRerouteServerListJNDIName gibt eine JNDI-Referenz zu einem DB2ClientRerouteServerList-Exemplar in einem JNDI-Repository für Daten zu alternativen Server an. Nach erfolgreicher Herstellung der Verbindung zum primären Server werden die Daten zum alternativen Server, die von clientRerouteServerListJNDIName zur Verfügung gestellt werden, mit den Daten vom Server überschrieben. Der DB2 Universal JDBC-Treiber versucht, die aktualisierten Daten nach der Funktionsübernahme an den JNDI-Speicher weiterzugeben, falls das Merkmal clientRerouteServerListJNDIName definiert ist. Wenn clientRerouteServerListJNDIName angegeben ist, werden für die Verbindung zum primären Server Informationen verwendet, die in DB2ClientRerouteServerList angegeben sind. Wenn der primäre Server nicht angegeben ist, werden die serverName-Informationen verwendet, die auf der Datenquelle angegeben sind. DB2ClientRerouteServerList ist eine serialisierbare JavaBean mit den folgenden vier Merkmalen: * alternateServerName * alternatePortNumber * primaryServerName * primaryPortNumber Getter- und Setter-Methoden zum Zugriff auf diese Merkmale werden zur Verfügung gestellt. Die Definition der Klasse DB2ClientRerouteServerList lautet wie folgt: package com.ibm.db2.jcc; public class DB2ClientRerouteServerList implements java.io.Serializable, javax.naming.Referenceable { public String[] alternateServerName; public synchronized void setAlternateServerName(String[] alternateServer); public String[] getAlternateServerName(); public int[] alternatePortNumber; public synchronized void setAlternatePortNumber(int[] alternatePortNumberList); public int[] getAlternatePortNumber(); public synchronized void setPrimaryServerName (String primaryServerName); public String getPrimaryServerName (); public synchronized void setPrimaryPortNumber (int primaryPortNumber) public int getPrimaryPortNumber (); } Eine neue hergestellte Verbindung für Funktionsübernahme wird mit den ursprünglichen Datenquellenmerkmalen konfiguriert, mit Ausnahme des Servernamens und der Portnummer. Außerdem werden alle DB2 UDB-Sonderregister, die bei der ursprünglichen Verbindung modifiziert worden sind, in der Funktionsübernahmeverbindung vom DB2 Universal JDBC-Treiber wiederhergestellt. Bei einem Kommunikationsausfall versucht der DB2 Universal JDBC-Treiber zuerst eine Wiederherstellung für den primären Server auszuführen. Sollte dies fehlschlagen, versucht der Treiber, eine Verbindung zur alternativen Position (Funktionsübernahme) herzustellen. Nachdem erneut eine Verbindung hergestellt worden ist, sendet der Treiber eine java.sql.SQLException mit dem SQLCODE-Wert -4498 an die Anwendung, wodurch der Anwendung angezeigt wird, dass automatisch eine Verbindung zum alternativen Server wiederhergestellt worden ist. Die Anwendung kann anschließend die Transaktion wiederholen. Vorgehensweise zum persistenten Festlegen von DB2ClientRerouteServerList Gehen Sie wie folgt vor, um Speicher so zu konfigurieren, dass DB2ClientRerouteServerList persistent festgelegt wird: 1. Erstellen Sie ein Exemplar von DB2ClientRerouteServerList, und binden Sie dieses Exemplar an die JNDI-Registrierdatenbank. Beispiel: // Startkontext für Namensoperationen erstellen InitialContext registry = new InitialContext(); // DB2ClientRerouteServerList-Objekt erstellen DB2ClientRerouteServerList address=new DB2ClientRerouteServerList(); // Portnummer und Servernamen für primären Server setzen address.setPrimaryPortNumber(50000); address.setPrimaryServerName("mvs1.sj.ibm.com"); // Portnummer und Servernamen für alternativen Server setzen int[] port = {50002}; String[] server = {"mvs3.sj.ibm.com"}; address.setAlternatePortNumber(port); address.setAlternateServerName(server); registry.rebind("serverList", address); 2. Ordnen Sie den JNDI-Namen des DB2ClientRerouteServerList-Objekts dem DataSource-Merkmal clientRerouteServerListJNDIName zu. Beispiel: datasource.setClientRerouteServerListJNDIName("serverList"); Anpassen der Merkmale der DB2 Universal JDBC-Treiberkonfiguration Über die Merkmale der DB2 Universal JDBC-Treiberkonfiguration können Sie Merkmalwerte setzen, die für den gesamten Treiber gelten. Diese Einstellungen werden anwendungsübergreifend und DataSource-Exemplar-übergreifend angewendet. Sie können die Einstellungen ändern, ohne den Anwendungsquellcode oder die DataSource-Merkmale zu ändern. Die einzelnen Merkmaleinstellungen der DB2 Universal JDBC-Treiberkonfiguration weisen das folgende Format auf: merkmal=wert Wenn das Konfigurationsmerkmal mit db2.jcc.override beginnt, ist es auf alle Verbindungen anwendbar und überschreibt alle Connection- oder DataSource-Merkmale mit demselben Merkmalnamen. Wenn das Konfigurationsmerkmal mit db2.jcc oder db2.jcc.default beginnt, ist der Konfigurationsmerkmalwert ein Standardwert. Einstellungen für die Connection- oder DataSource-Merkmale überschreiben diesen Wert. Vorgehensweise Gehen Sie wie folgt vor, um Konfigurationsmerkmale festzulegen: * Definieren Sie die Konfigurationsmerkmale als Java-Systemmerkmale. Diese Einstellungen überschreiben alle anders lautenden Einstellungen. Für Standalone-Java-Anwendungen können Sie die Konfigurationsmerkmale als Java-Systemmerkmale festlegen, indem Sie bei der Ausführung des Befehls java die Option -Dmerkmal=wert angeben. * Legen Sie die Konfigurationsmerkmale in einer Ressource fest, deren Namen Sie im Java-Systemmerkmal db2.jcc.propertiesFile angeben. Sie können z. B. für den Wert db2.jcc.propertiesFile einen absoluten Pfadnamen angeben. Für Standalone-Java-Anwendungen können Sie die Konfigurationsmerkmale festlegen, indem Sie bei der Ausführung des Befehls java die Option -Ddb2.jcc.propertiesFile=pfad angeben. * Definieren Sie die Konfigurationsmerkmale in einer Ressource mit dem Namen DB2JccConfiguration.properties. Die Ressource DB2JccConfiguration.properties wird mit einer Standard-Java-Ressourcensuche gesucht. Der DB2 Universal JDBC-Treiber sucht nur nach dieser Ressource, wenn Sie das Java-Systemmerkmal db2.jcc.propertiesFile nicht gesetzt haben. DB2JccConfiguration.properties kann eine Standalone-Datei sein oder sich in einer JAR-Datei befinden. Wenn DB2JccConfiguration.properties eine Standalone-Datei ist, muss der Pfad für DB2JccConfiguration.properties in der CLASSPATH-Angabe enthalten sein. Wenn DB2JccConfiguration.properties sich in einer JAR-Datei befindet, muss diese JAR-Datei in der CLASSPATH-Angabe enthalten sein. Sie können die folgenden Konfigurationsmerkmale für DB2 Universal JDBC-Treiber festlegen. Alle Merkmale sind optional. db2.jcc.override.traceFile Aktiviert den DB2 Universal JDBC-Treibertrace für Java-Treibercode, und gibt den Namen an, auf dem die Tracedateinamen basieren. Geben Sie einen vollständig qualifizierten Dateinamen als Wert des Merkmals db2.jcc.override.traceFile an. Das Merkmal db2.jcc.override.traceFile überschreibt das Merkmal traceFile für ein Connection- oder DataSource-Objekt. Wenn Sie z. B. die folgende Einstellung für db2.jcc.override.traceFile angeben, wird die Traceverarbeitung des Java-Codes für den DB2 Universal JDBC-Treiber in einer Datei mit dem Namen /SYSTEM/tmp/jdbctrace aufgezeichnet: db2.jcc.override.traceFile=/SYSTEM/tmp/jdbctrace Sie sollten die Tracemerkmale unter Anleitung der IBM Unterstützungsfunktion festlegen. db2.jcc.sqljUncustomizedWarningOrException Gibt die Aktion an, die der DB2 Universal JDBC-Treiber ausführt, wenn eine nicht angepasste SQLJ-Anwendung aktiv ist. db2.jcc.sqljUncustomizedWarningOrException kann die folgenden Werte aufweisen: 0 Der DB2 Universal JDBC-Treiber generiert keine Warnung oder Ausnahmebedingung, wenn eine nicht angepasste SQLJ-Anwendung aktiv ist. Dies ist der Standardwert. 1 Der DB2 Universal JDBC-Treiber generiert eine Warnung, wenn eine nicht angepasste SQLJ-Anwendung aktiv ist. 2 Der DB2 Universal JDBC-Treiber generiert eine Ausnahmebedingung, wenn eine nicht angepasste SQLJ-Anwendung aktiv ist. Funktion db2secFreeToken entfernt Die Funktion db2secFreeToken (durch Token belegten Speicher freigeben) ist nicht mehr Bestandteil der Benutzerauthentifizierungs-Plug-in-API db2secGssapiServerAuthFunctions_1. Sorgfältiges Implementieren benutzerdefinierter Sicherheits-Plug-ins Die Integrität der Installation von DB2 Universal Database (UDB) kann beeinträchtigt sein, wenn die Implementierung von Sicherheits-Plug-ins nicht auf geeignete Weise codiert, geprüft und getestet wird. DB2 UDB ergreift Vorsichtsmaßnahmen gegen viele allgemein auftretende Arten von Fehlern, kann jedoch keine vollständige Integrität garantieren, wenn benutzerdefinierte Sicherheits-Plug-ins implementiert werden. Sicherheits-Plug-ins Wenn Sie Ihr eigenes Sicherheits-Plug-in verwenden, können Sie in einer CONNECT-Anweisung, die über den Befehlszeilenprozessor (CLP) oder über eine Anweisung für dynamisches SQL abgesetzt wird, eine Benutzer-ID mit bis zu 255 Zeichen verwenden. Sicherheits-Plug-in-APIs Für die APIs db2secGetGroupsForUser, db2secValidatePassword und db2secGetAuthIDs kann der Eingabeparameter dbname einen Nullwert haben, und der entsprechende Eingabeparameter dbnamelen für die Länge wird auf 0 gesetzt. Namenskonventionen für Sicherheits-Plug-ins (Linux und UNIX) .so wird nun als Dateinamenerweiterung für benutzerdefinierte Sicherheits-Plug-in-Bibliotheken auf allen Linux- und UNIX-Plattformen akzeptiert. Unter AIX können Sicherheits-Plug-in-Bibliotheken die Erweiterung .a oder .so aufweisen. Sollten beide Versionen der Plug-in-Bibliothek vorhanden sein, wird die Version mit der Erweiterung .a verwendet. Unter HP-UX auf PA-RISC können Sicherheits-Plug-in-Bibliotheken die Erweiterung .sl oder .so aufweisen. Sollten beide Versionen der Plug-in-Bibliothek vorhanden sein, wird die Version mit der Erweiterung .sl verwendet. Auf allen übrigen Linux- und UNIX-Plattformen ist .so die einzige unterstützte Dateinamenerweiterung für Sicherheits-Plug-in-Bibliotheken. Einschränkungen für Sicherheits-Plug-in-Bibliotheken Unter AIX können Sicherheits-Plug-in-Bibliotheken die Dateinamenerweiterung .a oder .so aufweisen. Der Mechanismus zum Laden der Plug-in-Bibliothek hängt von der verwendeten Erweiterung ab: Plug-in/Bibliotheken mit der Dateinamenerweiterung .a Plug-in/Bibliotheken mit der Dateinamenerweiterung .a gelten als Archive, die gemeinsam genutzte Objektelemente enthalten. Diese Elemente müssen den Namen shr.o (32 Bit) oder shr64.o (64 Bit) aufweisen. Ein einzelnes Archiv kann sowohl 32-Bit- als auch 64-Bit-Elemente enthalten, so dass es auf beiden Plattformtypen implementiert werden kann. Beispiel für die Erzeugung einer Plug-in-Bibliothek als 32-Bit-Archiv: xlc_r -qmkshrobj -o shr.o MeinPlugin.c -bE:MeinPlugin.exp ar rv MeinPlugin.a shr.o Plug-in/Bibliotheken mit der Dateinamenerweiterung .so Plug-in-Bibliotheken mit der Dateinamenerweiterung .so gelten als dynamisch ladbare gemeinsam genutzte Objekte. Ein solches Objekt ist entweder ein 32-Bit- oder ein 64-Bit-Objekt, je nachdem, welche Optionen bei seiner Erzeugung zur Kompilierung und zum Binden verwendet wurden. Beispiel für die Erzeugung einer 32-Bit-Plug-in-Bibliothek: xlc_r -qmkshrobj -o MeinPlugin.so MeinPlugin.c -bE:MeinPlugin.exp Auf allen Plattformen außer AIX wird angenommen, dass Sicherheits-Plug-in-Bibliotheken immer dynamisch ladbare gemeinsam genutzte Objekte sind. GSS-API-Plug-in-Unterstützung für den DB2 Universal JDBC-Treiber In DB2 UDB Version 8.2 für Linux, UNIX und Windows können Sie Ihre eigenen Authentifizierungsverfahren in Form von Plug-ins (ladbare Bibliotheken) erstellen. Die DB2 UDB-Steuerkomponente lädt diese Plug-ins und greift auf sie zu, um Benutzer zu authentifizieren. Der DB2 Universal JDBC-Treiber stellt Sicherheits-Plug-in-Unterstützung in DB2 UDB Version 8.2 FixPak 4 bereit, um in Java geschriebene benutzerdefinierte Anwendungen zu unterstützen. Bei Java-Anwendungen, die mit dem DB2 Universal JDBC-Treiber Plug-in-Authentifizierung ausführen, müssen Benutzer ihr eigenes Plug-in implementieren, indem sie die abstrakte Klasse com.ibm.db2.jcc.DB2JCCPlugin erweitern und die folgenden Merkmale festlegen: * Benutzer-ID (user) und Kennwort (password): Geben die für Authentifizierung verwendete Benutzerberechtigung an. * Plug-in-Name (pluginname): Gibt den Namen des serverseitigen Plug-in-Moduls an. * Sicherheitsmechanismus (securityMechanism): Muss auf Plug-in-Sicherheit gesetzt sein. * Plug-in: Gibt das Plug-in-Modul in der Clientanwendung an. Beispiel: java.util.Properties properties = new java.util.Properties(); properties.put("user", "db2admin"); properties.put("password", "admindb2"); properties.put("pluginName", "gssapi_simple"); properties.put("securityMechanism", new String(""+com.ibm.db2.jcc.DB2BaseDataSource.PLUGIN_SECURITY+"")); properties.put("plugin", new JCCSimpleGSSPlugin()); Connection con = java.sql.DriverManager.getConnection(url, properties); GSS-API-Sicherheits-Plug-ins unterstützen keine Authentifizierung mit mehreren Tokens Bei der GSS-API-Authentifizierung wird nur ein einziges Token vom Client an den Server und ein einziges Token vom Server an den Client gesendet. Diese Tokens werden auf dem Client von gss_init_sec_context() und auf dem Server von gss_accept_sec_context() abgerufen. Wenn GSS-API-Plug-ins versuchen, weitere Tokens zu senden, wird ein unerwarteter Fehler für Sicherheits-Plug-ins generiert, und die Verbindung schlägt fehl. GSS-API-Sicherheits-Plug-ins unterstützen keine Nachrichtenverschlüsselung und keine Signaturen Nachrichtenverschlüsselung und Signaturen sind in GSS-API-Sicherheits-Plug-ins nicht verfügbar. Implizite Beendung von Transaktionen in Standalone-Anwendungen Alle (normalen und abnormalen) Beendigungen machen, unabhängig vom Betriebssystem, ausstehende Arbeitseinheiten implizit rückgängig. Unterstützung verteilter Transaktionen Die Dokumentation zu neuen Funktionen für DB2 Universal Database (UDB) Version 8.2 enthält im Abschnitt zu den DB2 Universal JDBC-Treiberverbesserungen falsche Informationen zur Unterstützung von verteilten Transaktionen. Der letzte Satz dieses Abschnitts ist falsch. Richtig muss er wie folgt lauten: Ab Version 8.2 stellt DB2 UDB Unterstützung für verteilte Transaktionsverarbeitung bereit, die der XA-Spezifikation entspricht. Diese Unterstützung implementiert die JTS- (Java Transaction Service) und JTA-Spezifikationen (Java Transaction API) von Java 2 Platform Enterprise Edition (J2EE). Anwendungsentwicklung: Programmieren von Serveranwendungen Mehrere Ergebnismengen von CLR-Prozeduren Die maximale Anzahl Ergebnismengen, die von einer CLR-Prozedur (CLR - Common Language Runtime) zurückgegeben werden können, ist beschränkt. Der Grenzwert wird von der maximalen Anzahl gleichzeitig geöffneter DB2DataReader-Objekte bestimmt, die von DB2 .NET Data Provider in einer Verbindung unterstützt werden. Die Unterstützung von gleichzeitig ablaufenden aktiven Eingabeprogrammen für Daten ermöglicht es, dass mehrere DB2DataReader-Objekte in einer Verbindung geöffnet sein können. Somit können mehrere Ergebnismengen über eine CLR-Prozedur zurückgegeben werden. Modi zur Ausführungssteuerung von CLR-Routinen (Klausel EXECUTION CONTROL) Als Datenbankadministrator oder Anwendungsentwickler können Sie die Baugruppen, die den externen DB2 Universal Database-Routinen zugeordnet sind, vor unerwünschtem Zugriff schützen, indem Sie die Aktionen von Routinen während der Ausführung beschränken. DB2 .NET-CLR-Routinen (Common Language Run Time) unterstützen die Angabe eines Modus zur Ausführungssteuerung, der angibt, welche Typen von Aktionen eine Routine zur Laufzeit ausführen darf. DB2 kann während der Ausführung erkennen, ob die Routine versucht, Aktionen auszuführen, die außerhalb des Bereichs des zugehörigen Modus zur Ausführungssteuerung sind; dies kann nützlich sein, wenn Sie bestimmen wollen, ob eine Baugruppe beeinträchtigt wurde. Zum Festlegen des Modus zur Ausführungssteuerung für eine CLR-Routine geben Sie für die Routine in der Anweisung CREATE die optionale Klausel EXECUTION CONTROL an. Gültige Modi: * SAFE * FILEREAD * FILEWRITE * NETWORK * UNSAFE Wenn Sie den Modus zur Ausführungssteuerung in einer vorhandenen CLR-Routine modifizieren möchten, führen Sie die Anweisung ALTER PROCEDURE oder ALTER FUNCTION aus. Wenn die Klausel EXECUTION CONTROL für eine CLR-Routine nicht angegeben ist, wird die CLR-Routine standardmäßig unter Verwendung des restriktivsten Modus zur Ausführungssteuerung, im Modus SAFE, ausgeführt. Routinen, die mit diesem Modus zur Ausführungssteuerung erstellt werden, können nur auf Ressourcen zugreifen, die vom Datenbankmanager gesteuert werden. Weniger restriktive Modi zur Ausführungssteuerung lassen zu, dass eine Routine auf Dateien im lokalen Dateisystem (FILEREAD oder FILEWRITE) oder im Netzwerk zugreift. Der Modus zur Ausführungssteuerung UNSAFE gibt an, dass für das Verhalten der Routine keine Einschränkungen gelten sollen. Routinen, die mit dem Modus zur Ausführungssteuerung UNSAFE definiert sind, können Binärcode ausführen. Diese Steuerungsmodi stellen eine Hierarchie zulässiger Aktionen dar, und ein Modus einer höheren Ebene schließt Aktionen ein, die sich in der Hierarchie unterhalb von ihm befinden. Beispiel: Der Modus zur Ausführungssteuerung NETWORK lässt zu, dass eine Routine auf Dateien im Netzwerk, auf Dateien im lokalen Dateisystem und auf Ressourcen zugreift, die vom Datenbankmanager gesteuert werden. Verwenden Sie den restriktivsten Modus zur Ausführungssteuerung, und vermeiden Sie die Verwendung des Modus UNSAFE. Wenn DB2 UDB zur Laufzeit erkennt, dass eine CLR-Routine versucht, eine Aktion außerhalb des Geltungsbereichs seines Modus zur Ausführungssteuerung auszuführen, gibt DB2 UDB einen Fehler zurück (SQLSTATE 38501). Die Klausel EXECUTION CONTROL kann nur für CLR-Routinen angegeben werden. Der Bereich der Anwendbarkeit der Klausel EXECUTION CONTROL ist auf die .NET-CLR-Routine selbst begrenzt und kann nicht auf andere Routinen erweitert werden, die sie möglicherweise aufruft. Maximale DECIMAL-Genauigkeit und Anzahl Kommastellen in CLR-Routinen Der Datentyp DECIMAL in DB2 Universal Database (UDB) wird mit einer Genauigkeit von 31 Stellen und mit 28 Kommastellen dargestellt. Der .NET-CLR-Datentyp System.Decimal ist auf eine Genauigkeit von 29 Stellen und 28 Kommastellen begrenzt. Deshalb dürfen externe DB2 UDB-CLR-Routinen höchstens den Wert (2^96)-1 zuordnen, den höchsten Wert, der mit der Genauigkeit von 29 Stellen und mit 28 Kommastellen in einer Variablen des Datentyps System.Decimal dargestellt werden kann. DB2 UDB verursacht den Laufzeitfehler (SQLSTATE 22003, SQLCODE -413), wenn eine solche Zuordnung erfolgt. Wenn bei der Ausführung einer Anweisung zur Routinenerstellung ein Parameter mit dem Datentyp DECIMAL definiert wird, der mehr als 28 Kommastellen aufweist, verursacht DB2 UDB den Fehler (SQLSTATE 42611, SQLCODE -604). Commands Reference Verwendungsbeispiele für db2demigdbd Die folgenden Beispiele für die Verwendung von db2demigdbd sind nach Betriebssystem organisiert. Gehen Sie wie folgt vor, um Dateien von Systemdatenbankverzeichnissen unter UNIX und Linux zu demigrieren: db2demigdbd $HOME/sqllib 1 Gehen Sie wie folgt vor, um Dateien im lokalen Systemdatenbankverzeichnis unter UNIX und Linux zu demigrieren: db2demigdbd ~/user/NODE0000 1 Gehen Sie wie folgt vor, um die Dateien im Systemdatenbankverzeichnis und alle lokalen Datenbankverzeichnisdateien im Exemplar unter UNIX und Linux zu demigrieren: db2demigdbd $HOME/sqllib 2 Gehen Sie wie folgt vor, um Dateien im Systemdatenbankverzeichnis unter Windows zu demigrieren: db2demigdbd d:\sqllib\db2 1 Dabei ist db2 das aktuelle Exemplar. Gehen Sie wie folgt vor, um die Dateien im lokalen Systemdatenbankverzeichnis unter Windows zu demigrieren: db2demigdbd d:\db2\NODE0000 1 Gehen Sie wie folgt vor, um die Dateien im Systemdatenbankverzeichnis und alle lokalen Datenbankverzeichnisdateien im Exemplar unter Windows zu demigrieren: db2demigdbd d:\sqllib\db2 2 Hinweise: Wenn Sie den Befehl db2updv8 ausgeführt haben, um die Systemkataloge auf den aktuellen Stand von Version 8 zu aktualisieren, können Sie nicht mehr zu Version 8.1 zurückkehren. Korrektur des Hinweises für den Befehl db2ckbkp Die Option '-p' zeigt die Anzahl Seiten der einzelnen Objekttypen an. Die Ausgabe für den Befehl db2ckbkp mit der Option '-p' zeigt jedoch nicht die Anzahl Seiten für alle verschiedenen Objekttypen an, wenn die Sicherung für die DMS-Tabellenbereichsdaten vorgenommen wurde. In diesem Fall wird nach SQLUDMSTABLESPACEDATA lediglich die Gesamtanzahl aller Seiten angezeigt. Bei DMS-Tabellenbereichen wird für SQLUDMSLOBDATA und SQLUDMSLONGDATA null angezeigt. Es folgt ein Beispielausgabeabschnitt für db2ckbkp -p bei einer Sicherung von DMS-Tabellenbereichsdaten: SQLUDMSTABLESPACEDATA (0c): 87 SQLUDMSLOBDATA (0e): 0 SQLUDMSLONGDATA (0f): 0 Namenskonventionen für Datenbankobjekte und IDs Die folgenden Konventionen gelten für das Benennen von Datenbankmanagerobjekten wie Datenbanken und Tabellen. * Zeichenfolgen für die Namen von Datenbankmanagerobjekten können die folgenden Zeichen enthalten: a-z, A-Z, 0-9, @, # und $. * Sofern nicht anders angegeben, können Sie Namen in Kleinbuchstaben eingeben. Der Datenbankmanager verarbeitet sie jedoch so, als wenn die Namen in Großbuchstaben angegeben seien. Die Ausnahme von dieser Konvention sind Zeichenfolgen für Namen in der Systemnetzwerkarchitektur (SNA). Viele Werte sind von der Groß-/Kleinschreibung abhängig, beispielsweise die Namen der logischen Einheiten (partner_lu und local_lu). Der Name muss genau so eingegeben werden, wie er in den SNA-Definitionen angegeben ist, die diesen Begriffen entsprechen. * Ein Datenbankname oder Aliasname der Datenbank ist eine eindeutige Zeichenfolge, die maximal acht Buchstaben, Nummern oder Tastaturzeichen aus der zuvor beschriebenen Gruppe enthält. Datenbanken werden in Systemdatenbankverzeichnissen und in lokalen Datenbankverzeichnissen durch ihre Aliasnamen in einem Feld und ihre ursprünglichen Namen in einem anderen Feld katalogisiert. Bei den meisten Funktionen verwendet der Datenbankmanager den im Feld für den Aliasnamen der Datenbankverzeichnisse eingegebenen Namen. Die Ausnahmen sind CHANGE DATABASE COMMENT und CREATE DATABASE, für die ein Verzeichnispfad angegeben werden muss. * Der Name bzw. Aliasname einer Tabelle oder Sicht ist eine SQL-Kennung, die eine eindeutige, aus maximal 128 Zeichen bestehende Zeichenfolge ist. Spaltennamen können maximal 30 Zeichen lang sein. Ein vollständig qualifizierter Tabellenname besteht aus schema.tabellenname. Das Schema ist die eindeutige Benutzer-ID, unter der die Tabelle erstellt wurde. Der Schemaname für eine deklarierte temporäre Tabelle muss SESSION sein. * Lokale Aliasnamen für ferne Knoten, die im Knotenverzeichnis katalogisiert werden sollen, können maximal acht Zeichen lang sein. * Das ersten Zeichen in der Zeichenfolge muss ein alphabetisches Zeichen, @, # oder $ sein und darf keine Nummer sein. Die Buchstabenfolge SYS, DBM oder IBM am Anfang der Zeichenfolge ist ebenfalls unzulässig. Die folgenden Konventionen gelten für die Benennung von Benutzer-IDs und Authentifizierungs-IDs. * Zeichenfolgen für die Namen von Datenbankmanagerobjekten können folgende Zeichen enthalten: a-z, A-Z, 0-9, @, # und $. * Benutzer-IDs und Gruppen können auch die folgenden zusätzlichen Zeichen enthalten, wenn sie vom Sicherheits-Plug-in unterstützt werden: _, !, %, (, ), {, }, -, ., ^. * Benutzer-IDs und Gruppen, die die folgenden Zeichen enthalten, müssen durch Anführungszeichen begrenzt werden, wenn sie über den Befehlszeilenprozessor eingegeben werden: !, %, (, ), {, }, -, ., ^, * Das ersten Zeichen in der Zeichenfolge muss ein alphabetisches Zeichen, @, # oder $ sein und darf keine Nummer sein. Die Buchstabenfolge SYS, DBM oder IBM am Anfang der Zeichenfolge ist ebenfalls unzulässig. * Authentifizierungs-IDs können unter 32-Bit-Windows-Betriebssystemen maximal 30 Zeichen und unter allen anderen Betriebssystemen maximal 8 Zeichen lang sein. * Gruppen-IDs können maximal 30 Zeichen lang sein. Befehl REORGCHK Die mit dem Befehl REORGCHK verwendeten Indexstatistikformeln wurden überarbeitet. Die neuen Formeln und deren Erläuterungen müssen wie folgt lauten: * Formel F5: 100 * (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE ) / ((NLEAF - NUM EMPTY LEAFS - 1) * (INDEXPAGESIZE - 96) > MIN(50, (100 - PCTFREE)) Dabei ist LEAF_REC_OVERHEAD = 9 und DUPKEYSIZE = 5. Eine Reorganisation wird empfohlen, wenn mehr als 50 Prozent des für den Index vorgesehenen Speicherbereichs frei sind, oder wenn PCTFREE auf einer Wert größer als 50 gesetzt ist und im Index mehr als PCTFREE % Speicherplatz frei ist. Diese Formel wird nur überprüft, wenn der Wert für NLEAF - NUM EMPTY LEAFS - 1 größer 0 ist. (Vom Wert für NLEAF wird 1 abgezogen, da die letzte zugeordnete Blattseite normalerweise nicht gefüllt ist.) * Formel F6: (100 - PCTFREE) * [ Floor((100 - min(10, PCTFREE)) / 100 * (INDEXPAGESIZE - 96) / (ISIZE + NONLEAF_REC_OVERHEAD)) ** (NLEVELS - 2)] * (INDEXPAGESIZE - 96) / (KEYS * (ISIZE + LEAF_REC_OVERHEAD) + (CARD - KEYS) * DUPKEYSIZE) < 100 Dabei ist NONLEAF_REC_OVERHEAD = 12. Es wird bestimmt, ob die erneute Erstellung des Index eine Baumstruktur mit weniger Ebenen ergibt. Dazu wird die Größe des Speicherplatzes in einem Indexbaum, der eine Ebene weniger aufweist als die aktuelle Baumstruktur, mit Hilfe dieser Formel ins Verhältnis zum erforderlichen Speicherplatz gesetzt. Sollte eine Baumstruktur mit einer Ebene weniger erstellt werden können und noch PCTFREE verfügbar sein, wird eine Reorganisation empfohlen. Die tatsächliche Anzahl Indexeinträge sollte über 90 % (bzw. 100 % - PCTFREE) der Anzahl Einträge liegen, die ein Indexbaum mit NLEVELS - 1 bearbeiten kann (nur überprüft, wenn NLEVELS > 1). Anmerkung: Alle Formeln basieren auf Statistikdaten. Die Statistikdaten und die Ergebnisse aus diesen Formeln sind lediglich Schätzwerte. Sie sollten dies berücksichtigen, wenn Sie die Ergebnisse von REORGCHK prüfen. Befehl REORG INDEXES/TABLE Reorganisiert einen Index oder eine Tabelle. Die Option REORG INDEXES ALL FOR TABLE tabellenname reorganisiert alle Indizes, die für eine Tabelle definiert sind, indem sie die Indexdaten als unfragmentierte, physisch zusammenhängende Seiten erneut erstellt. Wenn Sie die Option CLEANUP ONLY der Indexoption angeben, wird eine Bereinigung ausgeführt, ohne die Indizes erneut zu erstellen. Wenn Sie versuchen, diesen Befehl auf Indizes für deklarierte temporäre Tabellen anzuwenden, wird der SQLSTATE-Wert 42995 zurückgegeben. Die Option REORG TABLE tabellenname reorganisiert eine Tabelle, indem sie die Zeilen so wiederherstellt, dass fragmentierte Daten beseitigt und Daten in kompakter Form gespeichert werden. Die Reorganisation der Tabelle wird mit einer der folgenden zwei Methoden ausgeführt: Herkömmliche Reorganisation Ermöglicht während der ersten Phasen der Reorganisation nur begrenzten Lesezugriff auf Daten. Inplace-Reorganisation Ermöglicht während der gesamten Reorganisation den Datenzugriff, ohne jedoch eine perfekte Sortierung der Daten sicherzustellen. Die Inplace-Tabellenreorganisation ist nur für Tabellen zulässig, die Indizes des Typs 2 und keine erweiterten Indizes aufweisen. Bei beiden Reorganisationstypen werden die Indizes der Tabelle nach der Reorganisation der Tabelle erneut erstellt. Beim Inplace-Verfahren wird der Index jedoch unvollständig reorganisiert, so dass Sie die Indizes möglicherweise später reorganisieren müssen, um die Indexfragmentierung zu reduzieren und Speicherbereiche von Indexobjekten freizugeben. Beispiel Bei der herkömmlichen Tabellenreorganisation (offline ausgeführter Befehl REORG TABLE) wie der Standardeinstellung in DB2 Universal Database(TM) (UDB) Version 7 geben Sie den folgenden Befehl ein: db2 reorg table employee index empid allow no access indexscan longlobdata Anmerkung: In DB2 UDB Version 8 gelten andere Standardeinstellungen. Hinweise DB2 UDB bietet zwei Verfahren zur Tabellenreorganisation: das herkömmliche Verfahren und das Inplace-Verfahren. Allgemein ist die herkömmliche Tabellenreorganisation schneller, Sie sollten diese jedoch nur anwenden, wenn die Anwendungen während der Reorganisation ohne Schreibzugriffe auf Tabellen funktionieren. Wenn die Umgebung diese Einschränkung nicht zulässt, kann die Inplace-Reorganisation trotz ihrer geringeren Geschwindigkeit im Hintergrund ausgeführt werden, während der normale Datenzugriff fortgesetzt wird. Die herkömmliche Tabellenreorganisation ist am schnellsten, besonders wenn Sie keine LOB- oder LONG-Daten reorganisieren müssen. Darüber hinaus werden die Indizes nach der Tabellenreorganisation bei der erneuten Erstellung perfekt sortiert. Anwendungen mit Lesezugriff können mit Ausnahme der letzten Reorganisationsphase auf das Original der Tabelle zugreifen, da die permanente Tabelle die Spiegelkopie der Tabelle ersetzt und die Indizes erneut erstellt werden. Die Inplace-Tabellenreorganisation ist langsamer und garantiert keine perfekt sortierten Daten. Anwendungen können jedoch während der Reorganisation auf die Tabelle zugreifen. Darüber hinaus kann die Inplace-Tabellenreorganisation unterbrochen und später von einer beliebigen Person mit entsprechender Berechtigung fortgesetzt werden, wobei der Schema- und Tabellenname verwendet werden. Aktualisierte Einschränkungen Das Dienstprogramm REORG unterstützt keine Kurznamen. * Für deklarierte temporäre Tabellen wird der Befehl REORG TABLE nicht unterstützt. * In Sichten kann der Befehl REORG TABLE nicht verwendet werden. * Die Reorganisation einer Tabelle ist nicht kompatibel mit Bereichsclustertabellen, da der Bereich der Tabelle immer ein Cluster bleibt. * Während einer Offlinetabellenreorganisation können Sie für einen Tabellenbereich, in dem sich die Tabelle befindet, keine Onlinesicherung starten. * Während einer Onlinetabellenreorganisation einer SMS-Tabelle können Sie keine Onlinesicherung für einen Tabellenbereich starten, in dem sich die entsprechende Tabelle befindet. * Während einer Onlinetabellenreorganisation einer DMS-Tabelle können Sie eine Onlinesicherung für einen Tabellenbereich starten, in dem sich die entsprechende Tabelle befindet. Während der Abschneidephase können für die Reorganisationsoperation Wartestatus für Sperren (Lock Waits) auftreten. * Der Befehl REORG TABLE kann keinen Index verwenden, der auf einer Indexerweiterung basiert. Befehl BACKUP DATABASE Hinweise Beachten Sie die folgenden Einschränkungen: * Der Start einer Onlinesicherung eines DMS-Tabellenbereichs ist zulässig, wenn eine Tabelle innerhalb desselben Tabellenbereichs online reorganisiert wird. Während der Abschneidephase können für die Reorganisationsoperation Wartestatus für Sperren (Lock Waits) auftreten. * Der Start einer Onlinesicherung eines SMS-Tabellenbereichs ist unzulässig, wenn eine Tabelle innerhalb desselben Tabellenbereichs online reorganisiert wird. Beide Operationen erfordern eine exklusive Sperre. Migrieren von Datenbanken Einschränkungen In der Dokumentation von Version 8 steht, dass keine Datenbankmigration erforderlich ist, wenn die Datenbank auf eine FixPak-Stufe von DB2 UDB Version 8 migriert wurde. Genauer gesagt ist eine Datenbankmigration zwischen FixPaks nicht erforderlich, wenn sich die Datenbank auf einer Stufe von Version 8 befindet (Version 8.1 oder 8.2 oder ein nachfolgendes FixPak). In Version 8.2 wurden Änderungen an der Verzeichnisdateistruktur der Datenbank vorgenommen, und die Migration wird automatisch ausgeführt, wenn Sie von Version 7 oder Version 8.1 zu Version 8.2 wechseln. Wenn Sie jedoch von Version 8.2 zurück zu Version 8.1 wechseln, müssen Sie db2demigdbd ausführen, um die Verzeichnisdateistruktur der Datenbank wiederherzustellen. Wenn Sie dies nicht tun, tritt bei dem Versuch, auf die Datenbank zuzugreifen, der Fehler SQL10004 auf. db2inidb - Befehl zur Initialisierung einer Spiegeldatenbank Setzen Sie den Befehl db2 connect to datenbank erst dann ab, wenn Sie den Befehl db2inidb datenbank as mirror abgesetzt haben. Wenn Sie versuchen, eine Verbindung zu einer geteilten Spiegeldatenbank herzustellen, bevor diese initialisiert wurde, werden die Protokolldateien gelöscht, die für eine aktualisierende Wiederherstellung erforderlich sind. Die Verbindung setzt die Datenbank in den Status zurück, in dem sie sich zum Zeitpunkt der Zurückstellung befand. Wenn die Datenbank zum Zeitpunkt der Zurückstellung als konsistent markiert ist, geht DB2 Universal Database davon aus, dass eine Wiederherstellung nach einem Systemabsturz nicht erforderlich ist und leert die Protokolldateien für zukünftige Verwendung. In einem solchen Fall wird bei dem Versuch, eine aktualisierende Wiederherstellung durchzuführen, ein Fehler SQL4970 generiert. Hinweis für den Befehl db2iupdt Wenn Sie ab Version 8.2 ein DB2 Universal Database-Exemplar mit dem Befehl db2iupdt aktualisieren, müssen Sie zuerst alle DB2-Prozesse stoppen, die für dieses Exemplar ausgeführt werden. Neuer Parameter für den Befehl db2sqljcustomize Für den Befehl db2sqljcustomize gibt es einen neuen Parameter. db2sqljcustomize - DB2-SQLJ-Befehl zur Profilanpassung -storebindoptions Speichert die Werte von -bindoptions und -staticpositioned im serialisierten Profil. Wenn diese Werte beim Aufruf des Tools dbsqljbind nicht angegeben werden, werden die im serialisierten Profil gespeicherten Werte verwendet. Wenn die Anpassungsfunktion mit der .grp-Datei aufgerufen wird, werden die Werte in jeder einzelnen .ser-Datei gespeichert. Die gespeicherten Werte können mit dem Tool db2sqljprint angezeigt werden. Neuer Parameter für den Befehl sqlj Für den Befehl sqlj gibt es einen neuen Parameter. sqlj - Befehl für DB2-SQLJ-Umsetzung -db2optimize Gibt an, dass das SQLJ-Umsetzungsprogramm Code für eine Verbindungskontextklasse generiert, die für DB2 Universal Database optimiert ist. Diese Option optimiert den Code für den benutzerdefinierten Kontext, jedoch nicht für den Standardkontext. Wenn Sie das SQLJ-Umsetzungsprogramm mit dieser Option ausführen, muss sich die DB2 Universal JDBC-Treiberdatei db2jcc.jar im CLASSPATH befinden, damit die generierte Java-Anwendung kompiliert werden kann. Aktualisierungen für den Befehl zur Überwachung und Fehlerbehebung (db2pd) Der DB2-Befehl zur Überwachung und Fehlerbehebung (db2pd) ruft Informationen aus den DB2 UDB-Speichergruppen ab. Der Systembefehl db2pd wurde wie folgt erweitert: Neuer Parameter -hadr Der in Version 8.2 (äquivalent zu Version 8.1 FixPak 7) eingeführte Parameter -hadr listet HADR-Informationen (High Availability Disaster Recovery) auf. Beschreibungen der einzelnen aufgelisteten Elemente finden Sie im Abschnitt zu High Availability Disaster Recovery des Handbuchs System Monitor Guide and Reference. Neuer Parameter -utilities Der in Version 8.2 (äquivalent zu Version 8.1 FixPak 7) eingeführte Parameter -utilities listet Informationen zu Dienstprogrammen auf. Beschreibungen der einzelnen ausgegebenen Elemente finden Sie im Abschnitt zu Dienstprogrammen des Handbuchs System Monitor Guide and Reference. Neuer Parameter -activestatements Der in Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) eingeführte Parameter -activestatements gibt Informationen zu aktiven Anweisungen zurück. Die folgenden Informationen wurden zurückgegeben: AppHandl Die Anwendungskennung, die die aktive Anweisung verwendet, einschließlich des Knotens und des Index. UOW-ID Für die Anwendung, die AppHandl zugeordnet ist, die Kennung der Arbeitseinheit, in der die Anweisung aktiv wurde. StmtID Die Anweisungs-ID in der Arbeitseinheit. AnchID Die ID für den Hashanker der im dynamischen Paketcache gespeicherten dynamischen SQL-Anweisungen. StmtUID Die ID für die im dynamischen Paketcache gespeicherte dynamische SQL-Anweisung, die im Hashanker eindeutig ist. EffISO Die effektive Isolationsstufe der Anweisung. EffLockTOut Der effektive Wert für das Zeitlimit für Sperre für die Anweisung. EffDegree Der effektive Grad der Parallelität der Anweisung. StartTime Die Zeit, zu der die Anweisung gestartet wurde. LastRefTime Das letzte Mal, als von einer Anwendung auf die Anweisung verwiesen wurde. Neue Option 'wait' für den Parameter -locks Ab Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) können Sie die Option wait mit dem Parameter -locks angeben, um nur Sperren mit einem Wartestatus sowie Sperren, auf die gewartet wird, zurückzugeben. Vom Parameter -applications zurückgegebene neue Felder Ab Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) gibt der Parameter -applications vier neue Felder zurück: C-AnchID Dieses neue Feld ist die ID für den Hashanker der im dynamischen Paketcache gespeicherten dynamischen SQL-Anweisungen für die aktuelle Anweisung. Der Wert für dieses Feld ist 0, wenn keine aktuelle Anweisung vorhanden ist. Das Feld für die aktuelle Hashanker-ID wird nur ausgefüllt, wenn die Anwendung eine auf die Anweisung bezogene Anforderung ausführt, wie z. B. eine FETCH-Anforderung für einen Cursor. Sobald die Anforderung verarbeitet wurde, werden die Werte auf 0 gesetzt. Auch für statische SQL-Anweisungen wird der Wert auf 0 gesetzt. C-StmtUID Dieses neue Feld ist die eindeutige ID für die im dynamischen Paketcache gespeicherten dynamischen SQL-Anweisungen im Hashanker der aktuellen Anweisung. Der Wert für dieses Feld ist 0, wenn keine aktuelle Anweisung vorhanden ist. Das Feld für die eindeutige ID der aktuellen Anweisung wird nur ausgefüllt, wenn die Anwendung eine auf die Anweisung bezogene Anforderung ausführt. Sobald die Anforderung ausgeführt wurde, werden die Werte auf 0 gesetzt. Auch für statische SQL-Anweisungen wird der Wert auf 0 gesetzt. L-AnchID Dieses neue Feld ist die Hashanker-ID der im dynamischen Paketcache gespeicherten dynamischen SQL-Anweisungen für die zuletzt ausgeführte Anweisung der Anwendung. Der Wert für dieses Feld ist 0, wenn keine zuletzt ausgeführte Anweisung vorhanden ist, wie z. B. vor der Ausführung einer dynamischen SQL-Anweisung. Der Wert wird auch für statische SQL-Anweisungen auf 0 gesetzt. Die letzte Hashanker-ID wird nach der Ausführung jeder Anforderung ausgegeben und bleibt bis zum Abschluss der jeweils nächsten zugeordneten Anforderung erhalten. L-StmtUID Dieses neue Feld ist die eindeutige ID für die im dynamischen Paketcache gespeicherten dynamischen SQL-Anweisungen im Hashanker der zuletzt ausgeführten Anweisung der Anwendung. Der Wert für dieses Feld ist 0, wenn keine zuletzt ausgeführte Anweisung vorhanden ist oder wenn die zuletzt ausgeführte Anweisung eine statische SQL-Anweisung war. Die letzte Anweisungs-ID wird ausgegeben, nachdem die aktuelle Anforderung verarbeitet wurde, und bleibt bis zum Abschluss der nächsten Anforderung erhalten. Aktualisierung zum Befehl SET CLIENT Der Befehl SET CLIENT gibt Verbindungseinstellungen für den Back-End-Prozess an. Der Befehlsparameter SYNCPOINT für diesen Befehl wird ab Version 8 ignoriert. SYNCPOINT ist jedoch aus Gründen der Abwärtskompatibilität weiterhin vorhanden. Aktualisierung zum Befehl PRECOMPILE Der Befehl PRECOMPILE verarbeitet eine Quellendatei eines Anwendungsprogramms, die eingebettete SQL-Anweisungen enthält. Es wird eine modifizierte Quellendatei generiert, die SQL-Aufrufe in der Hostprogrammiersprache enthält, und in der Datenbank wird standardmäßig ein Paket erstellt. Der Befehlsparameter SYNCPOINT für diesen Befehl wird ab Version 8 ignoriert. SYNCPOINT ist jedoch aus Gründen der Abwärtskompatibilität weiterhin vorhanden. Aktualisierung zum Befehl UPDATE HISTORY FILE Aktualisiert die Position, den Einheitentyp oder den Kommentar in einem Verlaufsdateieintrag. Der Befehlsparameter STATUS gibt für einen Eintrag einen neuen Status an. In der früheren Dokumentation steht irrtümlich, dass der Befehlsparameter STATUS den Wert "I" haben kann, womit der Eintrag als inaktiv markiert wird. Gültige Werte: A Markiert den Eintrag als aktiv. E Markiert den Eintrag als abgelaufen. Aktualisierungen zu den Befehlen EXPORT und IMPORT Der gesamte Unterabschnitt "Erforderliche Verbindung" für die Befehle EXPORT und IMPORT lautet wie folgt: Erforderliche Verbindung Datenbank. Wenn das implizite Herstellen der Verbindung aktiviert ist, wird eine Verbindung zur Standarddatenbank hergestellt. Der Dienstprogrammzugriff auf Linux-, UNIX- oder Windows-Datenbankserver von Linux-, UNIX- oder Windows-Clients aus muss über eine direkte Verbindung über die Steuerkomponente, und nicht über ein DB2 Connect-Gateway oder über eine Rückschleife erfolgen. Aktualisierung zum Befehl LOAD Die vollständigen Informationen für den AUTOSELECT-Wert des Parameters INDEXING MODE lauten wie folgt: INDEXING MODE AUTOSELECT Das Dienstprogramm LOAD wählt automatisch zwischen dem Modus REBUILD und dem Modus INCREMENTAL aus. Diese Auswahl basiert auf der Menge der geladenen Daten und auf der Tiefe der Indexbaumstruktur. Daten zur Tiefe der Indexbaumstruktur werden im Indexobjekt gespeichert. RUNSTATS ist zum Auffüllen dieser Daten nicht erforderlich. Der Standardwert für den Indexmodus lautet AUTOSELECT. Dateitypmodifikatoren für das Dienstprogramm LOAD Der Befehl SET INTEGRITY in der Beschreibung für den Modifikator "generatedoverride" wurde aktualisiert. Die Beschreibung für den Modifikator "usedefaults" wurde ebenfalls aktualisiert. Die Aktualisierungen lauten wie folgt: Tabelle 30. Gültige Dateitypmodifikatoren für das Dienstprogramm LOAD: alle Dateiformate +-------------------+-------------------------------------------------+ | Modifikator | Beschreibung | +-------------------+-------------------------------------------------+ | generatedoverride | Dieser Modifikator weist das Dienstprogramm | | | LOAD an, die vom Benutzer angegebenen Daten für | | | alle generierten Spalten in der Tabelle zu | | | akzeptieren (entgegen den normalen Regeln für | | | diese Spaltentypen). Dies ist zweckmäßig, wenn | | | Sie Daten aus anderen Datenbanksystemen | | | migrieren oder wenn Sie Daten in eine Tabelle | | | laden, die mit der Option RECOVER DROPPED TABLE | | | des Befehls ROLLFORWARD DATABASE | | | wiederhergestellt wurden. Wenn dieser | | | Modifikator verwendet wird, werden Zeilen mit | | | keinen Daten oder mit Nulldaten für eine | | | generierte Spalte zurückgewiesen, die keine | | | Nullwerte enthalten darf (SQL3116W). | | | Anmerkung: Wenn dieser Modifikator verwendet | | | wird, wird die Tabelle in den Status für | | | anstehende Überprüfung (CHECK PENDING) | | | versetzt. Geben Sie nach der Ladeoperation den | | | folgenden Befehl ein, um den Status für | | | anstehende Überprüfung für die Tabelle | | | aufzuheben, ohne die benutzerdefinierten Werte | | | zu überprüfen: | | | SET INTEGRITY FOR < tabellenname > GENERATED | | | COLUMN | | | IMMEDIATE UNCHECKED | | | Geben Sie nach der Ladeoperation den folgenden | | | Befehl ein, um den Status für anstehende | | | Überprüfung für die Tabelle aufzuheben und | | | dabei die Überprüfung für benutzerdefinierte | | | Werte zu erzwingen: | | | SET INTEGRITY FOR < tabellenname > IMMEDIATE | | | CHECKED | | | | | | Diesen Modifikator können Sie weder mit dem | | | Modifikator generatedmissing noch mit dem | | | Modifikator generatedignore verwenden. | +-------------------+-------------------------------------------------+ | usedefaults | Wenn eine Quellenspalte für eine | | | Zieltabellenspalte angegeben worden ist, diese | | | jedoch keine Daten für mindestens ein | | | Zeilenexemplar enthält, werden Standardwerte | | | geladen. Beispiele für fehlende Daten: | | | * Für DEL-Dateien: Für einen Spaltenwert sind | | | zwei Spaltenbegrenzer angegeben, die direkt | | | benachbart (",,") oder durch eine beliebigen | | | Anzahl von Leerzeichen (", ,") getrennt sind. | | | * Für DEL/ASC/WSF-Dateien: Eine Zeile weist | | | nicht genügend Spalten auf oder ist für die | | | ursprüngliche Spezifikation nicht lang genug. | | | Anmerkung: Für ASC-Dateien gelten Spaltenwerte | | | mit Nullwerten nicht explizit als fehlende | | | Werte, und für solche Spalten wird kein | | | Standardwert verwendet. Spaltenwerte mit | | | Nullwerten werden für numerische Spalten, für | | | Datums- und Zeitspalten sowie für | | | Zeitmarkenspalten als Leerzeichen dargestellt, | | | oder sie werden für eine Spalte beliebigen Typs | | | mit dem Nullanzeiger angegeben, was bedeutet, | | | dass die Spalte einen Nullwert enthält. | | | Wenn diese Option nicht verwendet wird und | | | eine Quellenspalte keine Daten für ein | | | Zeilenexemplar enthält, wird eine der folgenden | | | Aktionen ausgeführt: | | | * Für DEL/ASC/WSF-Dateien: Wenn die Spalte | | | Nullwerte enthalten kann, wird ein Nullwert | | | geladen. Wenn die Spalte keinen Nullwert | | | enthalten kann, weist das Dienstprogramm die | | | Zeile zurück. | +-------------------+-------------------------------------------------+ Dateitypmodifikatoren für das Importdienstprogramm Die Beschreibung zu den Modifikatoren "usedefaults" und "codepage=x" wurde wie folgt aktualisiert: Tabelle 31. Gültige Dateitypmodifikatoren für das Importdienstprogramm: alle Dateiformate +-------------------+-------------------------------------------------+ | Modifikator | Beschreibung | +-------------------+-------------------------------------------------+ | usedefaults | Wenn eine Quellenspalte für eine | | | Zieltabellenspalte angegeben worden ist, diese | | | jedoch keine Daten für mindestens ein | | | Zeilenexemplar enthält, werden Standardwerte | | | geladen. Beispiele für fehlende Daten: | | | * Für DEL-Dateien: Für einen Spaltenwert sind | | | zwei Spaltenbegrenzer angegeben, die direkt | | | benachbart (",,") oder durch eine beliebigen | | | Anzahl von Leerzeichen (", ,") getrennt sind. | | | * Für DEL/ASC/WSF-Dateien: Eine Zeile weist | | | nicht genügend Spalten auf oder ist für die | | | ursprüngliche Spezifikation nicht lang genug. | | | Anmerkung: Für ASC-Dateien gelten Spaltenwerte | | | mit Nullwerten nicht explizit als fehlende | | | Werte, und für solche Spalten wird kein | | | Standardwert verwendet. Spaltenwerte mit | | | Nullwerten werden für numerische Spalten, für | | | Datums- und Zeitspalten sowie für | | | Zeitmarkenspalten als Leerzeichen dargestellt, | | | oder sie werden für eine Spalte beliebigen Typs | | | mit dem Nullanzeiger angegeben, was bedeutet, | | | dass die Spalte einen Nullwert enthält. | | | Wenn diese Option nicht verwendet wird und | | | eine Quellenspalte keine Daten für ein | | | Zeilenexemplar enthält, wird eine der folgenden | | | Aktionen ausgeführt: | | | * Für DEL/ASC/WSF-Dateien: Wenn die Spalte | | | Nullwerte enthalten kann, wird ein Nullwert | | | geladen. Wenn die Spalte keinen Nullwert | | | enthalten kann, weist das Dienstprogramm die | | | Zeile zurück. | +-------------------+-------------------------------------------------+ Tabelle 32. Gültige Dateitypmodifikatoren für das Importdienstprogramm: ASCII-Dateiformate (ASC/DEL) +-------------------+-------------------------------------------------+ | Modifikator | Beschreibung | +-------------------+-------------------------------------------------+ | codepage=x | x ist eine ASCII-Zeichenfolge. Der Wert wird | | | als Codepage für die Daten in der Ausgabedatei | | | interpretiert. Zeichendaten werden beim Import | | | aus dieser Codepage in die Anwendungscodepage | | | konvertiert. | | | Es gelten die folgenden Regeln: | | | * Für reinen DBCS-Code (grafisch), gemischten | | | DBCS-Code und für EUC sind Begrenzer auf den | | | Bereich von x00 bis einschließlich x3F | | | begrenzt. | | | * nullindchar muss Symbole angeben, die sich | | | im Standard-ASCII-Zeichensatz zwischen den | | | Codepunkten x20 bis einschließlich x7F | | | befinden. Dies bezieht sich auf ASCII-Symbole | | | und -Codepunkte. | | | | | | Anmerkungen: | | | 1. Der Modifikator codepage kann nicht mit dem | | | Modifikator lobsinfile verwendet werden. | | | 2. Wenn bei der Konvertierung von der Codepage | | | der Anwendung in die Codepage der Datenbank | | | eine Datenerweiterung erfolgt, werden die Daten | | | möglicherweise abgeschnitten, und es können | | | Datenverluste auftreten. | +-------------------+-------------------------------------------------+ Befehl ATTACH Der Parameter USER des Befehls ATTACH gibt die Authentifizierungskennung an. Wenn Sie eine Verbindung zu einem DB2 Universal Database-Exemplar unter einem Windows-Betriebssystem herstellen, kann der Benutzername in einem Format angegeben werden, das mit Microsoft Windows NT Security Account Manager (SAM) kompatibel ist. Das Qualifikationsmerkmal muss ein NetBIOS-Name sein, der maximal 15 Zeichen lang ist. Beispiel: domaene\benutzer Befehl RECOVER DATABASE Im Abschnitt für Beispiele der Dokumentation zum Befehl RECOVER DATABASE für Version 8.2 sind Zeitmarken falsch als jjjj:mm:tt:hh:mm:ss formatiert. Das richtige Format muss jjjj-mm-tt-hh.mm.ss lauten. Befehl UPDATE HISTORY FILE Der Befehl UPDATE HISTORY FILE aktualisiert die Position, den Einheitentyp, den Kommentar oder den Status in einem Verlaufsdateieintrag. Aktualisierte Befehlssyntax >>-UPDATE HISTORY--+-FOR--objektteil-+--WITH--------------------> '-EID--eid--------' >--+-LOCATION--neue-position--DEVICE TYPE--neuer-einheitentyp-+->< +-COMMENT--neuer-kommentar---------------------------------+ '-STATUS--neuer-status-------------------------------------' Aktualisierte Befehlsparameter FOR objektteil Gibt die Kennung für den zu aktualisierenden Verlaufseintrag an. Diese ist eine Zeitmarke mit einer optionalen Folgenummer von 001 bis 999. Anmerkung: Dies kann nicht zur Aktualisierung des Eintragstatus verwendet werden. Geben Sie zur Aktualisierung des Eintragstatus stattdessen eine EID an. STATUS neuer-status Gibt einen neuen Status für einen Eintrag an. Nur von Sicherungseinträgen kann der Status aktualisiert werden. Gültige Werte: A Aktiv. Die meisten Einträge sind aktiv. I Inaktiv. Sicherungsimages, die sich nicht mehr in der Kette für aktive Protokolldateien befinden, werden inaktiv. E Verfallen. Sicherungsimages, die nicht mehr erforderlich sind, weil mehr als die in NUM_DB_BACKUPS angegebene Anzahl aktiver Images vorhanden sind, werden als verfallen markiert. D Sicherungsimages, die nicht mehr zur Wiederherstellung verfügbar sind, müssen als gelöscht markiert werden. db2updv8 - Befehl zur Aktualisierung der Datenbank auf die aktuelle Stufe von Version 8 Dieser Befehl aktualisiert die Systemkataloge in einer Datenbank, um die aktuelle Stufe auf die folgenden Arten zu unterstützen: * Führt neue Routinen ein, die mit dem aktuellen Datenbankmanager geliefert werden. * Katalogisiert die ODBC/CLI/JDBC-Schemaprozeduren als vertrauenswürdige Prozeduren, damit die Leistung und die Skalierbarkeit verbessert wird. * Behebt zwei typographische Fehler in den Rückgabeparametern der Tabellenfunktion SYSPROC.SNAPSHOT_QUIESCERS: * OUIESCER_TBS_ID wurde korrigiert in QUIESCER_TBS_ID * OUIESCER_STATE wurde korrigiert in QUIESCER_STATE * Behebt Spaltendeskriptoren von LOB-Spalten, so dass das Bit für "protokolliert" konsistent mit den Katalogtabellen ist. * Erstellt die Sicht SYSIBM.SYSREVTYPEMAPPINGS. * Aktualisiert die Sichtdefinitionen für SYSSTAT.COLUMNS und SYSSTAT.TABLES. * Aktualisiert die Spalte SYSCOLDIST.DISTCOUNT in aktualisierbar. * Aktualisiert die Spalte SYSINDEXES.TBSPACEID so, dass die Spaltenmarkierungen nicht gesetzt sind. * Korrigiert Parameterlängen von 17 Tabellenfunktionen. Eine vollständige Liste der Funktionen finden Sie unter Spaltenerweiterung für benutzerdefinierte Funktionen für Momentaufnahmen im Abschnitt Dokumentationsaktualisierungen | SQL-Verwaltungsroutinen der Veröffentlichung Release-Informationen Version 8.2. * Aktiviert die folgenden integrierten Routinen: * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * GET_WRAP_CFG_C * LIST_FILES_C * ODBC_DISCOVERY * HEALTH_HI_REC * EXEC_DB2_SCRIPT * HEALTH_HI_REC * EXEC_DB2_SCRIPT * ADMIN_LIST_HIST * GET_DBM_CONFIG * Ändert 33 SYSPROC-Momentaufnahme-UDFs in THREADSAFE: * SNAPSHOT_DBM * SNAPSHOT_FCM * SNAPSHOT_FCMNODE * SNAPSHOT_SWITCHES * SNAPSHOT_APPL_INFO * SNAPSHOT_APPL * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_AGENT * SNAPSHOT_SUBSECT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_DYN_SQL * SNAPSHOT_TBS * SNAPSHOT_TBS_CFG * SNAPSHOT_QUIESCERS * SNAPSHOT_CONTAINER * SNAPSHOT_RANGES * SNAPSHOT_TBREORG * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * HEALTH_TBS_INFO * HEALTH_TBS_HI * HEALTH_TBS_HI_HIS * HEALTH_CONT_INFO * HEALTH_CONT_HI * HEALTH_CONT_HI_HIS * Ändert die Parameterlängen der folgenden Funktionen: * SQLCACHE_SNAPSHOT * SNAPSHOT_APPL_INFO * SNAPSHOT_STATEMENT * SNAPSHOT_LOCKWAIT * SNAPSHOT_DATABASE * SNAPSHOT_BP * SNAPSHOT_LOCK * SNAPSHOT_TABLE * SNAPSHOT_TBREORG * SNAPSHOT_SUBSECT * SNAPSHOT_DYN_SQL * HEALTH_DBM_INFO * HEALTH_DBM_HI * HEALTH_DBM_HI_HIS * HEALTH_DB_INFO * HEALTH_DB_HI * HEALTH_DB_HI_HIS * DB_PARTITIONS * GROUPS_FOR_USER * DB_PARTITION * Ändert die folgenden Funktionen so, dass das Schema db2schema an Stelle des veralteten db2schem verwendet wird, und aktiviert sie für die Modifizierung von SQL-Daten: * SQLTABLES * SQLTABLEPRIVILEGES * SQLSTATISTICS * SQLSPECIALCOLUMNS * SQLPROCEDURES * SQLPROCEDURECOLS * SQLPRIMARYKEYS * SQLFOREIGNKEYS * SQLCOLUMNS * SQLCOLPRIVILEGES * Ändert die folgenden Funktionen so, dass das Schema db2schema an Stelle des veralteten db2schem verwendet wird: * SQLUDTS * SQLGETTYPEINFO Berechtigung SYSADM Erforderliche Verbindung Datenbank. Mit diesem Befehl stellen Sie automatisch eine Verbindung zur angegebenen Datenbank her. Befehlssyntax >>-db2updv8-- -d--datenbankname---------------------------------> >--+---------------------------------+--+-----+---------------->< '- -u--benutzer-ID-- -p--kennwort-' '- -h-' Befehlsparameter -d datenbankname Gibt den Namen der zu aktualisierenden Datenbank an. -u benutzer-ID Gibt die Benutzer-ID an. -p kennwort Gibt das Kennwort für den Benutzer an. -h Zeigt den Hilfetext an. Bei Angabe dieser Option werden alle übrigen Optionen ignoriert, und nur der Hilfetext wird angezeigt. Beispiel Nach der Installation der aktuellen Stufe (FixPak oder neue Version) können Sie den Systemkatalog in der Beispieldatenbank mit dem folgenden Befehl aktualisieren: db2updv8 -d sample Hinweise 1. Dieser Befehl kann nur für eine Datenbank verwendet werden, die unter DB2 Universal Database ab Version 8.1.2 aktiv ist. Wenn der Befehl mehrmals abgesetzt wird, werden keine Fehler ausgegeben, und die einzelnen Katalogaktualisierungen werden nur einmal angewendet. 2. Zur Aktivierung der neuen integrierten Funktionen müssen alle Anwendungen ihre Verbindungen zur Datenbank unterbrechen, und die Datenbank muss inaktiviert werden, sofern sie zuvor aktiviert war. Formatieren von Trapdateien (Windows) Für die Formatierung von Trapdateien (*.TRP) steht das neue Tool db2xprt.exe zur Verfügung. Mit diesem Tool können binäre DB2 Universal Database-Trapdateien in eine lesbare ASCII-Datei umgewandelt werden. Trapdateien befinden sich standardmäßig im Verzeichnis des Exemplars (DB2INSTPROF) oder im Verzeichnis für Diagnosedaten, wenn der Konfigurationsparameter DIAGPATH des Datenbankmanagers festgelegt wurde. Berechtigung Sie müssen über die Zugriffsberechtigung für das Verzeichnis DIAGPATH verfügen. Befehlssyntax >>-db2xprt--+----------+--+----+--+----+------------------------> +-/p--pfad-+ '-/m-' '-/n-' '-/v-------' >--eingabedatei--+--------------+------------------------------>< '-ausgabedatei-' Befehlsparameter /p pfad Ein durch ein Semikolon (;) getrennter Pfad, der auf die Position(en) der Binärdateien und PDB-Dateien verweist. /v Zeigt die Versionsnummer an. /m Formatiert einen Hauptspeicherauszug zusammen mit der übrigen Trapdatei. /n Formatiert Daten ohne Berücksichtigung von Informationen zur Zeilennummer. eingabedatei Gibt die Eingabedatei an. ausgabedatei Gibt die Ausgabedatei an. Versetzen von Daten Von Export-, Import- und Ladedienstprogrammen verwendete Bindedateien Eine neue Bindedatei mit dem Namen db2uImpInsUpdate.bnd wurde dem Importdienstprogramm mit der Standardisolationsstufe Lesestabilität (RS) hinzugefügt. Diese Bindedatei wird nur bei Verwendung der Option INSERT_UPDATE vom Importdienstprogramm verwendet. Die Optionen INSERT, REPLACE und CREATE des Importdienstprogramms verwenden immer noch die Datei db2uimpm.bnd. Die Bindedatei db2uImpInsUpdate.bnd kann mit der Option INSERT BUF nicht gebunden werden. Der Versuch, IMPORT INSERT_UPDATE auszuführen, während db2uImpInsUpdate.bnd mit INSERT BUF gebunden wird, führt zum Fehlschlagen des Importdienstprogramms und zum Auftreten des folgenden Fehlers: SQL3525: Die Option "INSERT_UPDATE" ist mit der Option "INSERT BUF BIND ON DB2UIMPINSUPDATE.BND" nicht kompatibel. Verwenden von IMPORT mit gepufferten INSERT-Operationen In Version 8.2 des Handbuchs Dienstprogramme für das Versetzen von Daten Handbuch und Referenz heißt es wie folgt: Die Funktion der gepufferten INSERT-Operationen kann nicht zusammen mit Importoperationen verwendet werden, bei denen der Parameter INSERT_UPDATE angegeben wird. Um diese Einschränkung umzusetzen, wird eine neue Bindedatei (db2uimpm2.bnd) eingeführt. Auf Grund der Einführung einer neuen Bindedatei sollte die Anweisung wie folgt lauten: Die Funktion der gepufferten INSERT-Operationen kann nicht zusammen mit Importoperationen verwendet werden, bei denen der Parameter INSERT_UPDATE angegeben wird. Um diese Einschränkung umzusetzen, wird eine neue Bindedatei (db2uImpInsUpdate.bnd) eingeführt. Verlust von Indexierungsinformationen bei Verwendung des Importdienstprogramms Sie können das Importdienstprogramm verwenden, um eine Tabelle erneut zu erstellen, die mit dem Exportdienstprogramm gespeichert worden ist. In Versetzen von Daten ist im Thema "Erneutes Erstellen einer exportierten Tabelle mit IMPORT" angegeben, dass Attribute der Originaltabelle nicht beibehalten werden. Außer den Attributen, die bereits dokumentiert sind, werden die folgenden Attribute nicht beibehalten: * Indexinformationen: * INCLUDE-Spalten (falls vorhanden) * Indexname, falls der Index ein Primärschlüsselindex ist * Absteigende Reihenfolge, falls der Index ein Primärschlüsselindex ist (Standardwert: aufsteigende Reihenfolge) Datenwiederherstellung und hohe Verfügbarkeit Übersicht über das Sicherungsdienstprogramm Beachten Sie die folgenden Einschränkungen: * Der Start einer Onlinesicherung eines DMS-Tabellenbereichs ist zulässig, wenn eine Tabelle innerhalb desselben Tabellenbereichs online reorganisiert wird. Während der Abschneidephase können für die Reorganisationsoperation Wartestatus für Sperren (Lock Waits) auftreten. * Der Start einer Onlinesicherung eines SMS-Tabellenbereichs ist unzulässig, wenn eine Tabelle innerhalb desselben Tabellenbereichs online reorganisiert wird. Beide Operationen erfordern eine exklusive Sperre. Verwenden des Sicherungsdienstprogramms Für das Sicherungsdienstprogramm gelten die folgenden Einschränkungen: * Die Sicherung und die Wiederherstellung eines Tabellenbereichs können nicht gleichzeitig ausgeführt werden, selbst wenn davon unterschiedliche Tabellenbereiche betroffen sind. * Wenn Sie in einer Umgebung mit partitionierten Datenbanken eine aktualisierende Wiederherstellung ausführen möchten, müssen Sie die Datenbank auf den Knoten der Knotenliste regelmäßig sichern, und Sie müssen über mindestens ein Sicherungsimage der übrigen Knoten im System verfügen (selbst der Knoten, die keine Benutzerdaten für diese Datenbank enthalten). In zwei Situationen ist das Sicherungimage einer Datenbankpartition auf einem Datenbankpartitionsserver erforderlich, der keine Benutzerdaten für die Datenbank enthält: * Sie haben dem Datenbanksystem nach der letzten Sicherung einen Datenbankpartitionsserver hinzugefügt und müssen für diesen Datenbankpartitionsserver eine aktualisierende Wiederherstellung durchführen. * Die punktuelle Wiederherstellung wird verwendet. Diese erfordert, dass alle Datenbankpartitionen im System sich im Status für anstehende aktualisierende Wiederherstellung befinden. * Onlinesicherungsoperationen für DMS-Tabellenbereiche sind mit den folgenden Operationen inkompatibel: * Laden * Reorganisation (nur offline) (Die Onlinereorganisation einer Tabelle im gesicherten Tabellenbereich kann verwendet werden, obwohl während der Abschneidephase für die Reorganisationsoperation Wartestatus für Sperren (Lock Waits) auftreten können.) * Tabellenbereich löschen * Tabelle abschneiden * Index erstellen * Klausel NOT LOGGED INITIALLY (Verwendung in den Anweisungen CREATE TABLE und ALTER TABLE) Übersicht über die HADR-Funktion (High Availability Disaster Recovery) Wenn Sie die Befehle START HADR, STOP HADR oder TAKEOVER HADR ausführen, werden möglicherweise die entsprechenden Fehlercodes generiert: SQL01767N, SQL01769N oder SQL01770N mit Ursachencode 98. Der Ursachencode zeigt an, dass auf dem Server, auf dem der Befehl ausgeführt wurde, keine installierte Lizenz für HADR vorhanden ist. Installieren Sie zur Behebung dieses Fehlers mit db2licm eine gültige HADR-Lizenz, oder installieren Sie eine Serverversion, die eine gültige HADR-Lizenz einschließt. Unterstützung für plattformübergreifende Sicherung und Wiederherstellung DB2 Universal Database unterstützt plattformübergreifende Sicherungs- und Wiederherstellungsoperationen. Sie können Datenbanken, die mit DB2 UDB Version 8 auf 32-Bit-Windows-Plattformen erstellt wurden, in DB2 UDB Version 8 auf 64-Bit-Windows-Plattformen wiederherstellen oder umgekehrt. Sie können Datenbanken, die mit DB2 UDB Version 8 auf 32-Bit-Linux-x86-Plattformen erstellt wurden, in DB2 UDB Version 8 auf 64-Bit-Linux-x86-64-Plattformen oder -IA64-Plattformen wiederherstellen oder umgekehrt. Sie können Datenbanken, die mit DB2 UDB Version 8 auf AIX-, HP-UX-, Linux PPC-, Linux zSeries-Plattformen oder auf Plattformen mit Solaris-Betriebsumgebungen (32 oder 64 Bit) erstellt wurden, in DB2 UDB Version 8 für AIX-, HP-UX-, Linux PPC-, Linux zSeries-Plattformen oder für Plattformen mit Solaris-Betriebsumgebungen (32 oder 64 Bit) wiederherstellen. Sicherung auf Band (Linux) Die maximale Blockgröße für 3480- und 3490-Bandeinheiten unter Linux ist 61.440 Byte. Tabelle 33. Maximale Blockgröße für 3480- und 3490-Bandeinheiten unter Linux +-----------------+-----------------+----------------+----------------+ | Einheit | Anschluss | Blockgrößengre | Grenzwert für | | | | nzwert | DB2-Puffer (in | | | | | 4 KB großen | | | | | Seiten) | +-----------------+-----------------+----------------+----------------+ | 3480 | s370 | 61.440 | 15 | +-----------------+-----------------+----------------+----------------+ | 3490 | s370 | 61.440 | 15 | +-----------------+-----------------+----------------+----------------+ Tivoli Storage Manager Wenn Sie die Befehle BACKUP DATABASE oder RESTORE DATABASE aufrufen, können Sie angeben, dass Sie die Sicherungs- oder Wiederherstellungsoperation für die Datenbank bzw. den Tabellenbereich mit dem Produkt Tivoli Storage Manager (TSM) verwalten wollen. Der erforderliche Mindeststand der TSM-Client-API ist Version 4.2.0 außer auf folgenden Systemen: * 64-Bit-Solaris-Systeme, für die Version 4.2.1 der TSM-Client-API erforderlich ist. * 64-Bit-Windows NT-Betriebssysteme, für die Version 5.1 der TSM-Client-API erforderlich ist. * 32-Bit-Linux-iSeries- und -pSeries-Systeme, für die ein TSM-Client ab API-Version 5.1.5 erforderlich ist. * 64-Bit-Linux-iSeries- und -pSeries-Systeme, für die ein TSM-Client ab API-Version 5.3 erforderlich ist. * 64-Bit-Linux auf AMD-Opteron-Systemen, für die mindestens Version 5.2.0 der TSM-Client-API erforderlich ist. * Linux für zSeries (64 Bit), für das ein TSM-Client ab API-Version 5.2.2 erforderlich ist. Einschränkungen der Werte der HADR-Parameter für lokalen Host und lokalen Service Wenn Sie die Werte der HADR-Parameter (High Availability Disaster Recovery) für lokalen Host und lokalen Service (HADR_LOCAL_SVC und HADR_REMOTE_SVC) angeben, während Sie einen update database configuration-Befehl vorbereiten, müssen Sie Ports angeben, die von keinem anderen Service belegt werden. Wenn die Parameter über die Linux- oder UNIX-Befehlszeile konfiguriert werden, müssen die Werte auch in der Datei /etc/services gesetzt werden. Zusätzliche Systemvoraussetzungen für HADR (High Availability Disaster Recovery) Wenn Sie einen Tabellenbereich in der Primärdatenbank erstellen und die Wiedergabe des Protokolls in der Bereitschaftsdatenbank fehlschlägt, weil die Behälter nicht verfügbar sind, empfängt die Primärdatenbank keine Fehlernachricht darüber, dass die Wiederhabe des Protokolls fehlgeschlagen ist. Zur Prüfung auf Wiedergabefehler müssen Sie bei der Erstellung neuer Tabellenbereiche die Datei db2diag.log und das Verwaltungsprotokoll für die Bereitschaftsdatenbank überwachen. Wenn eine Übernahme auftritt, ist der von Ihnen neu erstellte Tabellenbereich in der neuen Primärdatenbank nicht verfügbar. Diese Situation können Sie beheben, indem Sie den Tabellenbereich in der neuen Primärdatenbank von einem Sicherungsimage wiederherstellen. Im folgenden Beispiel wird der Tabellenbereich MEIN_TB in der Datenbank MEINE_DB vor der Verwendung als neue Primärdatenbank wiederhergestellt: 1. db2 connect to meine_db 2. db2 list tablespaces show detail Anmerkung: Führen Sie den Befehl db2 list tablespaces show detail aus, um den Status aller Tabellenbereiche anzuzeigen und die Tabellenbereich-ID abzurufen, die für Schritt 5 erforderlich ist. 3. db2 stop hadr on database meine_db 4. db2 "restore database meine_db tablespace (mein_tb) online redirect" 5. db2 "set tablespace containers for mein_tb_ID_# ignore rollforward container operations using (path '/mein_neuer_behälterpfad/')" 6. db2 "restore database meine_db continue" 7. db2 rollforward database meine_db to end of logs and stop tablespace "(mein_tb)" 8. db2 start hadr on database meine_db as primary Nicht replizierte Operationen für HADR In der Dokumentation zu Version 8.2 steht Folgendes: BLOBs und CLOBs werden nicht repliziert, der Speicherbereich für die BLOBs und CLOBs wird jedoch in der Bereitschaftsdatenbank zugeordnet. Diese Aussage muss jedoch wie folgt lauten: Nicht protokollierte BLOBs und CLOBs werden nicht repliziert, der Speicherbereich für die BLOBs und CLOBs wird jedoch in der Bereitschaftsdatenbank zugeordnet. HADR unterstützt keine Protokolle auf unformatierten Einheiten HADR (High Availability Disaster Recovery) unterstützt nicht die Verwendung unformatierter Ein-/Ausgabe (direkter Plattenzugriff) für Datenbankprotokolldateien. Wenn HADR mit dem Befehl START HADR gestartet wird oder wenn die Datenbank mit konfiguriertem HADR erneut gestartet wird, schlägt der zugeordnete Befehl mit der Fehlernachricht SQL1768N und Ursachencode "9" fehl. Vergleich von Fehlermonitor und Diagnosemonitor Der Diagnosemonitor und der Fehlermonitor sind Tools, die in einem einzelnen Datenbankexemplar eingesetzt werden. Der Diagnosemonitor verwendet Diagnoseanzeiger, um den ordnungsgemäßen Betrieb bestimmter Aspekte der Datenbankmanagerleistung oder Datenbankleistung auszuwerten. Ein Diagnoseanzeiger misst den ordnungsgemäßen Betrieb eines Aspekts einer bestimmten Klasse von Datenbankobjekten, beispielsweise einen Tabellenbereich. Diagnoseanzeiger können anhand bestimmter Kriterien ausgewertet werden, um den ordnungsgemäßen Betrieb dieser Klasse von Datenbankobjekten zu ermitteln. Diagnoseanzeiger können zudem Alerts generieren, die Sie benachrichtigen, wenn ein Anzeiger einen Schwellenwert überschreitet, oder einen abnormalen Status eines Datenbankobjekts angeben. Im Vergleich dazu ist der Fehlermonitor ausschließlich dafür verantwortlich, das überwachte Exemplar betriebsbereit zu halten. Wenn das überwachte DB2 UDB-Exemplar unerwartet beendet wird, startet der Fehlermonitor das Exemplar erneut. Der Fehlermonitor ist unter Windows nicht verfügbar. Inaktivieren der Fehlerüberwachung Geben Sie den folgenden Befehl in einem DB2 UDB-Befehlsfenster ein, um die Fehlerüberwachung für das Datenbankexemplar DB2INST1 zu inaktivieren: db2fm -i db2inst1 -f no Anmerkung: Wenn die Registrierdatenbankdatei des Fehlermonitors nicht vorhanden ist, werden die Standardwerte verwendet. Geben Sie unter UNIX-Systemen den folgenden Befehl ein, um sicherzustellen, dass der Fehlermonitor nicht mehr für DB2INST1 aktiv ist: ps -ef|grep -i fm Geben Sie auf Linux-Systemen den folgenden Befehl ein: ps auxw|grep -i fm Ein Eintrag mit db2fmd und DB2INST1 gibt an, dass der Fehlermonitor in diesem Exemplar weiterhin aktiv ist. Geben Sie den folgenden Befehl als Exemplareigner ein, um den Fehlermonitor zu inaktivieren: db2fm -i db2inst1 -D Data Warehouse-Zentrale Konfigurieren der Data Warehouse-Clientumgebung unter AIX- und Solaris-Betriebssystemen Unter AIX- und Solaris-Betriebssystemen müssen Sie Ihre Locale vor der Ausführung des Data Warehouse-Clients ordnungsgemäß festlegen. Geben Sie den folgenden Befehl in einer Befehlszeile ein, um Ihre Locale festzulegen: export LC_ALL= Beispiel: export LC_ALL=Ja_JP. Dabei ist Ja_JP Ihre lokale Locale. Wenn diese Umgebungsvariable nicht festgelegt wird, werden GUI-Anwendungen eventuell nicht ordnungsgemäß ausgeführt. Es kann auch zu Java-Fehlern kommen. Aktualisieren der Datenbankmanagerkonfiguration vor der Installation der Data Warehouse-Umsetzungsprogramme Im Handbuch DB2 Warehouse Manager Standard Edition Installation von Version 8.2 erhalten Sie im Thema "Aktualisieren der Datenbankmanagerkonfiguration vor der Installation von Warehouse-Umsetzungsprogrammen" eine falsche Anweisung zur Aktualisierung des SDK-Pfadparameters. Sie müssen den JDK-Pfadparameter aktualisieren. Verwenden Sie den DB2-Befehlszeilenprozessor (CLP), um die Datenbankmanagerkonfiguration für das Ziel-DB2-Exemplar zu aktualisieren, bevor Sie Data Warehouse-Umsetzungsprogramme installieren. Vorgehensweise Gehen Sie wie folgt vor, um vor der Installation von Data Warehouse-Umsetzungsprogrammen die Datenbankmanagerkonfiguration zu aktualisieren: 1. Setzen Sie den JDK-Pfadparameter (JDK_PATH) auf das Unterverzeichnis, in dem das JDK installiert ist: UPDATE DATABASE MANAGER CONFIGURATION USING JDK_PATH pfad Dabei steht pfad für das Unterverzeichnis, in dem das JDK installiert ist. Anmerkung: Fügen Sie das Verzeichnis bin nicht in den JDK-Pfad ein. Wenn Sie als Ziel DB2 Universal Database Version 7.2 (oder eine ältere Version) verwenden, für die Umsetzungsprogramme installiert sind, sollten Sie nicht JDK_PATH, sondern die JDK11_PATH aktualisieren. 2. Setzen Sie den Parameter für die Größe des JVM-Zwischenspeichers (JAVA_HEAP_SZ) auf 4096: UPDATE DATABASE MANAGER CONFIGURATION USING JAVA_HEAP_SZ 4096 Neue Umgebungsvariable VW_NETRC in der Data Warehouse-Zentrale (UNIX) Unter UNIX-Betriebssystemen außer Linux können Sie für die Data Warehouse-Zentrale ab Version 8.2 FixPak 10 (äquivalent zu Version 8.1 FixPak 3) die Umgebungsvariable VW_NETRC setzen. Wenn Sie die Umgebungsvariable VW_NETRC auf off setzen, können Sie die .netrc-Datei manuell verwalten. Weitere Informationen zum richtigen Format der .netrc-Datei finden Sie in der Dokumentation zu Ihrem Betriebssystem. Durch die Ausführung gleichzeitig ablaufender, benutzerdefinierter FTP-Programme kann die .netrc-Datei beschädigt werden. Wenn Sie gleichzeitig ablaufende, benutzerdefinierte FTP-Programmschritte ausführen möchten, können Sie die Umgebungsvariable VW_NETRC auf OFF setzen (VW_NETRC=OFF). Fügen Sie diese Umgebungsvariable dem Profil Ihres Agentendämons für ferne Agenten und der Datei IWH.environment für den Standardagenten oder für den lokalen Agenten hinzu. DB2 Data Warehouse-Zentrale erfordert eine Datenbank im Unicode-Format Nach der Installation von DB2 Universal Database Version 8.1 FixPak 7 oder höher müssen Sie das Tool zur Verwaltung der Data Warehouse-Steuerungsdaten ausführen, um eine neue Data Warehouse-Steuerungsdatenbank im Unicode-Format zu erstellen. Voraussetzungen Zum Erstellen und Speichern einer Kopie der vorhandenen Data Warehouse-Steuerungsdatenbank muss Ihre Workstation über genügend Plattenspeicherplatz verfügen, um diese Kopie zu speichern, sowie zusätzlich die doppelte Menge Speicherplatz bereitstellen, die die Data Warehouse-Steuerungsdatenbank zum Speichern temporärer Dateien benötigt. Wenn die vorhandene Data Warehouse-Steuerungsdatenbank eine Größe von 10 MB hat, müssen insgesamt 30 MB Speicherplatz in demselben Exemplar verfügbar sein, in dem sich auch die vorhandene Data Warehouse-Steuerungsdatenbank befindet. Vorgehensweise Führen Sie zum Erstellen einer neuen Data Warehouse-Steuerungsdatenbank im Unicode-Format die folgenden Schritte aus: 1. Führen Sie das Tool zur Verwaltung der Data Warehouse-Steuerungsdatenbank aus: * Unter Windows: Klicken Sie Start an, und wählen Sie Programme -> IBM DB2 -> Installations- und Konfigurationstools -> Data Warehouse-Zentrale - Steuerungsdatenbankverwaltung aus. * Unter AIX: Führen Sie die Prozedur db2wcdbm aus. 2. Geben Sie den Namen der vorhandenen Data Warehouse-Steuerungsdatenbank ein. Anschließend werden Sie aufgefordert, einen neuen Warehouse-Steuerungsdatenbanknamen einzugeben. Dadurch wird eine neue Warehouse-Steuerungsdatenbank im Unicode-Format erstellt. Definieren von DB2-Warehouse-Quellen und -Zielen Die folgende Aktualisierung betrifft zwei Themen im Zusammenhang mit der Data Warehouse-Zentrale: * Definieren von DB2-Warehouse-Quellen * Definieren eines Warehouse-Ziels Bei der Definition einer Warehouse-Quelle oder eines Warehouse-Ziels ist die Anzahl der zurückgegebenen Tabellen der Standardwert 250. Sie können jedoch die neue Umgebungsvariable VWS_MAX_TABLELIST verwenden, um die Anzahl der zurückgegebenen Tabellen festzulegen. Die maximale Anzahl der Tabellen, die zurückgegebenen werden können, beträgt 40 000. Diese Anzahl kann je nach Größe der Tabellennamen in der Liste auch kleiner sein. Sie sollten eine Anzahl angeben, die viel kleiner ist als 40 000. Aktualisierungen des Lernprogramms für das Informationsmanagement Prüfen, ob die Datenbanken DWCTBC und TBC_MD für ODBC registriert sind In Version 8 muss die Steuerungsdatenbank TBC_MD, die im Lernprogramm verwendet wird, keine ODBC-Datenquelle des Systems sein. Die Zieldatenbank oder Datenbankquelle DWCTBC muss jedoch eine System-ODBC-Datenquelle sein. Öffnen des Notizbuchs 'Warehouse-Quelle definieren' Die Vorgehensweise zum Öffnen des Notizbuchs Warehouse-Quelle definieren hat sich für die relationale Quelle des Lernprogramms geändert. Vorgehensweise Gehen Sie wie folgt vor, um das Notizbuch Warehouse-Quelle definieren für die relationale Quelle des Lernprogramms zu öffnen: 1. Klicken Sie im Fenster der Data Warehouse-Zentrale mit Maustaste 2 den Ordner Warehouse-Quellen an. 2. Klicken Sie Definieren --> ODBC --> DB2 --> DB2-Produktfamilie an. Das Notizbuch Warehouse-Quelle definieren wird geöffnet. Öffnen des Notizbuchs 'Warehouse-Ziel definieren' Die Vorgehensweise zum Öffnen des Notizbuchs Warehouse-Ziel definieren hat sich geändert. Vorgehensweise Gehen Sie wie folgt vor, um das Notizbuch Warehouse-Ziel definieren zu öffnen: 1. Klicken Sie im Fenster der Data Warehouse-Zentrale mit Maustaste 2 den Ordner Warehouse-Ziele an. 2. Klicken Sie Definieren --> ODBC --> DB2 --> DB2-Produktfamilie an. Das Notizbuch Warehouse-Ziel definieren wird geöffnet. Festlegen des Grenzwerts für die Freigabe von Warehouse-Protokolldateien In der Protokolldatei werden Datensätze so lange gespeichert, bis ein festgelegter Additionsgrenzwert erreicht ist. Der Additionsgrenzwert beträgt standardmäßig 1000 Datensätze. In der Regel werden bei jeder Jobausführung 12 bis 15 Protokollsätze erstellt. Legen Sie den Grenzwert für die Freigabe entsprechend Ihren Erfordernissen fest. Aktualisieren Sie hierzu das Feld Protokoll löschen, wenn Anzahl Einträge gleich auf der Indexzunge Server der Seite mit den Warehouse-Merkmalen. Unterstützung der Data Warehouse-Zentrale für cursorbasiertes Laden Der DB2 Universal Database-Ladeschritt ermöglicht jetzt die Verwendung einer Sicht oder Tabelle als Quelle für den Schritt, was cursorbasiertes Laden zur Folge hat. Der Radioknopf Spalten gemäß den in der Eingabedatei vorhandenen Spaltenpositionen zuordnen muss ausgewählt sein, damit im Assistenten Spalten für cursorbasiertes Laden zugeordnet werden können. Migration auf und Einschränkungen der Unicode-Warehouse-Steuerungsdatenbank Ab Version 8.2 der Data Warehouse-Zentrale muss es sich bei der Warehouse-Steuerungsdatenbank um eine Unicode-Datenbank handeln. Auch wenn Sie eine Unicode-Warehouse-Steuerungsdatenbank einer Version der Data Warehouse-Zentrale vor Version 8.2 verwenden, müssen Sie eine neue Unicode-Steuerungsdatenbank mit dem Tool zur Verwaltung der Warehouse-Steuerungsdatenbank erstellen. Wenn Sie eine Warehouse-Steuerungsdatenbank von einer Version der Data Warehouse-Zentrale vor Version 8.2 migrieren, führt das Tool zur Verwaltung der Steuerungsdatenbank der Data Warehouse-Zentrale den Befehl db2move aus, um die Daten in eine neue Unicode-Steuerungsdatenbank zu versetzen. Während dieses Prozesses werden Fenster angezeigt, die den Fortschritt des Befehls db2move zeigen. Dieses Migrationsverfahren wird nur einmal ausgeführt. Die Data Warehouse-Zentrale unterstützt Unicode auf Sybase-Servern nicht. Änderung des Datumsformats für die Spalte 'Modifiziert' In der Detailsicht des Hauptfensters der Data Warehouse-Zentrale wurde das Datumsformat in der Spalte Modifiziert aktualisiert. Das Datum in der Spalte Modifiziert wird im Format für die Ländereinstellung angezeigt und umfasst die Uhrzeit. Diese Änderung des Datumsformats stellt sicher, dass das Sortieren von Objekten in der Spalte Modifiziert richtig ausgeführt wird. Diese Aktualisierung gilt für die meisten Listen mit Objekten der Data Warehouse-Zentrale, die in der Navigations- und Detailsicht angezeigt werden. Beispiel: * Themen * Prozesse * Warehouse-Schemata * Warehouse-Agentensites * Programme * Schritte * Datenressourcen * Benutzer * Benutzergruppen Definieren von statistischen Umsetzungsprogrammen in der Data Warehouse-Zentrale Definieren Sie zum Ausführen einer statistischen Umsetzung Ihrer Daten das statistische Umsetzungsprogramm, das Sie verwenden wollen. Vorgehensweise Gehen Sie wie folgt vor, um statistische Umsetzungsprogramme zu definieren: 1. Öffnen Sie das Fenster Prozessmodell. 2. Klicken Sie das Umsetzungsprogrammsymbol an, und wählen Sie ein Umsetzungsprogramm aus der Liste der verfügbaren Umsetzungsprogramme aus. 3. Verbinden ("Linken") Sie das ausgewählte Umsetzungsprogramm mit einer Warehouse-Quelle und einem Warehouse-Ziel entsprechend der Regeln für dieses Umsetzungsprogramm. Für jedes Umsetzungsprogramm gibt es eigene Regeln für die Verbindung mit einer Warehouse-Quelle und einem Warehouse-Ziel. Weitere Informationen finden Sie in der Dokumentation für die einzelnen Umsetzungsprogramme. Vorbereiten der Installation von Data Warehouse-Agenten Bei der Installation von DB2 Warehouse Manager müssen der Data Warehouse-Server, der Data Warehouse-Client und alle Data Warehouse-Agenten dieselbe Version und Fixpack-Version aufweisen. Voraussetzungen für den iSeries-Warehouse-Agenten Für die Verwendung eines iSeries-Warehouse-Agenten für DB2 Warehouse Manager auf Systemen mit Version 5 Release 2 bzw. 3 ist die folgende vorläufige Programmkorrektur (PTF) erforderlich: PTF SI13558 Mit dieser vorläufigen Programmkorrektur für Datenbanken kann die CLI auf iSeries Unicode-Daten verarbeiten. DB2 .NET Data Provider Unterstützung von gleichzeitig ablaufenden aktiven Eingabeprogrammen für Daten DB2 .NET Data Provider unterstützt jetzt die Verwendung von gleichzeitig ablaufenden aktiven Eingabeprogrammen für Daten. Dies bedeutet, dass Sie gleichzeitig auf Daten von mehreren DB2DataReader-Exemplaren zugreifen können, die dasselbe DB2Connection-Exemplar verwenden. Jedes DB2DataReader-Exemplar muss seinem eigenen DB2Command-Exemplar zugeordnet sein. Wenn Sie das zugeordnete DB2Command-Exemplar zu einem anderen Zweck verwenden möchten, müssen Sie explizit die Methode DB2DataReader.Close aufrufen. Merkmal DB2Connection.ConnectionString Es gibt ein Zusatzschlüsselwort für das Merkmal DB2Connection.ConnectionString: CurrentSchema Das Schema, das nach einer erfolgreichen Verbindungsherstellung verwendet werden soll. Bei einer erfolgreichen Verbindungsherstellung wird eine Anweisung SET CURRENT SCHEMA an den DB2-Server gesendet. Dadurch kann die Anwendung SQL-Objekte benennen, ohne sie mit einem Schemanamen qualifizieren zu müssen. DB2 Connect Änderung der Festlegung des Authentifizierungstyps über ein Gateway Ab DB2 Connect(TM) Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) ist das Gateway während der Authentifizierungsfestlegung kein passiver Teilnehmer mehr. Stattdessen übernimmt das Gateway eine aktive Rolle. Der Authentifizierungstyp, der im Datenbankverzeichniseintrag am Gateway angegeben wurde, überschreibt den Authentifizierungstyp, der auf dem Client katalogisiert wurde. Sowohl der Client als auch das Gateway und der Server müssen kompatible Typen angeben. Wenn der katalogisierte Authentifizierungstyp am Gateway nicht im Datenbankverzeichniseintrag angegeben wurde, wird vom Server standardmäßig die SERVER-Authentifizierung verwendet. Die Festlegung wird jedoch auch zwischen dem Client und dem Server vorgenommen, wenn der Server die SERVER-Authentifizierung nicht unterstützt. Dieses Verhalten weicht vom Verhalten des Clients ab, der standardmäßig den Wert SERVER_ENCRYPT verwendet, wenn kein Authentifizierungstyp angegeben wurde. Der Authentifizierungstyp, der am Gateway katalogisiert wurde, wird nicht verwendet, wenn die Option DB2NODE oder SQL_CONNECT_NODE der SET CLIENT-API auf dem Client gesetzt wurde. In diesen Fällen erfolgt die Festlegung ausschließlich zwischen dem Client und dem Server. Ein Server, für den der Authentifizierungstyp SERVER_ENCRYPT in der Datenbankmanagerkonfiguration angegeben wurde, akzeptiert keine Verbindungen oder Anhänge von Clients mehr, die die SERVER-Authentifizierung anfordern. Neues Sicherheitsszenario Es wurde ein neues Sicherheitsszenario für APPC-Verbindungen hinzugefügt: Authentifizierung GSSPLUGIN Sicherheit NONE Gültigkeitsprüfung Mechanismus mit GSS-API-Sicherheits-Plug-in Korrekturen an Abbildungen In den folgenden DB2 Connect Enterprise Edition-Themen sind fehlerhafte Abbildungen enthalten: * Zugreifen auf Host- oder iSeries-DB2-Daten über DB2 Connect Enterprise Edition * Zugreifen auf DB2-Daten über das Web mit Java Die folgende Tabelle zeigt Korrekturen für Abbildungen im Thema "Zugreifen auf Host- oder iSeries-DB2-Daten über DB2 Connect Enterprise Edition". Tabelle 34. Korrekturen für Abbildungen im Thema "Zugreifen auf Host- oder iSeries-DB2-Daten über DB2 Connect Enterprise Edition" +-------------------+-------------------------------------------------+ | Position | Korrektur | | innerhalb des | | | Themas | | +-------------------+-------------------------------------------------+ | Legende für alle | * Verweise auf DB2 für OS/390 Version 5 | | vier Abbildungen | Release 1" sollten "DB2 für OS/390 Version 6 | | | oder höher" lauten. | | | * Verweise auf "DB2 für AS/400 Version 4 | | | Release 2" sollten "DB2 für iSeries Version 5 | | | Release 1 oder höher" lauten. | +-------------------+-------------------------------------------------+ | Erste Abbildung | Alle Verweise auf "APPC" und | | (Abbildung 1: DB2 | "SNA-Kommunikationsunterstützung" sind | | Connect | inkorrekt. SNA/APPC wird von DB2-Servern unter | | Enterprise | Linux, Unix und Windows, einschließlich DB2 | | Edition) | Connect Enterprise Edition, nicht als | | | eingehendes Protokoll für DB2 Runtime Client | | | unterstützt. | +-------------------+-------------------------------------------------+ Die folgende Tabelle zeigt Korrekturen für Abbildungen im Thema "Zugreifen auf DB2-Daten über das Web mit Java". Tabelle 35. Korrekturen für Abbildungen im Thema "Zugreifen auf DB2-Daten über das Web mit Java" +-------------------+-------------------------------------------------+ | Position | Korrektur | | innerhalb des | | | Themas | | +-------------------+-------------------------------------------------+ | Legende | * Verweise auf DB2 für OS/390 Version 5 | | | Release 1" sollten "DB2 für OS/390 Version 6 | | | oder höher" lauten. | | | * Verweise auf "DB2 für AS/400 Version 4 | | | Release 2" sollten "DB2 für iSeries Version 5 | | | Release 1 oder höher" lauten. | +-------------------+-------------------------------------------------+ Entwicklungszentrale DB2-Entwicklungszentrale Version 8.2 erfordert Stufe 9.2.9 von Distributed Debugger Die DB2-Entwicklungszentrale Version 8.2 erfordert jetzt Version 9.2.9 von IBM Distributed Debugger. Wenn Sie Distributed Debugger Version 9.2.9 nicht installiert haben, können Sie Fehler in gespeicherten Java-Prozeduren nicht mit Hilfe der Entwicklungszentrale beheben. Distributed Debugger Version 9.2.9 unterstützt keine Solaris-Betriebsumgebungen mehr. Weitere Informationen zu Distributed Debugger finden Sie im Internet unter http://www.ibm.com/software/awdtools/debugger. Längenbeschränkung im Fenster 'Variablenbereich ändern' der DB2-Entwicklungszentrale Wenn Sie die Länge einer Variablen mit Hilfe des Dialogs 'Variablenbereich ändern' in der DB2-Entwicklungszentrale ändern, beträgt die maximale Länge 1024 Byte. Diese Begrenzung wird zurzeit in einer Nachricht dokumentiert, die nur auf englisch vorliegt. Einschränkungen für DB2 Universal Driver Typ 2 und 4 In Version 8.2 wurde Unterstützung dafür hinzugefügt, dass Benutzer über die Entwicklungszentrale eine Verbindung zu einer DB2 Universal Database-Datenbank mit DB2 Universal Driver Typ 2 und 4 herstellen können. Wenn Sie jedoch versuchen, einen dieser Treiber zu verwenden, um eine Verbindung zu einem iSeries-Server oder zu einem DB2 UDB-Server von Version 8.1 oder früher herzustellen, wird folgende Fehlernachricht angezeigt: Verbindung zu ist fehlgeschlagen. IBM DB2 Universal Driver (JCC) wurde nicht gefunden. Weitere Informationen dazu, welche Treiber Sie verwenden sollten, um diesen Fehler zu vermeiden, finden Sie im Thema "JDBC-Treiber" von DB2 Information - Unterstützung. GUI-Tools Modifizieren des Abschlusszeichens für die Anweisung Ab DB2 Universal Database (UDB) Version 8.2 FixPak 1 (äquivalent zu Version 8.1 FixPak 8) können Sie das Abschlusszeichen für die Anweisung innerhalb einer Prozedur modifizieren, die vom Befehlszeilenprozessor (CLP) oder vom Befehlseditor ausgeführt wird. Dieses Modifizieren während der Verarbeitung ähnelt der momentan in DB2 UDB für OS/390 verfügbaren Methode. Im folgenden Beispiel wird veranschaulicht, wie das Abschlusszeichen nach den einzelnen Anweisungen geändert werden kann: connect to gilroy user newton using password; select * from newton.department; --#SET TERMINATOR : select * from newton.employee: --#SET TERMINATOR @ select * from newton.department@ --#SET TERMINATOR ; select * from newton.department; --#SET TERMINATOR & terminate& Die Möglichkeit, das Abschlusszeichen zu ändern, ist von Bedeutung, wenn eine Prozedur zusammengesetzte Anweisungen enthält. Im folgenden Beispiel geht DB2 UDB davon aus, dass der erste Strichpunkt ; in der zusammengesetzten Anweisung CREATE TRIGGER das Abschlusszeichen für die gesamte Anweisung CREATE TRIGGER ist. Dies trifft jedoch nicht zu. Es soll lediglich das Abschlusszeichen für eine der Anweisungen innerhalb der zusammengesetzten Anweisung CREATE TRIGGER sein. CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END; CONNECT RESET; TERMINATE; Im folgenden Beispiel wird veranschaulicht, wie das Abschlusszeichen für Anweisungen innerhalb der Prozedur modifiziert werden kann, um das gewünschte Ergebnis zu erzielen. CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; --#SET TERMINATOR @ CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END@ --#SET TERMINATOR ; CONNECT RESET; Wenn Sie Ihre Prozeduren nicht lokal unter DB2 für OS/390 ausführen möchten oder wenn die DB2 UDB-Prozeduren keine Verbindung zu OS/390 herstellen, sollten Sie zum Modifizieren von Abschlusszeichen für Anweisungen nicht die Methode mit --#SET TERMINATOR verwenden. Stattdessen sollten Sie die vorhandenen Optionen -tdX oder ;-- verwenden. Mit der Option -tdX können Sie das Abschlusszeichen angeben, wenn Sie eine Prozedur unter Verwendung eines CLP-Befehls aufrufen. Das Zeichen 'X' steht für das als Abschlusszeichen für Anweisungen zu verwendende Zeichen. Dies sehen Sie z. B. im folgenden Befehl: db2 -tvf test.txt -td& Das Zeichen & wird als Abschlusszeichen für Anweisungen verwendet, wenn die Prozedur in der Datei test.txt ausgeführt wird. Wenn diese Prozedur die zusammengesetzte Anweisung CREATE TRIGGER enthält, wird diese wie folgt geschrieben: CONNECT TO SAMPLE& DROP TRIGGER newton.NWTTRIGGER& CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0'); insert into newton.nwttable values( -1, '-1'); END& CONNECT RESET& TERMINATE& Anmerkung: Die Option -tdX ist im Befehlseditor nicht verfügbar. Die Prozedur, die die zusammengesetzte Anweisung CREATE TRIGGER enthält, kann auch mit der Option ;-- auf andere Weise wie folgt geschrieben werden: CONNECT TO SAMPLE; DROP TRIGGER newton.NWTTRIGGER; CREATE TRIGGER newton.NWTTRIGGER AFTER DELETE ON newton.NWTTABLE FOR EACH ROW MODE DB2SQL BEGIN ATOMIC insert into newton.nwttable values(0,'0');-- insert into newton.nwttable values( -1, '-1');-- END; CONNECT RESET; TERMINATE; Nicht verfügbarer Datenbankstatus im Teilfenster mit Datenbankdetails der Steuerzentrale Sie können das Detailteilfenster der Steuerzentrale verwenden, um Informationen zu Ihren Datenbanken anzuzeigen. Durch Auswählen einer Datenbank in der Objektbaumstruktur oder dem Inhaltsteilfenster wird eine Zusammenfassung ihres Status angezeigt. In manchen Situationen sind Datenbankinformationen möglicherweise nicht verfügbar. Einige Ursachen für die Nichtverfügbarkeit werden in der folgenden Tabelle beschrieben. Tabelle 36. Ursachen für einen nicht verfügbaren Datenbankstatus +--------------------+------------------------------------------------+ | Datenbankstatusele | Mögliche Ursachen für nicht verfügbaren Status | | ment | | +--------------------+------------------------------------------------+ | Letzte Sicherung | * Es wurden keine Sicherungen für die | | | Datenbank ausgeführt. | | | * Der Benutzer verfügt nicht über die | | | Berechtigung zum Zugriff auf diese | | | Informationen. | +--------------------+------------------------------------------------+ | Datenbankgröße | * Die Datenbankversion ist älter als Version | | | 8.2. | | | * Der Benutzer verfügt nicht über die | | | Berechtigung zum Zugriff auf diese | | | Informationen. | +--------------------+------------------------------------------------+ | Kapazität | * Die Datenbankversion ist älter als Version | | | 8.2. | | | * Die Datenbank hat mehrere Partitionen. | | | * Der Benutzer verfügt nicht über die | | | Berechtigung zum Zugriff auf diese | | | Informationen. | +--------------------+------------------------------------------------+ | Ordnungsgemäßer | * Diagnosemonitor ist nicht aktiviert. | | Betrieb | * Zeitverzögerung. Es gibt eine ungefähr | | | 5-minütige Verzögerung von dem Zeitpunkt, zu | | | dem eine Datenbank aktiviert wird, bis zur | | | Verfügbarkeit ihres Diagnosestatus. | +--------------------+------------------------------------------------+ | Verwaltung | * Die Datenbankversion ist älter als Version | | | 8.2. | +--------------------+------------------------------------------------+ Generierung der Standardausgabeoption für das Schreiben in die Tabelle (Ereignismonitor erstellen) Dem Dialog Ausgabeoptionen, der über das Fenster Ereignismonitor erstellen gestartet wird, wurde ein Knopf Generieren hinzugefügt. Durch Anklicken des Knopfs Generieren wird die Standardausgabeoption für das Schreiben in die Tabelle generiert. Diese Ausgabe entspricht der Syntax, die vom Befehl db2evtbl generiert wird. Die generierte Option zeigt dem Benutzer, welche Tabellen und Datenelemente eingeschlossen werden, wenn der Ereignismonitor erstellt wird. Benutzer können den Befehl entsprechend ihren Anforderungen modifizieren. Die generierte Syntax basiert auf dem Ereignismonitornamen und den Ereignistypen, die im Fenster Ereignismonitor erstellen angegeben wurden. Geben Sie den Ereignismonitornamen und die Ereignistypen an, bevor Sie die Ausgabeoptionssyntax generieren. Wenn sich der Ereignismonitorname oder die Ereignistypen nach der Generierung der Ausgabeoption ändern, wird eine Nachricht angezeigt, um den Benutzer daran zu erinnern, die Ausgabeoption vor der Erstellung des Ereignismonitors erneut zu generieren. Wenn die Ausgabeoption nicht erneut generiert wird, werden Ereignistabellen basierend auf dem Ereignismonitornamen generiert, der zuvor angegeben wurde. Informationskatalogzentrale Beispielkonfigurationsprozeduren Die Beispielprozeduren ICCConfig.jacl und ICCConfig.properties werden mit der Informationskatalogzentrale für das Web mit DB2 Embedded Application Server (integrierter Anwendungsserver von DB2) zur Verfügung gestellt. Sie können diese Beispielprozeduren verwenden, um die Informationskatalogzentrale für das Web mit WebSphere Application Server 5 zu konfigurieren. Diese Prozeduren befinden sich im Verzeichnis sqllib\samples\icweb. Web-Server-Konfiguration Wenn Ihre Metadaten beim Konfigurieren der Informationskatalogzentrale für das Web mit DB2 Embedded Application Server URLs enthalten, die auf Dateien auf dem Server zugreifen, müssen Sie die URLs der richtigen Position zuordnen, indem Sie Aliasnamen in der Web-Server-Konfiguration verwenden. Sie müssen auch die Hilfe- und Copyright-Links zuordnen. Wenn Sie DB2 Embedded Application Server verwenden, muss ein Web-Server richtig konfiguriert und aktiv sein, damit diese Links funktionieren, obwohl Sie keinen Web-Server verwenden müssen. Installation und Konfiguration Ergänzung DB2-Knotenkonfigurationsdatei db2nodes.cfg Der Parameter resourcesetname wird nur unter AIX, HP-UX und Linux sowie in der Solaris-Betriebsumgebung unterstützt. Unter Linux-Betriebssystemen definiert die Spalte resourcesetname eine Zahl, die einem NUMA-Knoten (Non-Uniform Memory Access) auf dem System entspricht. Das Systemdienstprogramm numactl muss zusätzlich zum Kernel der Version 2.6 mit NUMA-Richtilinienunterstützung verfügbar sein. Weitere Informationen zur NUMA-Unterstützung unter Linux-Betriebssystemen finden Sie in der Man-Page zu numact1. Beispiel für die Verwendung des Parameters "resourcesetname" unter Linux-Betriebssystemen Dieses Beispiel zeigt, wie Sie einen NUMA-Computer mit vier Knoten so konfigurieren können, dass jeder logische Knoten einem NUMA-Knoten zugeordnet ist. Vorgehensweise 1. Stellen Sie sicher, dass auf dem System NUMA-Funktionalität vorhanden ist. 2. Setzen Sie den folgenden Befehl ab: $ numactl --hardware Es wird eine der folgenden Ausgabe ähnliche Ausgabe angezeigt: Verfügbar: 4 Knoten (0-3) Knoten 0 Größe: 1901 MB Knoten 0 frei: 1457 MB Knoten 1 Größe: 1910 MB Knoten 1 frei: 1841 MB Knoten 2 Größe: 1910 MB Knoten 2 frei: 1851 MB Knoten 3 Größe: 1905 MB Knoten 3 frei: 1796 MB 3. In diesem Beispiel gibt es auf dem System vier NUMA-Knoten. Editieren Sie die Datei db2nodes.cfg wie folgt, um jedem MLN (Multiple Logical Node) einen NUMA-Knoten auf dem System zuzuordnen: 0 hostname 0 hostname 0 1 hostname 1 hostname 1 2 hostname 2 hostname 2 3 hostname 3 hostname 3 Registrierdatenbankvariable DB2NOLIOAIO durch DB2LINUXAIO ersetzt (Linux) Die DB2 Universal Database-Registrierdatenbankvariable DB2NOLIOAIO wird ab Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) nicht mehr unterstützt. Für Linux-Benutzer wurde die Registrierdatenbankvariable DB2NOLIOAIO durch DB2LINUXAIO ersetzt. * Führen Sie den folgenden Befehl aus, um die Unterstützung der asynchronen E/A (AIO) unter Linux zu aktivieren: db2set DB2LINUXAIO=true Starten Sie DB2 UDB anschließend erneut. Anmerkung: Zur Verwendung von AIO müssen Benutzer libaio-0.3.98 oder eine spätere Version installieren und einen Kernel haben, der AIO unterstützt. * Führen Sie den folgenden Befehl aus, um die AIO-Unterstützung unter Linux zu inaktivieren: db2set DB2LINUXAIO=false Starten Sie DB2 UDB anschließend erneut. Anwendungsserver für DB2 UDB Der Anwendungsserver für DB2 Universal Database unterstützt die Fernverwaltung oder gespeicherte Prozeduren nicht mehr. Aktualisierte Themen: Aktivieren des Anwendungsservers für DB2 UDB Durch die Aktivierung der Datenbank werden folgende Aktionen ausgeführt: * Herstellen einer Verbindung zur angegebenen Datenbank * Erstellen und Füllen von Metadatentabellen * Aktualisieren der DBM-Konfigurationsparameter JDK_PATH und JAVA_HEAP_SZ * Installieren der Anwendung DB2 Web Services Voraussetzung Unter Linux müssen Sie nach der Installation des Anwendungsservers und vor dem Aktivieren des Anwendungsservers die Linux-Java-Umgebung konfigurieren. Weitere Informationen zur Konfiguration der Linux-Java-Umgebung finden Sie im Handbuch Application Development Guide: Building and Running Applications. Vorgehensweise Gehen Sie wie folgt vor, um den Anwendungsserver für DB2 zu aktivieren: 1. Melden Sie sich am DB2-Server als root unter Linux- oder UNIX-Betriebssystemen oder als Benutzer mit der Berechtigung Administrator unter Windows-Betriebssystemen an. 2. Führen Sie für Linux- und UNIX-basierte Betriebssysteme den folgenden Befehl aus: . /pfad_des_db2-exemplars/sqllib/db2profile Dabei ist pfad_des_db2-exemplars der Pfad, in dem das DB2-Exemplar erstellt wurde. 3. Führen Sie einen der folgenden Befehle aus: * Für die Betriebssysteme Linux und UNIX: installationspfad_des_anwendungsservers/bin/enable.sh -db aliasname_der_datenbank -user datenbankbenutzer -password datenbankkennwort -db2path pfad_für_sqllib -instance exemplarname -easpath pfad_für_eas -fencedid abgeschirmte_benutzer-id * Unter Windows-Betriebssystemen: installationspfad_des_anwendungsservers\bin\enable -db aliasname_der_datenbank -user datenbankbenutzer -password datenbankkennwort -db2path pfad_für_sqllib -instance exemplarname -easpath pfad_für_eas Dabei gilt Folgendes: * aliasname_der_datenbank ist der Aliasname der zu aktivierenden Datenbank. * datenbankbenutzer ist die Benutzer-ID, die beim Herstellen einer Verbindung zur Datenbank verwendet werden muss. * datenbankkennwort ist das Kennwort, das zusammen mit der Benutzer-ID beim Herstellen der Verbindung zur Datenbank verwendet werden muss. * pfad_für_sqllib ist der Pfad für das SQLLIB-Verzeichnis des DB2-Exemplars. Dieser Pfad wird dazu verwendet, DB2EAS mit den erforderlichen JAR-Dateien zu aktualisieren. * exemplarname ist der Name eines DB2 UDB-Exemplars. * pfad_für_eas ist der Pfad für den integrierten Anwendungsserver (Embedded Application Server). * abgeschirmte_benutzer-id ist die Benutzer-ID des abgeschirmten Benutzers. Nachdem Sie den Anwendungsserver für DB2 UDB aktiviert haben, erfolgt das Starten des Anwendungsservers automatisch. Lokales Starten des Anwendungsservers für DB2 UDB Der Anwendungsserver sollte mit der abgeschirmten Benutzer-ID für Systeme gestartet werden, die Web-Services in einer .NET-Umgebung erstellen oder ausschließlich XML Metadata Registry (XMR) ausführen. Starten des Anwendungsservers für DB2 UDB über Fernzugriff Dieser Abschnitt wurde entfernt. Der Anwendungsserver für DB2 UDB unterstützt die Fernverwaltung nicht mehr. Lokales Stoppen des Anwendungsservers für DB2 UDB Der Anwendungsserver sollte mit der abgeschirmten Benutzer-ID für Systeme gestoppt werden, die Web-Services in einer .NET-Umgebung erstellen oder ausschließlich XML Metadata Registry (XMR) ausführen. Stoppen des Anwendungsservers für DB2 UDB über Fernzugriff Dieser Abschnitt wurde entfernt. Der Anwendungsserver für DB2 UDB unterstützt die Fernverwaltung nicht mehr. Deinstallieren des Anwendungsservers für DB2 UDB Dieser Abschnitt wurde entfernt. Der Anwendungsserver für DB2 UDB unterstützt die Fernverwaltung nicht mehr. DB2 Embedded Application Server-Aktivierung Die aktivierte Datenbank eines integrierten Anwendungsservers von DB2 (Embedded Application Server) muss sich in einem 32-Bit-Exemplar befinden. Datenbanken, auf die über DB2 Embedded Application Server zugegriffen wird, können sich in 32-Bit- oder 64-Bit-Exemplaren befinden. Implementieren von DB2-Webtools Für Anwendungsserver, die JDK 1.4 verwenden, muss die Variable CLASSPATH nicht mehr während der Implementierung der DB2-Webtools angepasst werden. Alle Abhängigkeiten, einschließlich der für den XML-Parser und das XML-Umsetzungsprogramm, werden nun mit dem Webmodul implementiert und sollten entsprechend der J2EE-Spezifikation aus dem Verzeichnis WEB-INF\lib geladen werden. Diese Änderung betrifft zwei Informationsthemen: * Implementieren der DB2-Webtools auf WebLogic-Anwendungsservern * Implementieren der DB2-Webtools auf anderen Anwendungsservern Aktualisierte Themen: Implementieren der DB2-Webtools auf WebLogic-Anwendungsservern In diesem Abschnitt wird beschrieben, wie die DB2-Webtools (einschließlich der Webbefehlszentrale und der Webdiagnosezentrale) auf BEA WebLogic 7.0 implementiert und konfiguriert werden. Diese Tools können als Webanwendungen auf einem Web-Server ausgeführt werden, um den Zugriff auf DB2-Server über Webbrowser verfügbar zu machen. Voraussetzungen Bevor die DB2-Webtools auf WebLogic installiert werden können, müssen die folgenden Voraussetzungen erfüllt sein: * Der BEA WebLogic 7.0-Anwendungsserver muss installiert sein. * IBM DB2 Administration Client Version 8 muss verfügbar sein. * Ein mit dem HTML 4.0-Standard kompatibler Webbrowser muss verfügbar sein. Anmerkung: DB2-Webtools wurden mit Netscape 4.x, Netscape 6.x, Netscape 7.x, Mozilla 1.x, Internet Explorer 5.x, Opera 6.x, Konqueror 3.x (Linux) und EudoraWeb 2.x (Palm OS) getestet. Für die Verwendung bestimmter Webbrowser, die nicht getestet wurden, müssen der Servletkonfiguration möglicherweise explizite Verweise hinzugefügt werden. Einschränkungen Für die Implementierung der DB2-Webtools gelten die folgenden Einschränkungen: * Mehrfache Sprach- und Codepagekonvertierungen zwischen den Mittlerservern und den DB2-Servern werden nicht unterstützt. Die Sprache des Servers wird zwar für die Anzeige verwendet, einige Zeichen werden jedoch möglicherweise falsch angezeigt. * Um die Diagnose-Alerts für Datenbanken, Tabellenbereiche und Tabellenbereichsbehälter in der Webdiagnosezentrale angezeigt zu bekommen, müssen Sie sicherstellen, dass die Datenbanken auf dem Webanwendungsserver katalogisiert sind. * Die Verwendung der Webbrowserknöpfe (Stopp, Zurück, Verlauf) wird während der Verwendung der DB2-Webtools nicht unterstützt. * Wenn Sie Netscape Navigator 4 in Verbindung mit den DB2-Webtools verwenden, wird die Browseranzeige möglicherweise nicht korrekt aktualisiert. Falls dieses Problem auftritt, können Sie die Anzeige aktualisieren, indem Sie das Fenster minimieren und danach wieder maximieren. Alternativ hierzu können Sie die Anzeige aktualisieren, indem Sie das Browserfenster hinter einem anderen Fenster verbergen und dann wieder in den Vordergrund holen. * Um Ihren eigenen Aliasnamen einem DB2 Universal Database-System, einem Exemplarknoten oder einer Datenbank zuzuordnen, müssen Sie ihn mit dem DB2-Konfigurationsassistenten oder der DB2-Steuerzentrale explizit auf dem Anwendungsserver katalogisieren. * Beim ersten Start benötigen die DB2-Webtools deutlich mehr Zeit für die Initialisierung als bei späteren Starts. Der größte Teil dieser Wartezeit wird durch den automatischen Katalogisierungsprozess verursacht. Falls Sie die automatische Katalogisierungsfunktion nicht verwenden wollen, können Sie die Wartezeit abkürzen, indem Sie die automatische Katalogisierung über die Servletkonfiguration inaktivieren. Anmerkung: Die Parameter der Servletkonfiguration stehen in der Implementierungsdeskriptordatei web.xml zur Verfügung. Die Parameternamen und Standardwerte ändern sich bei jedem Release. Einige Anwendungsserver lassen Änderungen an diesen Parametern zu. Diese Änderungen können entweder über die Schnittstelle des Servers oder über eine direkte Bearbeitung der Datei web.xml vorgenommen werden. * Der Ausgabepuffer (Ergebnisse) hat bei Verwendung eines Desktop- oder Laptop-Browsers eine maximale absolute Größe von 1 MB, auch wenn er für eine größere Kapazität konfiguriert wurde. Bei PDA-Webbrowsern liegt die Begrenzung bei 1 KB. * Unter Linux-, UNIX- und Windows-Betriebssystemen erkennen die DB2-Webtools automatisch alle Systeme im gleichen TCP/IP-Netzwerk wie der Anwendungsserver und katalogisieren sie. Bei Systemen im gleichen TCP/IP-Netzwerk stimmen die ersten drei Ziffern der IP-Adressen überein. Die Tools versuchen, die DB2 UDB-Systemknoten mit Hilfe des ursprünglichen fernen TCP/IP-Hostnamens zu katalogisieren. Bei Namenskonflikten ordnen die Tools einen zufällig gewählten, eindeutigen Namen zu. Alle anderen DB2-Verwaltungsserver müssen Sie im Anwendungsserver explizit katalogisieren, wenn der Zugriff auf sie möglich sein soll. Dies gilt für alle Server, die mit TCP/IP arbeiten und sich nicht im gleichen TCP/IP-Netzwerk wie der Anwendungsserver befinden, sowie alle Server, die nicht mit TCP/IP arbeiten. * Unter Linux-, UNIX- und Windows-Betriebssystemen versuchen die DB2-Webtools automatisch, alle DB2 UDB-Exemplarknoten und -Datenbanken zu erkennen und zu katalogisieren, die sich auf den katalogisierten DB2 UDB-Systemen befinden. Es ist möglich, ein fernes Exemplar für mehrere Kommunikationsprotokolle zu konfigurieren. Infolgedessen enthält der Katalog einen separaten Knoteneintrag für jedes von einem automatisch katalogisierten Exemplar unterstützte Protokoll. Bei Namenskonflikten ordnen die Tools einen zufällig gewählten, eindeutigen Namen zu. Vorgehensweise Gehen Sie wie folgt vor, um die DB2-Webtools auf WebLogic-Anwendungsservern zu installieren: 1. Implementieren Sie die DB2-Webtools über die WebLogic-Verwaltungskonsole, indem Sie wie folgt vorgehen: a. Starten Sie die WebLogic-Verwaltungskonsole. b. Klicken Sie im linken Teilfenster der Anzeige die Option domain -> deployments -> Web Applications an. c. Klicken Sie den Link Configure a new Web Application an, um die Webanwendung 'DB2-Webtools' zu installieren. d. Durchsuchen Sie die Auflistung des Dateisystems, und suchen Sie die Datei Sqllib\tools\web\db2wa.war. e. Klicken Sie die Option select neben dem Dateinamen db2wa.war an. f. Wählen Sie den Server, auf dem die DB2-Webtools installiert werden sollen, aus der Liste der verfügbaren Server aus, und klicken Sie den Pfeil an, um den Server in die Liste der Zielserver zu versetzen. Anmerkung: Der ursprüngliche Name db2wa muss beibehalten werden, da er in den DB2-Webtools fest codiert ist. g. Klicken Sie Configure and Deploy an. h. Warten Sie, bis der Implementierungsstatus der Webanwendung auf dem gewünschten Server durch den Anwendungsserver aktualisiert wird. War die Implementierung erfolgreich, sollte die Nachricht Deployed=true angezeigt werden. 2. Rufen Sie die Webanwendung 'DB2-Webtools' unter der folgenden Adresse auf: http://servername:portnummer_des_anwendungsservers/db2wa Beispiel: http://servername:7001/db2wa. Implementieren der DB2-Webtools auf anderen Anwendungsservern In diesem Abschnitt wird beschrieben, wie die DB2-Webtools (einschließlich der Webbefehlszentrale und der Webdiagnosezentrale) auf anderen Anwendungsservern, wie beispielsweise Tomcat 4.0 oder Macromedia JRun 4.0, implementiert und konfiguriert werden. Diese Tools können als Webanwendungen auf einem Web-Server ausgeführt werden, um den Zugriff auf DB2-Server über Webbrowser verfügbar zu machen. Voraussetzungen Bevor die DB2-Webtools installiert werden können, müssen die folgenden Voraussetzungen erfüllt sein: * Ein Anwendungsserver, wie beispielsweise einer der folgenden, muss installiert sein: * Tomcat 4.0 Servlet/JSP Container (http://jakarta.apache.org/tomcat/) * Macromedia JRun 4.0 * IBM DB2 Administration Client Version 8 muss verfügbar sein. * Ein mit dem HTML 4.0-Standard kompatibler Webbrowser muss verfügbar sein. Einschränkungen Für die Implementierung der DB2-Webtools gelten die folgenden Einschränkungen: * Mehrfache Sprach- und Codepagekonvertierungen zwischen den Mittlerservern und den DB2-Servern werden nicht unterstützt. Die Sprache des Servers entspricht zwar der Anzeige, einige Zeichen können jedoch falsch angezeigt werden. * Um die Diagnose-Alerts für Datenbanken, Tabellenbereiche und Tabellenbereichsbehälter in der Webdiagnosezentrale angezeigt zu bekommen, müssen Sie sicherstellen, dass die Datenbanken auf dem Webanwendungsserver katalogisiert sind. * Die Verwendung der Webbrowserknöpfe (Stopp, Zurück, Verlauf) wird während der Verwendung der DB2-Webtools nicht unterstützt. * Wenn Sie Netscape Navigator 4 in Verbindung mit den DB2-Webtools verwenden, wird die Browseranzeige möglicherweise nicht korrekt aktualisiert. Falls dieses Problem auftritt, können Sie die Anzeige aktualisieren, indem Sie das Fenster minimieren und danach wieder aufrufen. Alternativ hierzu können Sie die Anzeige aktualisieren, indem Sie das Browserfenster hinter einem anderen Fenster verbergen und dann wieder in den Vordergrund holen. * Um Ihren eigenen Aliasnamen einem DB2 UDB-System, einem Exemplarknoten oder einer Datenbank zuzuordnen, müssen Sie ihn mit dem DB2-Konfigurationsassistenten oder der DB2-Steuerzentrale explizit auf dem Anwendungsserver katalogisieren. * Beim ersten Start benötigen die DB2-Webtools deutlich mehr Zeit für die Initialisierung als bei späteren Starts. Der größte Teil dieser Wartezeit wird durch den automatischen Katalogisierungsprozess verursacht. Falls Sie die automatische Katalogisierungsfunktion nicht verwenden wollen, können Sie die Wartezeit abkürzen, indem Sie die automatische Katalogisierung über die Servletkonfiguration inaktivieren. Anmerkung: Die Parameter der Servletkonfiguration stehen in der Implementierungsdeskriptordatei web.xml zur Verfügung. Die Parameternamen und Standardwerte ändern sich bei jedem Release. Einige Anwendungsserver lassen Änderungen an diesen Parametern zu. Diese Änderungen können entweder über die Schnittstelle des Servers oder über eine direkte Bearbeitung der Datei web.xml vorgenommen werden. * Der Ausgabepuffer (Ergebnisse) hat bei Verwendung eines Desktop- oder Laptop-Browsers eine maximale absolute Größe von 1 MB, auch wenn er mit einem höheren Wert konfiguriert wurde. Bei PDA-Webbrowsern liegt die Begrenzung bei 1 KB. * Unter Linux-, UNIX- und Windows-Betriebssystemen erkennen die DB2-Webtools automatisch alle Systeme im gleichen TCP/IP-Netzwerk wie der Anwendungsserver und katalogisieren sie. Bei Systemen im gleichen TCP/IP-Netzwerk stimmen die ersten drei Ziffern der IP-Adressen überein. Die Tools versuchen, die DB2 UDB-Systemknoten mit Hilfe des ursprünglichen fernen TCP/IP-Hostnamens zu katalogisieren. Bei Namenskonflikten ordnen die Tools einen zufällig gewählten, eindeutigen Namen zu. Alle anderen DB2-Verwaltungsserver müssen Sie im Anwendungsserver explizit katalogisieren, wenn der Zugriff auf sie möglich sein soll. Dies gilt für alle Server, die mit TCP/IP arbeiten und sich nicht im gleichen TCP/IP-Netzwerk wie der Anwendungsserver befinden, sowie alle Server, die nicht mit TCP/IP arbeiten. * Unter Linux-, UNIX- und Windows-Betriebssystemen versuchen die DB2-Webtools automatisch, alle DB2 UDB-Exemplarknoten und -Datenbanken zu erkennen und zu katalogisieren, die sich auf den katalogisierten DB2 UDB-Systemen befinden. Es ist möglich, ein fernes Exemplar für mehrere Kommunikationsprotokolle zu konfigurieren. Infolgedessen enthält der Katalog einen separaten Knoteneintrag für jedes von einem automatisch katalogisierten Exemplar unterstützte Protokoll. Bei Namenskonflikten ordnen die Tools einen zufällig gewählten, eindeutigen Namen zu. Vorgehensweise Im Folgenden wird die Vorgehensweise für die Installation der DB2-Webtools auf Anwendungsservern, wie beispielsweise Tomcat 4.0 oder Macromedia JRun 4.0, beschrieben: Tomcat 4.0 1. Bereiten Sie die Konfigurationsdatei (CLASSPATH) von Tomcat 4.0 vor, indem Sie die folgenden Schritte ausführen: a. Erstellen Sie die neue Umgebungs-/Systemvariable CATALINA_HOME, die den Pfad (das Ausgangsverzeichnis) für Tomcat 4.0 enthält. Beispiel: D:\jakarta-tomcat-4.0.3. b. Überprüfen Sie wie folgt, ob Tomcat Servlet/JSP Container aktiv ist: 1) Starten Sie Tomcat, indem Sie die Datei startup.bat im Verzeichnis bin der Tomcat-Verzeichnisstruktur ausführen. 2) Greifen Sie über einen Webbrowser auf die Hauptwebseite http://localhost:8080/ zu. 2. Implementieren Sie die DB2-Webtools in Tomcat Servlet/JSP Container. Lokalisieren Sie hierzu den Installationspfad für die DB2-Webtools (d. h. Sqllib\tools\web\db2wa.war), und kopieren Sie die Datei db2wa.war in das Implementierungsverzeichnis von Tomcat (d. h. das Verzeichnis webapps der Tomcat-Verzeichnisstruktur). 3. Rufen Sie die DB2-Webtools in Tomcat Servlet/JSP Container auf, indem Sie die folgenden Schritte ausführen: a. Öffnen Sie ein DB2-Befehlsfenster, und wechseln Sie in das Verzeichnis bin der Tomcat-Verzeichnisstruktur. b. Starten Sie Tomcat mit der Datei startup.bat, und stellen Sie sicher, dass ein neues Verzeichnis (db2wa) im Verzeichnis webapps erstellt wurde. Anmerkung: Wird die Datei startup.bat über eine Eingabeaufforderung ausgeführt, wird der Wert für DB2PATH nicht festgelegt. Die CLASSPATH-Zeile muss so geändert werden, dass sie explizit auf den DB2 UDB-Installationspfad und nicht nur auf die Umgebungsvariable %DB2PATH% verweist, um das Festlegen von DB2PATH zu ermöglichen. c. Die Unternehmensanwendung DB2-Webtools befindet sich an der folgenden Adresse: http://localhost:8080/db2wa. Auf die DB2-Webtools kann über einen mit HTML 4.0 kompatiblen Browser zugegriffen werden. JRun 1. Bereiten Sie einen neuen Anwendungsserver für die DB2-Webtools vor, indem Sie die folgenden Tasks ausführen: Empfehlung Das Erstellen eines neuen Anwendungsservers wird empfohlen, ist jedoch nicht obligatorisch. Zu Testzwecken kann der Standardserver verwendet werden. In diesem Fall ist es nur erforderlich, den JVM-Klassenpfad zu konfigurieren und die Webtools zu implementieren. a. Starten Sie die JRun-Verwaltungskonsole, und melden Sie sich als Administrator des Anwendungsservers an. b. Erstellen Sie einen neuen Anwendungsserver. Verwenden Sie hierzu die Option Create New Server im oberen rechten Bereich der Hauptseite. Ändern Sie den vorgegebenen Hostnamen localhost nicht. c. Geben Sie den Namen des neuen Servers (DB2WebToolsServer) ein, und klicken Sie das Verzeichnis des JRun-Servers an. Der Wert wird automatisch angegeben. d. Klicken Sie den Knopf Create Server an. e. Notieren Sie für die folgenden Einträge die generierten Werte oder geben Sie neue Werte ein: * JNDI Provider URL * Web Server Port Number. Dies ist der Wert, der in der URL für die DB2-Webtools verwendet werden muss (d. h. http://localhost:portnummer_des_web-servers/db2wa). * Web Connector Proxy Port Number f. Klicken Sie gegebenenfalls die Option update port numbers an, und schließen Sie das Fenster. 2. Implementieren Sie die DB2-Webtools auf dem JRun-Anwendungsserver, indem Sie die folgenden Tasks ausführen: a. Starten Sie den Anwendungsserver, der als Host der Webanwendung DB2-Webtools verwendet werden soll (DB2WebToolsServer, Standard oder ein beliebiger anderer Server, außer dem Verwaltungsserver). b. Klicken Sie Web Applications und anschließend Add an. c. Durchsuchen Sie den Abschnitt Deployment File, und wählen Sie die Datei Sqllib\tools\web\db2wa.war im DB2-Installationspfad aus. d. Klicken Sie Deploy an, und stellen Sie sicher, dass der Kontextpfad /db2wa ist. e. Wählen Sie den Anwendungsserver aus, und stellen Sie sicher, dass die Anwendung DB2-Webtools im Abschnitt Web Applications angezeigt wird. Klicken Sie auf dieser Seite nicht die Option Apply an. f. Wählen Sie den Link Home im oberen linken Teilfenster der Hauptseite aus. g. Starten Sie den Anwendungsserver über die Ansicht Home, die die DB2-Webtools enthält (DB2WebToolsServer). Die Unternehmensanwendung DB2-Webtools befindet sich unter der folgenden Adresse: http://localhost:portnummer_des_web-servers/db2wa. Auf die DB2-Webtools kann über einen mit HTML 4.0 kompatiblen Browser zugegriffen werden. Direkte Ein-/Ausgabe auf Blockeinheiten (Linux) Für Linux-Varianten mit einem 2.6-Kernel wird die direkte Ein-/Ausgabe (Direct I/O) jetzt auf Dateisystemen und auf Blockeinheiten unterstützt. Die direkte Ein-/Ausgabe auf Blockeinheiten ist eine Alternative zum Angeben von Einheitenbehältern für den direkten Plattenzugriff oder zur unformatierten Ein-/Ausgabe. Die Leistung der direkten Ein-/Ausgabe ist äquivalent zur Methode mit unformatierten Zeicheneinheiten. DB2 Universal Database aktiviert die direkte Ein-/Ausgabe beim Öffnen des Tabellenbereichs, wenn die Anweisung CREATE TABLESPACE einen Blockeinheitennamen für den Behälterpfad angibt. Bisher wurde dieselbe Leistung durch die Methode mit unformatierter Ein-/Ausgabe erreicht, bei der die Blockeinheit mit dem Dienstprogramm raw an eine Zeicheneinheit gebunden werden musste. Tabelle 37. Vergleich der direkten und der unformatierten Ein-/Ausgabe +----------------------------------+----------------------------------+ | Unformatierte Ein-/Ausgabe unter | Unformatierte Ein-/Ausgabe unter | | Verwendung einer Blockeinheit | Verwendung eines | | mit DIO (neue Methode) | Zeicheneinheitentreiber und des | | | Dienstprogramms raw (alte | | | Methode) | +----------------------------------+----------------------------------+ | CREATE TABLESPACE dms1 | CREATE TABLESPACE dms1 | | MANAGED BY DATABASE | MANAGED BY DATABASE | | USING (DEVICE '/dev/sda5' | USING (DEVICE '/dev/raw/raw1' | | 11170736) | 11170736) | +----------------------------------+----------------------------------+ Obwohl DB2 UDB weiterhin die Verwendung des Dienstprogramms raw für unformatierte Ein-/Ausgabe unterstützt, ist dies in neueren Varianten veraltet und wird in Zukunft möglicherweise ganz entfernt. Die neue Methode, bei der die Einheiten direkt angegeben werden, wird bevorzugt verwendet. Empfehlung Wenn Sie den direkten Plattenzugriff nutzen wollen, erstellen Sie Ihre DMS-Einheitenbehälter mit direkter Ein-/Ausgabe, um später Probleme bei der Migration zu vermeiden. Anmerkung: Die direkte Ein-/Ausgabe wird von DB2 UDB unter Linux/390 nicht unterstützt. Dämon für Information - Unterstützung für DB2 (Linux und UNIX) Der Dämon für DB2 Information - Unterstützung ist für die Steuerung des DB2-Dokumentationsservers zuständig. Der Dämon, der Teil der Installation von DB2 Information - Unterstützung ist, besteht aus zwei Dateien: * db2icd - die Initialisierungsprozedur * db2ic.conf - die Konfigurationsdatei Diese Dateien werden an folgenden Positionen installiert: AIX /etc/db2icd /var/db2/v81/db2ic.conf HP /sbin/init.d/db2icd /var/opt/db2/v81/db2ic.conf Solaris-Betriebsumgebung /etc/init.d/db2icd /var/db2/v81/db2ic.conf Linux /etc/init.d/db2icd /var/db2/v81/db2ic.conf Starten oder Stoppen des Dämons für 'DB2 Information - Unterstützung' (AIX, Solaris-Betriebsumgebung, HP, Linux) Sie sollten den Dämon nur manuell starten oder stoppen müssen, wenn Sie die Konfigurationsvariablen für den Dämon ändern wollen. Normalerweise wird der Dämon beim Systemstart gestartet, entsprechend der Ausführungsebenen, die während der Installation von DB2 Information - Unterstützung erstellt wurden. Vorgehensweise Gehen Sie wie folgt vor, um den Dämon für DB2 Information - Unterstützung zu stoppen und zu starten: 1. Stoppen Sie den Dämon, wenn er bereits aktiv ist. Geben Sie in einer Befehlszeile Folgendes ein: INIT_DIR/db2icd stop Dabei ist INIT_DIR das Installationsverzeichnis der Datei db2icd, die oben aufgeführt wird. 2. Ändern Sie beliebige Variablen für den Dämon, indem Sie die Datei db2ic.conf editieren. Zurzeit können Sie die TCP-Portnummer ändern, unter der die Dokumentation verfügbar ist, und die Position des temporären Arbeitsbereichs, der von dem Dämon verwendet wird, während er aktiv ist. 3. Starten Sie den Dämon. Geben Sie in einer Befehlszeile Folgendes ein: INIT_DIR/db2icd start Dabei ist INIT_DIR das Installationsverzeichnis der Datei db2icd, die oben aufgeführt wird. Wenn der Dämon startet, verwendet er die neuen Umgebungsvariablen. Es gibt auch eine Option zum Beenden und unverzüglichen erneuten Starten des Dämons. Geben Sie in einer Befehlszeile Folgendes ein: INIT_DIR/db2icd restart Dabei ist INIT_DIR das Installationsverzeichnis der Datei db2icd, die oben aufgeführt wird. Sie können den Status des Dämons jederzeit überprüfen. Geben Sie in einer Befehlszeile Folgendes ein: INIT_DIR/db2icd status Dabei ist INIT_DIR das Installationsverzeichnis der Datei db2icd, die oben aufgeführt wird. Der Dämon gibt den aktuellen Status zurück und zeigt die ID des Dämonprozesses oder der Dämonprozesse an, wenn er aktiv ist. Schlüsselwörter und Beispieldateien für Antwortdateien Verwenden Sie zur Installation von DB2 Information - Unterstützung Version 8.2 bei Verwendung einer Antwortdatei die folgenden Informationen: Schlüsselwort für Antwortdateien (PROD) INFORMATION_CENTER Name der Antwortdatei db2doce.rsp Fehlercodes bei der Installation der Antwortdatei Der folgende Fehlercode ist nur für Windows- und nicht für Linux- und UNIX-Betriebssysteme gültig. 3010 Die Installation war erfolgreich. Um die Installation vollständig abzuschließen, ist jedoch ein Systemneustart erforderlich. Erforderliche Benutzerkonten für die Installation von DB2-Servern (Windows) Anheben einer Quote Die Benutzerberechtigung Anheben einer Quote wurde auf den Betriebssystemen Windows XP und Windows Server 2003 in Anpassen von Speicherkontingenten für einen Prozess geändert. Vom DB2-Installationsprogramm erteilte Benutzerberechtigungen - Debuggen von Programmen Das DB2-Installationsprogramm erteilt die Benutzerberechtigung "Debuggen von Programmen" nicht. Das DB2-Installationsprogramm erteilt die folgenden Benutzerberechtigungen: * Als Teil des Betriebssystems handeln * Erstellen eines Tokenobjekts * Sperren von Seiten im Speicher * Anmelden als Dienst * Anheben einer Quote * Ersetzen eines Token auf Prozessebene Unterstützung der asynchronen Ein-/Ausgabe (Linux) Unter Linux (Kernel Version 2.6 und einige Versionen von 2.4) steht jetzt Unterstützung für asynchrone E/A (AIO) für unformatierte Einheiten und O_DIRECT-Dateisysteme zur Verfügung. AIO verbessert die Leistung der Seitenlöschfunktion. Mit dem Befehl db2set können Sie AIO unter Linux aktivieren oder inaktivieren. Zur Verwendung von AIO müssen Benutzer libaio-0.3.98 oder eine spätere Version installieren und einen Kernel haben, der AIO unterstützt. Benutzer müssen außerdem den Befehl db2set DB2LINUXAIO=true ausführen und DB2 Universal Database erneut starten. Geänderter Befehl db2ln zur Erstellung von DB2 UDB-64-Bit-Bibliotheksprogrammverbindungen (Linux und UNIX) In früheren Stufen von DB2 Universal Database (UDB) Version 8 erstellte der Befehl db2ln bestimmte DB2-Programmverbindungen unter /usr/lib und /usr/include. Auf Plattformen, auf denen 32-Bit- und 64-Bit-DB2 UDB-Exemplare unterstützt werden, zeigen diese Programmverbindungen standardmäßig auf Bibliotheksdateien oder auf INCLUDE-Dateien in den Verzeichnissen DB2VERZ/lib64 oder DB2VERZ/include64. (Dabei steht DB2VERZ für das Verzeichnis, in dem DB2 UDB Version 8 installiert ist.) Wenn Sie den Standardwert nicht wünschen, können Sie die Bitbreite angeben, indem Sie den Befehl db2ln mit dem Flag -w ausführen: db2ln -w 32|64 Dadurch wird verhindert, dass auf einigen Plattformen gleichzeitig 32-Bit-Exemplare und 64-Bit-Exemplare von DB2 UDB vorhanden sind. Ab DB2 UDB Version 8.2 erstellt der Befehl db2ln auf diesen Plattformen in den entsprechenden Verzeichnissen DB2-64-Bit-Bibliotheksprogrammverbindungen. In diesem Fall wird das Flag -w nur zum Auffüllen von /usr/include verwendet. Wenn der Befehl db2ln die Programmverbindungen für DB2 UDB-Bibliotheksdateien erstellt, werden auf unterstützten Plattformen sowohl 32-Bit- als auch 64-Bit-Programmverbindungen erstellt. Dadurch können 32-Bit-Exemplare und 64-Bit-Exemplare vorhanden sein und gleichzeitig ausgeführt werden. Einige Linux-Varianten enthalten den Entwickungs-RPM libc in der Bibliothek /usr/lib/libdb2.so oder /usr/lib64/libdb2.so. Diese Bibliothek wird für die Implementierung der Datenbank Berkeley DB von Sleepycat Software verwendet und ist nicht IBM DB2 UDB zugeordnet. Diese Datei bewirkt jedoch, dass die Befehle db2ln und db2rmln nicht funktionieren. Der Befehl db2ln setzt die Datei nicht außer Kraft, und der Befehl db2rmln entfernt die Datei nicht. Damit in dieser Situation unter Verwendung von DB2 UDB Anwendungen kompiliert werden können, müssen die Kompilierungs- und Verbindungsprozesse einen vollständigen Pfad zu den Kopfdaten bzw. den Bibliotheken von DB2 UDB bereitstellen. Dies ist die empfohlene Methode, weil dadurch das Kompilieren und Verbinden für mehrere Releases von DB2 UDB auf demselben Computer möglich ist. Weitere Informationen zu Einschränkungen für den Befehl db2ln finden Sie im Handbuch Installation und Konfiguration von DB2 UDB Version 8.2. Query Patroller Aktualisierung für das Verhalten von Abfrageklassen Wenn eine der folgenden Tasks über die Query Patroller-Zentrale oder die Query Patroller-Befehlszeile ausgeführt wird, wird eine Warnung zurückgegeben: * Hinzufügen einer Abfrageklasse * Entfernen einer Abfrageklasse * Aktualisieren des maximalen Aufwands einer Abfrage für eine Abfrageklasse Die Warnung lautet wie folgt: DQP1024W Das Erstellen, Ändern oder Entfernen einer Abfrageklasse wird erst wirksam, wenn der Query Patroller-Server erneut gestartet wird. Im DB2 Query Patroller(TM)-Handbuch: Installation, Verwaltung und Verwendung der Version 8.2 wird beschrieben, dass Sie den Query Patroller-Server nach dem Erstellen, Ändern oder Entfernen von Abfrageklassen erneut starten müssen, damit Ihre Änderungen wirksam werden. Die Nachricht und die Aussage im Handbuch treffen nicht mehr zu. Die drei zuvor aufgelisteten Tasks für Abfrageklassen werden sofort ausgeführt, es sei denn, es sind Abfragen vorhanden, die sich in der Warteschlange befinden oder gerade ausgeführt werden. Wenn dies der Fall ist (auch unter Berücksichtigung neu übergebener Abfragen), werden die an den Abfrageklassen vorgenommenen Änderungen wirksam, sobald die Abfragen, die sich in der Warteschlange befinden oder gerade ausgeführt werden, abgeschlossen sind. Wenn Sie nicht warten wollen, bis alle Abfragen, die sich in der Warteschlange befinden bzw. gerade ausgeführt werden, abgeschlossen sind, müssen Sie den Query Patroller-Server erneut starten. Anmerkung: Wie auch bei anderen Query Patroller-Versionen wird die Aktualisierung der maximalen Anzahl Abfragen für eine Abfrageklasse immer sofort ausgeführt. Definitionsaktualisierungen für den Status verwalteter Abfragen Die Bedeutungen der Abfragestatus Abgebrochen und Fertig werden wie folgt aktualisiert: Abgebrochen Die Abfrage wurde durch den Administrator, den übergebenden Benutzer oder einen Bediener, dessen Profil das Zugriffsrecht MONITORING mit Editierberechtigung aufweist, über die Query Patroller-Zentrale oder über die Query Patroller-Befehlszeile abgebrochen. Nur aktive, angehaltene, freigegebene und in der Warteschlange stehende Abfragen können abgebrochen werden. Fertig Die Abfrage wurde erfolgreich beendet. Anmerkung: Obwohl die Abfrage selbst ohne Fehler beendet wurde, empfängt die Anwendung möglicherweise einen Fehler, wenn die Beendigung von einem externen Ereignis verursacht wurde, z. B. von einer DB2 force-Anwendung. Erstellen von EXPLAIN-Tabellen vor der Ausführung des Query Patroller-Generators für Protokolldaten Wenn Sie den Generator für Protokolldaten für Query Patroller ausführen, falls die EXPLAIN-Tabellen nicht bereits vorhanden sind, wird der Generator diese für Sie erstellen. Es ist jedoch sehr empfehlenswert, dass Sie die EXPLAIN-Tabellen vor der Ausführung des Generators für Protokolldaten erstellen. Wenn Sie die EXPLAIN-Tabellen erstellen, stellen Sie sicher, dass Sie diese auf derselben Partition erstellen. Das aktive Erstellen der EXPLAIN-Tabellen auf derselben Partition verbessert die Leistung des EXPLAIN-Tools. Diese Verbesserung erhöht die Leistung des Generators für Protokolldaten. Überprüfen der Query Patroller-Protokolldateien für die Protokollanalyse Wenn in der Spalte Ausführung mit EXPLAIN bearbeiten des Berichts Abfrageaktivität im Laufe der Zeit (Protokollanalysen) ein Status Nicht erfolgreich ausgeführt für eine Abfrage angezeigt wird, wurden keine Protokolldaten für diese Abfrage generiert. Daher wird die Abfrage in keinen Protokollanalyseberichten oder -diagrammen angezeigt. Wie in Version 8 dokumentiert, können Sie die Datei qpuser.log überprüfen, um festzustellen, warum die Abfrage nicht erfolgreich war. Sie sollten nicht nur die Datei qpuser.log, sondern auch die Datei qpdiag.log überprüfen. Abnormale Beendigung des Generators für Protokolldaten Wenn der Generator für Protokolldaten ausgeführt und abnormal beendet wird, wird beim nächsten Versuch, den Generator auszuführen, ein Fehler ausgegeben. Beispiele für eine abnormale Beendigung: * DB2 Universal Database wird unerwartet gestoppt. * Der Befehl db2stop force wird abgesetzt. * Der Befehl killdb2 wird abgesetzt. Wenn der Generator für Protokolldaten abnormal beendet wird, müssen Sie vor der erneuten Ausführung des Generators den folgenden Befehl absetzen: qp -d datenbank generate historical_data stop Dabei gibt datenbank die Datenbank an, für die der Befehl ausgeführt wird. Dynamische Aktualisierung von Abfrageklassen Einige Operationen für Abfrageklassen können ab sofort ausgeführt werden, ohne dass Query Patroller gestoppt und erneut gestartet werden muss. In der folgenden Tabelle ist eine aktive Abfrage eine Abfrage, die sich in einem aktiven Status oder in einer Warteschlange befindet. Tabelle 38. Bedingungen für die erfolgreiche Durchführung von Abfrageklassenänderungen +----------------------------------+----------------------------------+ | Art der Änderung | Bedingungen für die erfolgreiche | | | Änderung | +----------------------------------+----------------------------------+ | Hinzufügen, Entfernen oder | Wenn keine aktiven Abfragen | | Aktualisieren einer | vorhanden sind, werden die | | Abfrageklasse | Änderungen umgehend | | | durchgeführt. | +----------------------------------+----------------------------------+ | Aktualisieren einer | Die Änderung wird umgehend | | Abfrageklasse mit nur einer | durchgeführt, auch wenn aktive | | Änderung an Max. Anzahl Abfragen | Abfragen vorhanden sind. | +----------------------------------+----------------------------------+ | Aktualisieren einer | Wenn aktive Abfragen vorhanden | | Abfrageklasse mit nur einer | sind, wird die Aktualisierung in | | Änderung an Max. Aufwand einer | den folgenden Fällen | | Abfrage | durchgeführt: | | | * Query Patroller wird gestoppt | | | und erneut gestartet. | | | * Es sind keine aktiven | | | Abfragen mehr vorhanden. | | | Anmerkung: Wenn eine Änderung | | | bezüglich des maximalen Aufwands | | | einer Abfrage ansteht, werden | | | nachfolgende Aktualisierungen | | | von Abfrageklassen erst dann | | | wirksam, wenn eine der obigen | | | Bedingungen erfüllt ist. | +----------------------------------+----------------------------------+ | Hinzufügen oder Entfernen einer | Wenn aktive Abfragen vorhanden | | Abfrageklasse | sind, kann eine Abfrageklasse in | | | den folgenden Fällen hinzugefügt | | | oder entfernt werden: | | | * Query Patroller wird gestoppt | | | und erneut gestartet. | | | * Es sind keine aktiven | | | Abfragen mehr vorhanden. | +----------------------------------+----------------------------------+ Verhalten verschachtelter Abfragen Verschachtelte Abfragen können nicht in eine Warteschlange eingereiht werden. Stattdessen wird die verschachtelte Abfrage bei Überschreitung eines Schwellenwerts, der normalerweise die Einreihung in eine Warteschlange zur Folge hätte, umgehend ausgeführt. Einschränkungen nach SQL-Anweisungstyp Im Gegensatz zu früheren Angaben können Abfragen mit den folgenden Anweisungen in eine Warteschlange eingereiht werden: * Abfragen, die statisches SQL mit Hostvariablen enthalten * Abfragen mit einer Identitätswertfunktion (IDENTITY_VAL_LOCAL) oder einer Folgewertfunktion (z. B. NEXT VALUE FOR oder PREVIOUS VALUE FOR) Einschränkungen der Auflösung bei der Verwendung von Terminal Services Client Wenn Sie Terminal Services Client mit einer Auflösung von 640x480 verwenden, um eine Verbindung zu einem fernen Desktop herzustellen, auf dem die Query Patroller-Zentrale aktiv ist, wird das Fenster Übergabevorgaben möglicherweise leer angezeigt. Sie müssen eine höhere Auflösung als 640x480 verwenden, damit das Fenster Übergabevorgaben richtig angezeigt wird. Neue Unterstützung von Gruppen für Abfrageübergaben Ab Version 8.2 unterstützt DB2 Universal Database (UDB) auch andere Benutzergruppen als Betriebssystemgruppen. Daher gibt es eine leichte Änderung in der Dropdown-Liste Zu verwendendes Übergabeprofil im Fenster Vorgaben für die Abfrageübergabe der Query Patroller-Zentrale. Wenn Sie angemeldet sind, aber weder die Berechtigung DBADM noch das Zugriffsrecht zum Editieren für die Query Patroller-Benutzerverwaltung haben, können Sie nur eine Übergabeeinstellung für sich selbst hinzufügen oder aktualisieren. In diesem Fall enthält die Dropdown-Liste Zu verwendendes Übergabeprofil die vorhandenen Übergabeprofile der DB2 UDB-Gruppen, zu denen Sie gehören, und nicht nur die Betriebssystemgruppen, zu denen Sie gehören. Wenn Sie angemeldet sind und entweder die Berechtigung DBADM oder das Zugriffsrecht zum Editieren für die Query Patroller-Benutzerverwaltung haben, können Sie Übergabeeinstellungen für andere Benutzer hinzufügen oder aktualisieren. In diesem Fall enthält die Dropdown-Liste Zu verwendendes Übergabeprofil alle vorhandenen Gruppenübergabeprofile. Query Patroller-Zeitplaneinschränkungen Beim Arbeiten mit Zeitplänen in der Query Patroller-Zentrale können Sie das Zeitplanfenster verwenden, um Zeitpläne in einer Datei zu speichern und später zu importieren. Wenn Sie einen Zeitplan haben, den Sie mit FixPak 6 oder einer früheren Version gespeichert haben, können Sie den Zeitplan nicht mit Version 8.2 oder einer späteren Version importieren. Der Grund für diese Einschränkung ist die Änderung der Serialisierung zwischen den JDK-Stufen, die mit DB2 UDB Version 8.2 eingeführt wurde. Berechtigung zum Verwenden des Befehls RUN IN BACKGROUND QUERY erforderlich Zum Ausführen des Befehls RUN IN BACKGROUND QUERY müssen Sie die Abfrage ursprünglich übergeben haben. Erstellen eines Aliasnamens für eine Ergebnistabelle Seit Query Patroller Version 8.1 FixPak 5 erstellt Query Patroller keine Ergebnistabellen mehr in dem Schema, das mit der Berechtigungs-ID des übergebenden Benutzers der Abfrage übereinstimmt. Stattdessen erstellt Query Patroller seitdem Ergebnistabellen in einem allgemeinen Schema DB2QPRT. Mit Query Patroller Version 8.2 wird eine Option eingeführt, mit der automatisch ein Aliasname für jede neue Ergebnistabelle erstellt wird, die Query Patroller erstellt, um Verweise auf die Ergebnistabellen mit dem Schema des übergebenden Benutzers zu ermöglichen. Die Ergebnistabelle wird im Schema DB2QPRT erstellt, und der Aliasname wird in einem Schema erstellt, das mit der Berechtigungs-ID des übergebenden Benutzers übereinstimmt. Setzen Sie zum Aktivieren oder Inaktivieren dieser Option den Befehl UPDATE QP_SYSTEM mit der Option CREATE_RESULT_TABLE_ALIASES ab: >>-UPDATE QP_SYSTEM USING---------------------------------------> >--+-DEFAULT------------------------------+-------------------->< '-CREATE_RESULT_TABLE_ALIASES--+-'Y'-+-' '-'N'-' Entfernen von nicht mehr benötigten Aliasnamen für Ergebnistabellen Aliasnamen, die mit der Option CREATE_RESULT_TABLE_ALIASES erstellt werden, werden automatisch gelöscht, wenn eine Ergebnistabelle gelöscht wird. Es gibt jedoch zwei Situationen, in denen eine Ergebnistabelle gelöscht werden kann, ohne dass der entsprechende Aliasname gelöscht wird. * Wenn die Ergebnistabelle manuell gelöscht wird, ohne die Befehlszeile qp oder die Query Patroller-Zentrale zu verwenden. * Wenn die Ergebnistabelle mit der Befehlszeile qp oder der Query Patroller-Zentrale unter der Berechtigung eines Operators gelöscht wird, der nicht der übergebende Benutzer der Abfrage ist und nicht die Berechtigung DBADM hat. Zum Bereinigen von Aliasnamen ohne zugehörige Ergebnistabellen wurde ein neuer Befehl, REMOVE RESULT_TABLE_ALIASES, erstellt. Dieser Befehl wird automatisch ausgeführt, wenn die Ergebnistabellen während des terminierten Query Patroller-Prozesses zum Löschen von Ergebnistabellen gelöscht werden. Der Befehl REMOVE RESULT_TABLE_ALIASES erhält die Liste der Aliasnamen, die gelöscht werden sollen, mit der folgenden Abfrage: with a as (select tabschema, tabname from syscat.tables where type = 'A' and tabname like 'QUERY%_RESULTS'), t as (select tabname from syscat.tables where type = 'T' and tabname like 'QUERY%_RESULTS') select all tabschema, tabname from a where not exists (select * from t where t.tabname=a.tabname) Voraussetzungen Sie müssen die Berechtigung DBADM haben. Vorgehensweise 1. Setzen Sie den Befehl REMOVE RESULT_TABLE_ALIASES ab. Dieser Befehl entfernt alle Aliasnamen, die noch vorhanden sind, nachdem ihre zugehörigen Ergebnistabellen gelöscht wurden. Die Aliasnamen wurden ursprünglich von Query Patroller für Ergebnistabellen erstellt. Befehlssyntax >>-REMOVE RESULT_TABLE_ALIASES--------------------------------->< Anmerkung: Informationen zur Eingabe von Query Patroller-Befehlen mit der Befehlszeilenschnittstelle und zur allgemeinen Syntax für Query Patroller-Befehle finden Sie in der Query Patroller-Befehlszeilenschnittstelle. Abgeschirmte Benutzer-ID erfordert den Schreibzugriff auf die Datei 'qpdiag.log' und auf deren Pfad Query Patroller verwendet mehrere abgeschirmte gespeicherte Prozeduren, die zu Protokolleinträgen in der Datei qpdiag.log führen können. Daher muss die abgeschirmte Benutzer-ID Schreibzugriff auf die Datei qpdiag.log und auf den Pfad haben, in der sich diese Datei befindet. Einstieg Aktualisieren der auf Ihrem Computer oder Intranet-Server installierten Version von 'DB2 Information - Unterstützung' Sie aktualisieren Ihre lokal installierte Version von 'DB2 Information - Unterstützung', indem Sie das letzte FixPak für die DB2-Dokumentation von http://www.ibm.com/software/data/db2/udb/support/downloadv8_docfix.html herunterladen. FixPaks für die DB2-Dokumentation werden in unregelmäßigen Abständen veröffentlicht und spiegeln eventuell nicht den aktuellen Stand der DB2-Dokumentation wider. Die letzte Version der DB2-Dokumentation finden Sie immer in der Internetversion von 'DB2 Information - Unterstützung' (http://publib.boulder.ibm.com/infocenter/db2help). Speicherbedarf Für DB2 Universal Database (UDB) sind mindestens 256 MB Arbeitsspeicher erforderlich. Für ein System, auf dem nur DB2 UDB und die DB2-GUI-Tools ausgeführt werden, sind mindestens 512 MB Arbeitsspeicher erforderlich. Zur Leistungssteigerung wird jedoch 1 GB Hauptspeicher empfohlen. Speicherbedarf für weitere Software, die auf dem System ausgeführt wird, wird in diesen Angaben nicht berücksichtigt. Berücksichtigen Sie bei der Ermittlung des Speicherbedarfs Folgendes: * Für die DB2-Clientunterstützung wurde dieser Speicherbedarf auf der Basis von fünf gleichzeitigen Clientverbindungen berechnet. Für weitere fünf Clientverbindungen benötigen Sie weitere 16 MB Hauptspeicher. * Der Speicherbedarf wird von der Größe und von der Komplexität des Datenbanksystems sowie vom Umfang der Datenbankaktivität und der Anzahl der auf das System zugreifenden Clients beeinflusst. * Unter Linux-Betriebssystemen wird ein Auslagerungsspeicher empfohlen, der mindestens doppelt so groß ist wie der Arbeitsspeicher. Dies ist jedoch nicht obligatorisch. Erläuterung der DB2 UDB-Clientunterstützung Im Thema "Übersicht über DB2-Clients" des Handbuchs IBM DB2 UDB für DB2-Clients Einstieg Version 8.1 heißt es wie folgt: DB2-Clients können eine Verbindung zu DB2-Servern, die zwei Releases höher bzw. ein Release niedriger als die Client-Release-Stufe liegen, und zu Servern auf derselben Releasestufe herstellen. Eine Ergänzung zu dieser Aussage lautet wie folgt: Verbindungen von Clients mit Version N zu Servern mit Version N+2 sind zwar in einigen Umgebungen möglich, das DB2-Unterstützungsteam unterstützt diese Konfiguration jedoch nur so lange, wie Version N vertrieben wird. Sobald Version N nicht mehr vertrieben wird, wird diese Konfiguration vom DB2-Unterstützungsteam nicht mehr unterstützt. DB2-Clients der Version 7, die eine Verbindung zu einem DB2-Server der Version 8 herstellen, werden vom DB2-Unterstützungsteam nicht mehr unterstützt, da Version 7 vom Markt genommen wurde. Modifizieren von Kernelparametern (Linux) Bevor Sie DB2 UDB installieren, sollten Sie die Linux-Kernelparameter aktualisieren. Die IPC-Begrenzungen werden im Bedarfsfall automatisch von DB2 Universal Database (UDB) erhöht. Sollten Sie jedoch besondere Anforderungen haben, können Sie diese Begrenzungen weiter erhöhen. Voraussetzungen Um die Kernelparameter ändern zu können, müssen Sie über Rootberechtigung verfügen. Vorgehensweise Um die Kernelparameter zu aktualisieren, gehen Sie wie folgt vor: Red Hat und SuSE Systeme, die einen Kernel der Serie 2.4.x verwenden, verfügen über einen Standardwert für den Parameter der Nachrichtenwarteschlange (msgmni), der lediglich einige wenige gleichzeitige Verbindungen zu DB2 UDB zulässt. Damit DB2 UDB erfolgreich ausgeführt werden kann, müssen auch Semaphor-Array-Parameter geändert werden. Um die Begrenzungen für gemeinsam benutzte Speichersegmente, Semaphor-Arrays und Nachrichtenwarteschlangen zu überprüfen, geben Sie den Befehl ipcs -l aus. Der Befehl ipcs -l gibt die folgende Ausgabe zurück: # ipcs -l ------ Shared Memory Limits -------- max number of segments = 4096 // SHMMNI max seg size (kbytes) = 262144 // SHMMAX max total shared memory (kbytes) = 8388608 // SHMALL min seg size (bytes) = 1 ------ Semaphore Limits -------- max number of arrays = 1024 // SEMMNI max semaphores per array = 250 max semaphores system wide = 256000 max ops per semop call = 32 semaphore max value = 32767 ------ Messages: Limits -------- max queues system wide = 1024 // MSGMNI max size of message (bytes) = 65535 // MSGMAX default max size of queue (bytes) = 16384 // MSGMNB Dabei gilt Folgendes: max semaphores system wide = max number of arrays x max semaphores/array Ändern Sie die Kernelparameter für Linux-Kernels (32 Bit), indem Sie der standardmäßigen Konfigurationsdatei /etc/sysctl.conf zur Systemsteuerung die folgenden Einträge hinzufügen: kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=268435456 Ändern Sie die Kernelparameter für Linux-Kernels (64 Bit), indem Sie der standardmäßigen Konfigurationsdatei /etc/sysctl.conf zur Systemsteuerung die folgenden Einträge hinzufügen: kernel.msgmni = 1024 kernel.sem = "250 256000 32 1024" kernel.shmmax=1073741824 Führen Sie sysctl mit dem Parameter -p aus, um Einstellungen aus der Standarddatei /etc/sysctl.conf in 'sysctl' zu laden: sysctl -p Die Einträge aus der Datei sysctl.conf werden beim Systemstart vom Script für die Netzwerkinitialisierung gelesen. In einigen Varianten ist es unter Umständen erforderlich, einer der Systeminitialisierungsdateien sysctl -p hinzuzufügen, wie z. B. rc.local, damit Kernelparameter nach jedem Neustart gesetzt werden. Modifizieren von Kernelparametern (Solaris-Betriebsumgebung) Die folgenden Informationen sind eine Ergänzung des Themas "Modifizieren von Kernelparametern (Solaris-Betriebsumgebung)" im Handbuch DB2 Universal Database für DB2-Server Einstieg: Für einen ordnungsgemäßen Betrieb von DB2 Universal Database (UDB) wird die Aktualisierung der Kernelkonfigurationsparameter des Systems empfohlen. Sie können über das Dienstprogramm db2osconf empfohlene Einstellungen für die Kernelparameter vorschlagen lassen. Damit Sie den Befehl db2osconf verwenden können, müssen Sie zuerst DB2 UDB installieren. Das Dienstprogramm db2osconf kann nur über $DB2DIR/bin ausgeführt werden. Nach der Modifizierung von Kernelparametern muss das System erneut gestartet werden. Handbuch 'DB2 Universal Database Express Edition Version 8.2 Basics' zum Download verfügbar IBM DB2 Universal Database Express (DB2 UDB Express) ist das neueste Mitglied der Produktfamilie von DB2 Universal Database Version 8. Es vereint die Leistungsfähigkeit, Funktionalität und Zuverlässigkeit der mehrfach ausgezeichneten relationalen Datenbank DB2 UDB von IBM mit den Vorteilen einer einfachen Konfektionierung, Installation und Implementierung bei minimalen Investitionskosten, um den Bedürfnissen kleiner und mittlerer Unternehmen (Mittelstand) im Bereich Datenmanagement gerecht zu werden. DB2 UDB Express wurde für Kunden mit minimalem internen Know-how im Bereich Datenbanken entwickelt, die eine einfach zu installierende und in-house in die jeweiligen Anwendungssoftwarelösungen integrierte Datenbank benötigen. Es handelt sich um eine DB2 UDB-Version für mehrere Benutzer, die lokale und ferne Anwendungen in eigenständigen Umgebungen (Standalone-Umgebungen) und LAN-Umgebungen unterstützt. Wenn Sie weitere Informationen zu DB2 UDB Express benötigen, können Sie die Handbücher DB2 Universal Database Express Edition Einstieg und DB2 Universal Database Express Edition Version 8.2 Basics von der Webseite für DB2 UDB-Produkthandbücher unter http://www.ibm.com/software/data/db2/udb/support/manualsv8.html herunterladen. Prüfen, ob die Datenbanken für die Migration bereit sind Der folgende Voraussetzungsabschnitt ist in Version 8.2 in dem Thema dokumentiert, das die Prüfung Ihrer Datenbanken auf Bereitschaft für die Migration erklärt. Voraussetzungen Stellen Sie sicher, dass die Datei migration.log im Ausgangsverzeichnis des Exemplareigners den folgenden Text enthält: Version von DB2CKMIG wird ausgeführt: VERSION 8. Diese Voraussetzung ist jedoch ein Schritt, der nach der Migration am Ende der Prozedur ausgeführt wird. Common Criteria-Zertifizierung für DB2 UDB Die bestätigten Informationen für DB2 UDB-Konfigurationen, die für Common Criteria zertifiziert wurden, finden Sie unter http://niap.nist.gov/cc-scheme. Spatial Extender Prüfen der Spatial Extender-Installation Das Beispielprogramm runGseDemo kann verwendet werden, um sich mit der Anwendungsprogrammierung für DB2 Spatial Extender vertraut zu machen. Eine Beschreibung der Schritte, die das Beispielprogramm ausführt, um eine Datenbank zu erstellen, die räumliche Daten verarbeiten kann, und eine räumliche Analyse von Daten in dieser Datenbank auszuführen, finden Sie in dem Thema mit dem Titel "Beispielprogramm von DB2 Spatial Extender". Dieses Thema finden Sie in DB2 Information - Unterstützung und dem Handbuch Spatial Extender und Geodetic Extender Benutzer- und Referenzhandbuch. DB2 Spatial Extender stellt ein weiteres Beispielprogramm, seBankDemoRunBankDemo, zur Verfügung, das veranschaulicht, wie einem vorhandenen Informationssystem Funktionalität für räumliche Daten hinzugefügt wird. Weitere Informationen zu beiden Beispielprogrammen finden Sie in den Readme-Dateien in folgenden Verzeichnissen: Windows ~\sqllib\samples\spatial ~\sqllib\samples\spatial\bank Linux und UNIX ~/sqllib/spatial ~/sqllib/spatial/bank SQL-Verwaltungsroutinen Falscher Spaltenname in der Ergebnismenge für die Tabellenfunktion SNAP_GET_DYN_SQL Im Thema "Tabellenfunktion SNAP_GET_DYN_SQL" in Information - Unterstützung der Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) wird die Ergebnismenge für die Tabellenfunktion SNAP_GET_DYN_SQL falsch beschrieben. Eine der Spalten wird fälschlicherweise als STMT_TXT bezeichnet. Der richtige Name der Ausgabespalte lautet STMT_TEXT. Snapshot Monitor-Tabellenfunktionen haben versionsspezifische Sichten Versionsspezifische Sichten wurden für die folgenden Snapshot Monitor-Tabellenfunktionen definiert, die in DB2 Universal Database Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) eingeführt werden: * SNAP_GET_CONTAINER * SNAP_GET_DB * SNAP_GET_DYN_SQL * SNAP_GET_STO_PATHS * SNAP_GET_TAB * SNAP_GET_TBSP * SNAP_GET_TBSP_PART Die versionsspezifischen Sichten lauten wie folgt: * SYSCATV82.SNAPCONT * SYSCATV82.SNAPDB * SYSCATV82.SNAPDYNSQL * SYSCATV82.SNAPSTOPATHS * SYSCATV82.SNAPTAB * SYSCATV82.SNAPTBSPACE * SYSCATV82.SNAPTBSPACEPART Da es keine Garantie dafür gibt, dass die Ergebnistabellen der Snapshot Monitor-Tabellenfunktionen von Release zu Release nicht geändert werden, wird die Verwendung von versionsspezifischen Sichten empfohlen, wenn Sie Ergebnistabellen bevorzugen, die garantiert nicht geändert werden. Jede Sicht enthält alle Spalten der Ergebnistabelle der zugehörigen Snapshot Monitor-Tabellenfunktion. Prozedur GET_DB_CONFIG erfordert eine Seitengröße von mindestens 8 KB für einen temporären Benutzertabellenbereich Die Prozedur GET_DB_CONFIG erfordert einen temporären Benutzertabellenbereich mit einer Seitengröße von mindestens 8 KB. Das Beispiel zur Verwendung der Prozedur GET_DB_CONFIG muss durch das folgende Beispiel ersetzt werden. Ändern Sie mit Hilfe des Befehlszeilenprozessors (CLP - Command Line Processor) den Wert der Datenbankkonfigurationsparameter logretain und userexit. Rufen Sie die Originalwerte (auf der Festplatte) sowie die aktualisierten Werte (im Speicher) ab, indem Sie die Prozedur GET_DB_CONFIG aufrufen. UPDATE DB CFG USING LOGRETAIN RECOVERY USEREXIT YES CALL SYSPROC.GET_DB_CONFIG() Das folgende Beispiel zeigt einen Teil der Ausgabe dieses Prozeduraufrufs: Ergebnismenge 1 -------------- DBCONFIG_TYPE ... LOGRETAIN ... USEREXIT... ------------- ----------- ----------- 0 1 1 1 0 0 2 Satz/Sätze ausgewählt. Rückgabestatus = 0 SQL Reference EXPLAIN_DIAGNOSTIC: Eine neue EXPLAIN-Tabelle Die Tabelle EXPLAIN_DIAGNOSTIC enthält einen Eintrag für jede Diagnosenachricht, die für ein bestimmtes Exemplar einer mit EXPLAIN bearbeiteten Anweisung in der Tabelle EXPLAIN_STATEMENT erstellt wurde. Die Tabellenfunktion EXPLAIN_GET_MSGS fragt die EXPLAIN-Tabellen EXPLAIN_DIAGNOSTIC und EXPLAIN_DIAGNOSTIC_DATA ab und gibt formatierte Nachrichten zurück. Tabelle 39. Tabelle EXPLAIN_DIAGNOSTIC Spaltenname | Datentyp | Daten | Sc | Beschreibung | | einga | hl | | | be | üs | | | optio | se | | | nal | l | | | | 1 | --------------+----------+-------+----+------------------------------ EXPLAIN_REQU | VARCHAR( | Nein | PS | Berechtigungs-ID des ESTER | 128) | | , | Initiators dieser | | | FS | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ EXPLAIN_TIME | TIMESTAM | Nein | PS | Startzeit der | P | | , | EXPLAIN-Anforderung. | | | FS | --------------+----------+-------+----+------------------------------ SOURCE_NAME | VARCHAR( | Nein | PS | Name des Pakets, das | 128) | | , | ausgeführt wird, als die | | | FS | dynamische Anweisung mit | | | | EXPLAIN bearbeitet wurde, | | | | oder der Name der | | | | Quellendatei, als das | | | | statische SQL mit EXPLAIN | | | | bearbeitet wurde. --------------+----------+-------+----+------------------------------ SOURCE_SCHEM | VARCHAR( | Nein | PS | Schema oder A | 128) | | , | Qualifikationsmerkmal der | | | FS | Quelle der | | | | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ SOURCE_VERSI | VARCHAR( | Nein | PS | Version der Quelle der ON | 64) | | , | EXPLAIN-Anforderung. | | | FS | --------------+----------+-------+----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Nein | PS | Ebene der L | | | , | EXPLAIN-Informationen, für | | | FS | die diese Zeile relevant | | | | ist. | | | | Gültige Werte: | | | | * 0: Originaltext (wie vom | | | | Benutzer eingegeben) | | | | * P: PLANAUSWAHL --------------+----------+-------+----+------------------------------ STMTNO | INTEGER | Nein | PS | Nummer der Anweisung in | | | , | einem Paket, zu der diese | | | FS | EXPLAIN-Informationen | | | | gehören. Wird für Dynamic | | | | Explain-SQL-Anweisungen auf | | | | 1 gesetzt. Für statische | | | | SQL-Anweisungen ist dieser | | | | Wert mit dem Wert identisch, | | | | der für die Katalogsicht | | | | SYSCAT.STATEMENTS verwendet | | | | wird. --------------+----------+-------+----+------------------------------ SECTNO | INTEGER | Nein | PS | Nummer des Abschnitts in | | | , | einem Paket, der diese | | | FS | SQL-Anweisung enthält. Für | | | | Dynamic | | | | Explain-SQL-Anweisungen ist | | | | dies die Nummer des | | | | Abschnitts, der den | | | | Abschnitt für diese | | | | Anweisung während der | | | | Ausführung enthält. Für | | | | statische SQL-Anweisungen | | | | ist dieser Wert mit dem Wert | | | | identisch, der für die | | | | Katalogsicht | | | | SYSCAT.STATEMENTS verwendet | | | | wird. --------------+----------+-------+----+------------------------------ DIAGNOSTIC_I | INTEGER | Nein | PK | ID der Diagnosedaten für ein D | | | | bestimmtes Exemplar einer | | | | Anweisung in der Tabelle | | | | EXPLAIN_STATEMENT. --------------+----------+-------+----+------------------------------ CODE | INTEGER | Nein | Ne | Eine eindeutige Nummer, die | | | in | jeder Diagnosenachricht | | | | zugeordnet ist. Die Nummer | | | | kann von einer | | | | Nachrichten-API verwendet | | | | werden, um den vollständigen | | | | Text der Diagnosenachricht | | | | abzurufen. 1. PK bedeutet, dass die Spalte Teil eines Primärschlüssel ist. FK bedeutet, dass die Spalte Teil eines Fremdschlüssels ist. EXPLAIN_DIAGNOSTIC_DATA: Eine neue EXPLAIN-Tabelle Die Tabelle EXPLAIN_DIAGNOSTIC_DATA enthält Nachrichtentoken für bestimmte Diagnosenachrichten, die in der Tabelle EXPLAIN_DIAGNOSTIC eingetragen sind. Die Nachrichtentoken enthalten zusätzliche Informationen zur Ausführung der SQL-Anweisung, die die Nachricht generiert hat. Die Tabellenfunktion EXPLAIN_GET_MSGS fragt die EXPLAIN-Tabellen EXPLAIN_DIAGNOSTIC und EXPLAIN_DIAGNOSTIC_DATA ab und gibt formatierte Nachrichten zurück. Tabelle 40. Tabelle EXPLAIN_DIAGNOSTIC_DATA Spaltenname | Datentyp | Daten | Sc | Beschreibung | | einga | hl | | | be | üs | | | optio | se | | | nal | l | | | | 1 | --------------+----------+-------+----+------------------------------ EXPLAIN_REQU | VARCHAR( | Nein | FS | Berechtigungs-ID des ESTER | 128) | | | Initiators dieser | | | | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ EXPLAIN_TIME | TIMESTAM | Nein | FS | Startzeit der | P | | | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ SOURCE_NAME | VARCHAR( | Nein | FS | Name des Pakets, das | 128) | | | ausgeführt wird, als die | | | | dynamische Anweisung mit | | | | EXPLAIN bearbeitet wurde, | | | | oder der Name der | | | | Quellendatei, als das | | | | statische SQL mit EXPLAIN | | | | bearbeitet wurde. --------------+----------+-------+----+------------------------------ SOURCE_SCHEM | VARCHAR( | Nein | FS | Schema oder A | 128) | | | Qualifikationsmerkmal der | | | | Quelle der | | | | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ SOURCE_VERSI | VARCHAR( | Nein | FS | Version der Quelle der ON | 64) | | | EXPLAIN-Anforderung. --------------+----------+-------+----+------------------------------ EXPLAIN_LEVE | CHAR(1) | Nein | FS | Ebene der L | | | | EXPLAIN-Informationen, für | | | | die diese Zeile relevant | | | | ist. | | | | Gültige Werte: | | | | * 0: Originaltext (wie vom | | | | Benutzer eingegeben) | | | | * P: PLANAUSWAHL --------------+----------+-------+----+------------------------------ STMTNO | INTEGER | Nein | FS | Nummer der Anweisung in | | | | einem Paket, zu der diese | | | | EXPLAIN-Informationen | | | | gehören. Wird für Dynamic | | | | Explain-SQL-Anweisungen auf | | | | 1 gesetzt. Für statische | | | | SQL-Anweisungen ist dieser | | | | Wert mit dem Wert identisch, | | | | der für die Katalogsicht | | | | SYSCAT.STATEMENTS verwendet | | | | wird. --------------+----------+-------+----+------------------------------ SECTNO | INTEGER | Nein | FS | Nummer des Abschnitts in | | | | einem Paket, der diese | | | | SQL-Anweisung enthält. Für | | | | Dynamic | | | | Explain-SQL-Anweisungen ist | | | | dies die Nummer des | | | | Abschnitts, der den | | | | Abschnitt für diese | | | | Anweisung während der | | | | Ausführung enthält. Für | | | | statische SQL-Anweisungen | | | | ist dieser Wert mit dem Wert | | | | identisch, der für die | | | | Katalogsicht | | | | SYSCAT.STATEMENTS verwendet | | | | wird. --------------+----------+-------+----+------------------------------ DIAGNOSTIC_I | INTEGER | Nein | PK | ID der Diagnosedaten für ein D | | | | bestimmtes Exemplar einer | | | | Anweisung in der Tabelle | | | | EXPLAIN_STATEMENT. --------------+----------+-------+----+------------------------------ ORDINAL | INTEGER | Nein | Ne | Position des Tokens im | | | in | vollständigen | | | | Nachrichtentext. --------------+----------+-------+----+------------------------------ TOKEN | VARCHAR( | Ja | Ne | Nachrichtentoken, das in | 1000) | | in | einen vollständigen | | | | Nachrichtentext eingefügt | | | | werden soll; ist | | | | möglicherweise | | | | abgeschnitten. --------------+----------+-------+----+------------------------------ TOKEN_LONG | BLOB(3M) | Ja | Ne | Genauere Informationen, | | | in | sofern verfügbar. 1. PK bedeutet, dass die Spalte Teil eines Primärschlüssel ist. FK bedeutet, dass die Spalte Teil eines Fremdschlüssels ist. Von der EXPLAIN-Einrichtung verwendetes Schema Die EXPLAIN-Einrichtung verwendet die folgenden IDs als Schema für die Qualifizierung der EXPLAIN-Tabellen, die gefüllt werden: * Die Sitzungsberechtigungs-ID für dynamisches SQL * Die Anweisungsberechtigungs-ID für statisches SQL Das Schema kann einer Gruppe von EXPLAIN-Tabellen oder Aliasnamen zugeordnet werden, die auf eine Gruppe von EXPLAIN-Tabellen in einem anderen Schema zeigen. Wenn unter dem Schema keine EXPLAIN-Tabellen gefunden werden, sucht die EXPLAIN-Einrichtung im Schema SYSTOOLS nach EXPLAIN-Tabellen und versucht, diese zu verwenden. Zeichenfolgedarstellung von Werten für Datum und Uhrzeit Zeitzeichenfolgen Eine Zeichenfolgedarstellung einer Zeit ist eine Zeichenfolge, die mit einer Ziffer beginnt und mindestens vier Zeichen hat. Folgende Leerzeichen können eingeschlossen werden; eine führende Null kann in dem Teil der Zeit, der die Stunde angibt, ausgelassen werden, und Sekunden können vollständig ausgelassen werden. Wenn Sekunden ausgelassen werden, wird eine implizite Angabe von null Sekunden angenommen. 13:30 ist also äquivalent zu 13:30:00. In der folgenden Tabelle werden gültige Zeichenfolgeformate für Zeiten aufgelistet. Jedes Format wird mit einem Namen und einer zugeordneten Abkürzung angegeben. Tabelle 41. Formate für Zeichenfolgedarstellungen von Zeiten +---------------------------+-------------+-------------+-------------+ | Formatname | Abkürzung | Zeitformat | Beispiel | +---------------------------+-------------+-------------+-------------+ | International Standards | ISO | hh.mm.ss | 13.30.05 | | Organization | | | | +---------------------------+-------------+-------------+-------------+ | IBM USA-Standard | USA | hh:mm AM | 1:30 PM | | | | oder PM | | +---------------------------+-------------+-------------+-------------+ | Europäischer IBM Standard | EUR | hh.mm.ss | 13.30.05 | +---------------------------+-------------+-------------+-------------+ | Japanese Industrial | JIS | hh:mm:ss | 13:30:05 | | Standard (christliche | | | | | Zeitrechnung) | | | | +---------------------------+-------------+-------------+-------------+ | Site-definiert | LOC | Abhängig | - | | | | vom | | | | | Gebietscode | | | | | der | | | | | Anwendung | | +---------------------------+-------------+-------------+-------------+ Ab Version 8.2 können "AM" und "PM" in Kleinbuchstaben oder in Großbuchstaben dargestellt werden. Systemmonitor Diagnoseanzeiger - Zusammenfassung Im Thema "Diagnoseanzeiger - Zusammenfassung" in DB2 Information - Unterstützung für Version 8.2.2 (äquivalent zu Version 8.1 FixPak 9) wird als ID für den Diagnoseanzeiger der Auslastung des dynamischen Datenbankspeichers fälschlicherweise db.db_auto_storage_util angegeben. Die richtige ID für den Diagnoseanzeiger der Auslastung des dynamischen Datenbankspeichers lautet db.auto_storage_util. Liste mit Anwendungen ohne Verbindung, obwohl der Verbindungskonzentrator nicht aktiviert ist Es ist möglich, dass beim Absetzen des Befehls list applications Anwendungen ohne Verbindung angezeigt werden, selbst wenn der Verbindungskonzentrator nicht aktiviert ist. Fortschrittsüberwachung des Laufzeit-ROLLBACK-Prozesses Die Fortschrittsüberwachung des Laufzeit-ROLLBACK-Prozesses stellt Fortschrittsinformationen zu ROLLBACK-Ereignissen anhand von Anwendungsmomentaufnahmen zur Verfügung. Es gibt zwei Typen von ROLLBACK-Ereignissen: ROLLBACK-Operation einer Arbeitseinheit Umfasst explizite (vom Benutzer aufgerufene) und implizite (erzwungene) ROLLBACK-Operationen der gesamten Transaktion. ROLLBACK-Operation zum Sicherungspunkt Umfasst Sicherungspunkte auf Anweisungs- und Anwendungsebene. Verschachtelte Sicherungspunkte werden als eine Einheit betrachtet, wobei der äußerste Sicherungspunkt verwendet wird. Die zur Verfügung gestellten Informationen umfassen die Startzeit des ROLLBACK-Ereignisses, die gesamte auszuführende Arbeit sowie die abgeschlossene Arbeit. Die Messgröße für die Arbeit ist Byte. Die Einheiten von Gesamte Arbeit geben den Bereich im Protokolldatenstrom an, der für die Transaktion oder den Sicherungspunkt rückgängig gemacht werden muss. Die Einheiten von Abgeschlossene Arbeit zeigen die relative Position der Daten im Protokolldatenstrom an, die rückgängig gemacht wurden. Aktualisierungen an Abgeschlossene Arbeit werden nach der Verarbeitung jedes Protokollsatzes vorgenommen. Aktualisierungen werden nicht regelmäßig ausgeführt, da die Protokollsätze unterschiedliche Größen haben. Beispielausgabe des Befehls GET SNAPSHOT FOR ALL APPLICATIONS Momentaufnahme einer Anwendung Anwendungskennzeichen = 6 Anwendungsstatus = ROLLBACK-Operation aktiv Startzeit = 20/02/2004 12:49:27.713720 Abgeschlossene Arbeit = 1024000 Byte Gesamte Arbeit = 4084000 Byte Momentaufnahme einer Anwendung Anwendungskennzeichen = 10 Anwendungsstatus = Ausführung von Rollback zum Sicherungspunkt Startzeit = 20/02/2004 12:49:32.832410 Abgeschlossene Arbeit = 102400 Byte Gesamte Arbeit = 2048000 Byte Anmerkung: Wenn die Verwendung von ROLLBACK-Operationen während einer Momentaufnahme nicht aktiv ist, werden keine ROLLBACK-Elemente angezeigt. XML Extender Änderung der Parameter für die gespeicherten Prozeduren dxxGenXML, dxxGenXMLClob, dxxRetrieveXML und dxxRetrieveXMLClob Für die folgenden gespeicherten Prozeduren hat sich die Beschreibung des Parameters override geändert: * dxxGenXML() * dxxGenXMLClob() * dxxRetrieveXML() * dxxRetrieveXMLClob() Die Änderung lautet wie folgt: Parameter Tabelle 42. Parameter 'override' für die gespeicherten Prozeduren dxxGenXML, dxxGenXMLClob, dxxRetrieveXML und dxxRetrieveXMLClob +-----------+--------------------------------------------+------------+ | Parameter | Beschreibung | IN/OUT-Par | | | | ameter | +-----------+--------------------------------------------+------------+ | override | Überschreibt die Bedingung in der | IN | | | DAD-Datei. Der Eingabewert basiert auf | | | | overrideType. | | | | * NO_OVERRIDE: Gibt eine Nullzeichenfolge | | | | an. | | | | * SQL_OVERRIDE: Gibt eine gültige | | | | SQL-Anweisung an. Die Verwendung dieses | | | | overrideType erfordert die Verwendung der | | | | SQL-Zuordnung in der DAD-Datei. Die | | | | Eingabe-SQL-Anweisung überschreibt | | | | SQL_stmt in der DAD-Datei. | | | | * XML_OVERRIDE: Ist eine Zeichenfolge, | | | | die mindestens einen Ausdruck enthält, | | | | wobei Ausdrücke mit dem Wort AND getrennt | | | | werden. Wenn Sie diesen overrideType | | | | verwenden, muss in der DAD-Datei die | | | | RDB_node-Zuordnung verwendet werden. | | +-----------+--------------------------------------------+------------+ Zerlegen von XML-Dokumenten in DB2 UDB-Daten Zerlegung von Tabellengrößenbegrenzungen Über die RDB_node-Zuordnung wird bei der Zerlegung angegeben, wie durch Extrahieren der Element- und Attributwerte und durch Speichern dieser Werte in Tabellenzeilen ein XML-Dokument in einzelne DB2 UDB-Tabellen zerlegt wird. Die Werte aus den einzelnen XML-Dokumenten werden in mindestens einer DB2 UDB-Tabelle gespeichert. Jede Tabelle kann maximal 10240 Zeilen aufweisen, die aus jedem Dokument durch Zerlegung gewonnen werden. Wenn z. B. ein XML-Dokument in fünf Tabellen zerlegt wird, kann jede der fünf Tabellen bis zu 10240 Zeilen für dieses eine Dokument aufweisen. Wenn die Tabelle Zeilen für mehrere Dokumente enthält, kann Sie bis 10240 Zeilen für jedes Dokument aufweisen. Das mehrfache Vorkommen von Elementen (Elementen mit Standortpfaden, die in der XML-Struktur mehrmals vorkommen können) wirkt sich auf die Anzahl der Zeilen aus. Ein Dokument, das z. B. das Element 20 Mal enthält, kann in einer Tabelle in 20 Zeilen zerlegt werden. Wenn Sie mehrfach vorkommende Elemente verwenden, müssen Sie beachten, dass aus einem Dokument maximal 10240 Zeilen in einer einzige Tabelle zerlegt werden können. Zerlegen von Dokumenten, die größer als 1 MB sind Sie müssen die gespeicherte Prozedur dxxShredXML nicht löschen und erneut erstellen, um Dokumente zu zerlegen, die größer als 1 MB sind. Wenn Sie Dokumente zerlegen möchten, die größer als 1 MB sind, rufen Sie die gespeicherte Prozedur dxxShredXML100MB auf, die bis zu 100 MB große Dokumente zerlegen kann. Obwohl dxxShredXML100MB große Dokumente verarbeiten kann, müssen Sie u. U. andere Ressourcen vergrößern, um diese gespeicherte Prozedur erfolgreich ausführen zu können. Zum Aufruf der gespeicherten Prozedur über das Beispielprogramm dxxshrd können Sie das neue Flag "-large" verwenden. Beispiel: dxxshrd -large meine_db xxx.xml Wenn Ihre Version von DB2 Universal Database älter als Version 8 FixPak 6 ist, müssen Sie dxxMigv ausführen, um XML Extender auf die aktuelle Stufe zu migrieren und die neue gespeicherte Prozedur ausführen zu können. Konfigurieren von benutzerdefinierten MQ-XML-Funktionen mit XML Extender Sie müssen benutzerdefinierte MQ-XML-Funktionen (UDFs) konfigurieren und aktivieren, bevor Sie sie verwenden können. Voraussetzungen Installieren Sie die benutzerdefinierten Funktionen anhand der Prozedur im Thema "DB2 WebSphere MQ-Funktionen installieren" in DB2 Information - Unterstützung bzw. im entsprechenden Abschnitt des Handbuchs IBM DB2 Information Integrator Application Developer's Guide. Vorgehensweise Gehen Sie wie folgt vor, um benutzerdefinierte MQ-XML-Funktionen mit XML Extender zu konfigurieren und zu aktivieren: 1. Öffnen Sie ein DB2-Eingabeaufforderungsfenster. 2. Stellen Sie eine Verbindung zu der Datenbank her, die die benutzerdefinierten MQ-XML-Funktionen verwenden wird, indem Sie folgenden Befehl eingeben: db2 connect to 3. Wechseln Sie in das Verzeichnis bnd in dem Pfad, in dem Sie DB2 Universal Database installiert haben. Beispiel: * SQLLIB/bnd (Linux und UNIX) * C:\Programme\IBM\SQLLIB\bnd (Windows) 4. Binden Sie die Datenbank mit folgendem Befehl an XML Extender: db2 bind @dbxxbind.lst 5. Binden Sie die Datenbank für XML Extender mit folgendem Befehl, so dass sie die benutzerdefinierten MQ-XML-Funktionen verwendet: db2 bind mqxml.bnd 6. Binden Sie die Datenbank mit folgendem Befehl an die CLI: db2 bind @db2cli.lst XML Extender-Umgebungsvariable DB2DXX_MIN_TMPFILE_SIZE DB2 XML Extender kann große Dokumente in temporären Dateien speichern, damit der Speicherbedarf während der Verarbeitung nicht zu hoch ist. Bei Systemen mit einer hohen physischen Speicherkapazität kann das Versetzen von Dokumenten in temporäre Dateien vermieden werden, so dass die Ein-/Ausgabeaktivität reduziert wird. Die Umgebungsvariable DB2DXX_MIN_TMPFILE_SIZE veranlasst XML Extender dazu, zur Verarbeitung von Dokumenten, die kleiner sind als der angegebene Wert, anstelle von temporären Dateien Speicherpuffer zu verwenden. Die Variable ist nur auf dem Server gültig. Wenn in einer partitionierten Umgebung mehrere physische Knoten vorhanden sind, kann die Variable für jeden Knoten anders gesetzt werden, um die Speicherkapazität jedes Computers korrekt wiederzugeben. Wenn die Umgebungsvariable nicht gesetzt ist, werden Dokumente mit einer Größe von mehr als 128 KB während der Verarbeitung automatisch in temporären Dateien gespeichert. Dokumente, die kleiner als 128 KB sind, werden im Hauptspeicher verarbeitet. Neudefinition des benutzerdefinierten Datentyps DB2XML.XMLVarchar Sie können den benutzerdefinierten Datentyp (User-Defined Type - UDT) DB2XML.XMLVarchar auf bis zu 32 KB erneut definieren. Zum Ändern der Größe eines benutzerdefinierten XMLVarchar-Datentyps erstellen Sie den benutzerdefinierten Datentyp, bevor Sie die Datenbank für XML Extender aktivieren. Weitere Informationen finden Sie im Handbuch DB2 XML Extender Verwaltung und Programmierung. Anhang A. Verzeichnisstruktur der DB2 UDB-FixPak-CD Windows-Betriebssysteme Die Dateien auf der FixPak-CD befinden sich in den folgenden Verzeichnissen: Tabelle 43. Windows-Dateien +------------------+--------------------------------------------------+ | Dateien | Speicherposition | +------------------+--------------------------------------------------+ | DB2-Produktdatei | x:\db2 | | en: | | +------------------+--------------------------------------------------+ | Installationsvor | x:\doc\\install.txt | | aussetzungen: | | +------------------+--------------------------------------------------+ | Installationsvor | x:\doc\\install.htm | | aussetzungen | | | (HTML): | | +------------------+--------------------------------------------------+ | Lizenzdateien: | x:\db2\license | +------------------+--------------------------------------------------+ | Release-Informat | x:\doc\\release.txt | | ionen: | | +------------------+--------------------------------------------------+ | Release-Informat | x:\doc\\db2ir\index.htm | | ionen (HTML): | | +------------------+--------------------------------------------------+ Dabei gilt Folgendes: * x: steht für Ihr CD-ROM-Laufwerk. * steht für das Sprachenverzeichnis; dieses besteht aus einem fünf Zeichen umfassenden Code, der einer der Sprachen in Tabelle 45 entspricht. UNIX-Betriebssysteme Die Dateien auf der FixPak-CD-ROM befinden sich in den folgenden Verzeichnissen: Tabelle 44. UNIX-Dateien +------------------+--------------------------------------------------+ | Dateien | Speicherposition | +------------------+--------------------------------------------------+ | DB2-Produktdatei | /cdrom/db2 | | en: | | +------------------+--------------------------------------------------+ | Installationsvor | /cdrom/doc//install.txt | | aussetzungen: | | +------------------+--------------------------------------------------+ | Installationsvor | /cdrom/doc//install.htm | | aussetzungen | | | (HTML): | | +------------------+--------------------------------------------------+ | Lizenzdateien: | /cdrom/db2/license | +------------------+--------------------------------------------------+ | Release-Informat | /cdrom/doc//release.txt | | ionen: | | +------------------+--------------------------------------------------+ | Release-Informat | /cdrom/doc//db2ir/index.htm | | ionen (HTML): | | +------------------+--------------------------------------------------+ Dabei gilt Folgendes: * /cdrom steht für Ihren Mountpunkt. * steht für das Sprachenverzeichnis; dieses besteht aus einem fünf Zeichen umfassenden Code, der einer der Sprachen in Tabelle 45 entspricht. Die folgende Tabelle listet die Namen der Sprachenverzeichnisse und die zugehörigen Sprachen auf. Tabelle 45. Verzeichnisnamen und die zugehörigen Sprachen +----------------+----------------------------------------------------+ | Verzeichnis | Sprache | +----------------+----------------------------------------------------+ | ar_AA | Arabisch | +----------------+----------------------------------------------------+ | bg_BG | Bulgarisch | +----------------+----------------------------------------------------+ | cs_CZ | Tschechisch | +----------------+----------------------------------------------------+ | da_DK | Dänisch | +----------------+----------------------------------------------------+ | de_DE | Deutsch | +----------------+----------------------------------------------------+ | el_GR | Griechisch | +----------------+----------------------------------------------------+ | en_US | Englisch | +----------------+----------------------------------------------------+ | es_ES | Spanisch | +----------------+----------------------------------------------------+ | fi_FI | Finnisch | +----------------+----------------------------------------------------+ | fr_FR | Französisch | +----------------+----------------------------------------------------+ | hr_HR | Kroatisch | +----------------+----------------------------------------------------+ | hu_HU | Ungarisch | +----------------+----------------------------------------------------+ | it_IT | Italienisch | +----------------+----------------------------------------------------+ | iw_IL | Hebräisch | +----------------+----------------------------------------------------+ | ja_JP | Japanisch | +----------------+----------------------------------------------------+ | ko_KR | Koreanisch | +----------------+----------------------------------------------------+ | nl_NL | Niederländisch | +----------------+----------------------------------------------------+ | no_NO | Norwegisch | +----------------+----------------------------------------------------+ | pl_PL | Polnisch | +----------------+----------------------------------------------------+ | pt_BR | Brasilianisches Portugiesisch | +----------------+----------------------------------------------------+ | pt_PT | Portugiesisch | +----------------+----------------------------------------------------+ | ro_RO | Rumänisch | +----------------+----------------------------------------------------+ | ru_RU | Russisch | +----------------+----------------------------------------------------+ | sk_SK | Slowakisch | +----------------+----------------------------------------------------+ | sl_SI | Slowenisch | +----------------+----------------------------------------------------+ | sv_SE | Schwedisch | +----------------+----------------------------------------------------+ | tr_TR | Türkisch | +----------------+----------------------------------------------------+ | zh_CN | Vereinfachtes Chinesisch | +----------------+----------------------------------------------------+ | zh_TW | Traditionelles Chinesisch | +----------------+----------------------------------------------------+ Anmerkungen: 1. Die Verzeichnisnamen können, abhängig vom verwendeten Betriebssystem, in Großbuchstaben oder in Kleinbuchstaben angezeigt werden. 2. Auf dieser CD sind möglicherweise nicht alle Verzeichnisse aus der vorangegangenen Liste vorhanden, weil nicht alle Sprachenverzeichnisse auf allen CDs verfügbar sind. 3. Ab Version 8.2 sind die Installationshinweise in die Release-Informationen integriert. Anhang B. Kontaktaufnahme mit IBM Telefonische Unterstützung erhalten Sie über folgende Nummern: * Unter 0180 3 313233 erreichen Sie Hallo IBM, wo Sie Antworten zu allgemeinen Fragen erhalten. * Unter 0190 7 72243 erreichen Sie die DB2 Helpline, wo Sie Antworten zu DB2-spezifischen Problemen erhalten. Informationen zur nächsten IBM Niederlassung in Ihrem Land oder Ihrer Region finden Sie im IBM Verzeichnis für weltweite Kontakte, das Sie im Web unter http://www.ibm.com/planetwide abrufen können. B.1 Produktinformationen Informationen zu DB2 Universal Database-Produkten erhalten Sie telefonisch oder im World Wide Web unter http://www.ibm.com/software/data/db2/udb. Diese Site enthält die neuesten Informationen zur technischen Bibliothek, zum Bestellen von Büchern, zu Produktdownloads, Newsgroups, FixPaks, Neuerungen und Links auf verfügbare Webressourcen. Telefonische Unterstützung erhalten Sie über folgende Nummern: * Unter 0180 3 313233 erreichen Sie Hallo IBM, wo Sie Antworten zu allgemeinen Fragen erhalten. * Unter 0180 5 5090 können Sie Handbücher telefonisch bestellen. Informationen dazu, wie Sie sich mit IBM in Verbindung setzen können, finden Sie auf der globalen IBM Internet-Seite unter folgender Adresse: www.ibm.com/planetwide Anhang C. Bemerkungen Möglicherweise bietet IBM die in dieser Dokumentation beschriebenen Produkte, Services oder Funktionen in anderen Ländern nicht an. Informationen über die gegenwärtig im jeweiligen Land verfügbaren Produkte und Services sind beim IBM Ansprechpartner erhältlich. Hinweise auf IBM Lizenzprogramme oder andere IBM Produkte bedeuten nicht, dass nur Programme, Produkte oder Dienstleistungen von IBM verwendet werden können. An Stelle der IBM Produkte, Programme oder Dienstleistungen können auch andere ihnen äquivalente Produkte, Programme oder Dienstleistungen verwendet werden, solange diese keine gewerblichen oder anderen Schutzrechte der IBM verletzen. Die Verantwortung für den Betrieb der Produkte, Programme oder Dienstleistungen in Verbindung mit Fremdprodukten und Fremddienstleistungen liegt beim Kunden, soweit nicht ausdrücklich solche Verbindungen erwähnt sind. Für in diesem Handbuch beschriebene Erzeugnisse und Verfahren kann es IBM Patente oder Patentanmeldungen geben. Mit der Auslieferung dieses Handbuchs ist keine Lizenzierung dieser Patente verbunden. Lizenzanforderungen sind schriftlich an folgende Adresse zu richten (Anfragen an diese Adresse müssen auf Englisch formuliert werden): IBM Europe Director of Licensing 92066 Paris La Defense Cedex France Trotz sorgfältiger Bearbeitung können technische Ungenauigkeiten oder Druckfehler in dieser Veröffentlichung nicht ausgeschlossen werden. Die Angaben in diesem Handbuch werden in regelmäßigen Zeitabständen aktualisiert. Die Änderungen werden in Überarbeitungen bekanntgegeben. IBM kann jederzeit Verbesserungen und/oder Änderungen an den in dieser Veröffentlichung beschriebenen Produkten und/oder Programmen vornehmen. Verweise in diesen Informationen auf Websites anderer Anbieter dienen lediglich als Benutzerinformationen und stellen keinerlei Billigung des Inhalts dieser Websites dar. Das über diese Websites verfügbare Material ist nicht Bestandteil des Materials für dieses IBM Produkt. Die Verwendung dieser Websites geschieht auf eigene Verantwortung. Werden an IBM Informationen eingesandt, können diese beliebig verwendet werden, ohne dass eine Verpflichtung gegenüber dem Einsender entsteht. Lizenznehmer des Programms, die Informationen zu diesem Produkt wünschen mit der Zielsetzung: (i) den Austausch von Informationen zwischen unabhängigen, erstellten Programmen und anderen Programmen (einschließlich des vorliegenden Programms) sowie (ii) die gemeinsame Nutzung der ausgetauschten Informationen zu ermöglichen, wenden sich an folgende Adresse: IBM Canada Limited Office of the Lab Director 8200 Warden Avenue Markham, Ontario L6G 1C7 CANADA Die Bereitstellung dieser Informationen kann unter Umständen von bestimmten Bedingungen - in einigen Fällen auch von der Zahlung einer Gebühr - abhängig sein. Die Lieferung des im Handbuch aufgeführten Lizenzprogramms sowie des zugehörigen Lizenzmaterials erfolgt im Rahmen der Allgemeinen Geschäftsbedingungen der IBM, der Internationalen Nutzungsbedingungen der IBM für Programmpakete oder einer äquivalenten Vereinbarung. Alle in diesem Dokument enthaltenen Leistungsdaten stammen aus einer gesteuerten Umgebung. Die Ergebnisse, die in anderen Betriebsumgebungen erzielt werden, können daher erheblich von den hier erzielten Ergebnissen abweichen. Einige Daten stammen möglicherweise von Systemen, deren Entwicklung noch nicht abgeschlossen ist. Eine Garantie, dass diese Daten auch in allgemein verfügbaren Systemen erzielt werden, kann nicht gegeben werden. Darüber hinaus wurden einige Daten unter Umständen durch Extrapolation berechnet. Die tatsächlichen Ergebnisse können abweichen. Benutzer dieses Dokuments sollten die entsprechenden Daten in ihrer spezifischen Umgebung prüfen. Informationen über Produkte anderer Hersteller als IBM wurden von den Herstellern dieser Produkte zur Verfügung gestellt, bzw. aus von ihnen veröffentlichten Ankündigungen oder anderen öffentlich zugänglichen Quellen entnommen. IBM hat diese Produkte nicht getestet und übernimmt im Hinblick auf Produkte anderer Hersteller keine Verantwortung für einwandfreie Funktion, Kompatibilität oder andere Ansprüche. Fragen zu den Leistungsmerkmalen von Produkten anderer Anbieter sind an den jeweiligen Anbieter zu richten. Aussagen über Pläne und Absichten der IBM unterliegen Änderungen oder können zurückgenommen werden und repräsentieren nur die Ziele der IBM. Diese Veröffentlichung enthält Beispiele für Daten und Berichte des alltäglichen Geschäftsablaufes. Sie sollen nur die Funktionen des Lizenzprogrammes illustrieren; sie können Namen von Personen, Firmen, Marken oder Produkten enthalten. Alle diese Namen sind frei erfunden, Ähnlichkeiten mit tatsächlichen Namen und Adressen sind rein zufällig. COPYRIGHTLIZENZ: Diese Veröffentlichung enthält Beispielanwendungsprogramme, die in Quellensprache geschrieben sind. Sie dürfen diese Beispielprogramme kostenlos kopieren, ändern und verteilen, wenn dies zu dem Zweck geschieht, Anwendungsprogramme zu entwickeln, verwenden, vermarkten oder zu verteilen, die mit der Anwendungsprogrammierschnittstelle konform sind, für die diese Beispielprogramme geschrieben werden. Diese Beispiele wurden nicht unter allen denkbaren Bedingungen getestet. Daher kann IBM die Zuverlässigkeit, Wartungsfreundlichkeit oder Funktion dieser Programme weder zusagen noch gewährleisten. Kopien oder Teile der Beispielprogramme bzw. daraus abgeleiteter Code müssen folgenden Copyrightvermerk beinhalten: (C) (Name Ihrer Firma) (Jahr). Teile des vorliegenden Codes wurden aus Beispielprogrammen der IBM Corp. abgeleitet. (C) Copyright IBM Corp. _Jahr/Jahre angeben_. Alle Rechte vorbehalten. C.1 Marken Folgende Namen sind in gewissen Ländern Marken der International Business Machines Corporation und wurden in mindestens einem der Dokumente in der DB2 UDB-Dokumentationsbibliothek verwendet: ACF/VTAM iSeries AISPO LAN Distance AIX MVS AIXwindows MVS/ESA AnyNet MVS/XA APPN Net.Data IBM System AS/400 NetView BookManager OS/390 C Set++ OS/400 C/370 PowerPC CICS pSeries Database 2 QBIC DataHub QMF DataJoiner RACF DataPropagator RS/6000 DataRefresher S/370 DB2 SP DB2 Connect SQL/400 DB2 Extenders SQL/DS DB2 OLAP Server System/370 DB2 Information Integrator IBM System /390 DB2 Query Patroller SystemView DB2 Universal Database Tivoli Distributed Relational VisualAge Database Architecture VM/ESA DRDA VSE/ESA eServer VTAM Extended Services WebExplorer FFST WebSphere First Failure Support Technology WIN-OS/2 IBM z/OS IMS zSeries IMS/ESA Folgende Namen sind in gewissen Ländern Marken oder eingetragene Marken anderer Unternehmen und wurden in mindestens einem der Dokumente in der DB2 UDB-Dokumentationsbibliothek verwendet. Microsoft, Windows, Windows NT und das Windows-Logo sind in gewissen Ländern Marken der Microsoft Corporation. Intel und Pentium sind in gewissen Ländern Marken der Intel Corporation. Java und alle auf Java basierenden Marken sind in gewissen Ländern Marken von Sun Microsystems, Inc. UNIX ist in gewissen Ländern eine eingetragene Marke von The Open Group. Linux ist in gewissen Ländern eine Marke von Linus Torvalds. Andere Namen von Unternehmen, Produkten oder Dienstleistungen können Marken anderer Unternehmen sein.