Probleme beim Datenzugriff - Datenquelle vom Typ Microsoft SQL Server

Dieser Artikel enthält Tipps zur Fehlerbehebung beim Zugriff auf Microsoft SQL Server-Datenquellen.

Microsoft SQL Server JDBC Driver V2.0 blockiert nach Verbindungsfehler

Wenn Sie Microsoft SQL Server JDBC Driver Version 2.0 verwenden (bei anderen Versionen tritt dieses Problem nicht auf), kann es nach einem Verbindungsfehler zu einer Blockierung kommen. Der Testfix von Microsoft behebt dieses Problem (http://support.microsoft.com/kb/977924).

ERROR CODE: 20001 and SQL STATE: HY000 accessing SQLServer database

Der Fehler kann darauf zurückzuführen sein, dass der Service Distributed Transaction Coordinator nicht gestartet wurde. Wenn Sie versuchen, auf eine Datenbank vom Typ Microsoft SQL Server zuzugreifen, sollten Sie auf einen Fehler wie den folgenden achten:
ERROR CODE: 20001
SQL STATE:  HY000
java.sql.SQLException: [Microsoft][SQLServer JDBC Driver]
[SQLServer]xa_open (0) returns -3
at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source) ...
at com.microsoft.jdbcx.sqlserver.SQLServerDataSource.getXAConnection(Unknown Source) ...
Gehen Sie wie folgt vor, um diesen Fehler zu bestätigen:
  1. Klicken Sie unter Windows auf Systemsteuerung > Dienste. Oder klicken Sie auf Systemsteuerung > Verwaltung > Dienste.
  2. Vergewissern Sie sich, dass der Dienst Distributed Transaction Coordinator oder DTC gestartet wurde.
  3. Ist dies nicht der Fall, starten Sie den Dienst Distributed Transaction Coordinator.

Anwendungsfehler vom Typ "Gespeicherte Prozedur nicht gefunden..." beim Zugriff auf eine Microsoft-SQL-Server-Datenbank

Dieser Fehler kann auftreten, wenn die gespeicherten Prozeduren für das JTA-Feature (Java™ Transaction API) nicht auf in Microsoft SQL Server installiert sind.

Gehen Sie zur Lösung des Problems wie folgt vor: Wiederholen Sie die Installation der gespeicherten Prozeduren für JTA gemäß den Anweisungen im Installationshandbuch für JDBC-Treiber.

ERROR CODE: SQL5042 when you run a Java application

Dieser Fehler kann auftreten, wenn Sie Ihre Anwendung wie folgt konfigurieren:
  1. Sie verwenden einen (Anwendungs-) Treiber des Typs 2 im Gateway zum Betriebssystem OS 390.
  2. Ihre Anwendung ist eine XA-Anwendung.
OS 390 verwendet kein XA, aber SPM. Gehen Sie wie folgt vor, um den Fehler zu beheben:
  1. Vergewissern Sie sich, dass in der Konfiguration des Datenbankmananger (dbm cfg) SPM nicht im Gateway gestartet wird.
  2. Ordnen Sie einen Port zu, und setzen Sie die Variable db2comm auf TCPIP.
  3. Geben Sie mit dem Parameter SPM_NAME in der Konfiguration des Datenbankmanagers den Namen Ihrer Maschine an.
  4. Starten Sie SPM im Gateway.
[Windows]

Ausnahme JAVAX.TRANSACTION.XA.XAEXCEPTION mit dem Fehler XP_SQLJDBC_XA_INIT

Wenn Sie eine Datenbank vom Typ Microsoft SQLSERVER unter Windows Server 2003 verwenden und einen Cluster von SQL-Servern von einem Knoten auf einen anderen verschieben, kann die Einstellung XA-Transaktionen aktivieren in den Windows-Komponentendiensten auf inaktiviert zurückgesetzt werden. In diesem Fall kann eine Ausnahme des Typs JAVAX.TRANSACTION.XA.XAEXCEPTION mit dem Fehler XP_SQLJDBC_XA_INIT ausgegeben werden, weil der JDBC-Treiber nicht mehr für XA-Transaktionen aktiviert ist.

Zum Reaktivieren der XA-Transaktionen in den Windows-Komponentendiensten führen Sie die folgenden Aktionen aus:
  1. Klicken Sie auf dem Microsoft-Windows-Desktop auf Start > Einstellungen > Systemsteuerung > Verwaltung > Komponentendienste.
  2. Erweitern Sie die Baumstrukturansicht, und suchen Sie den Computer, für den Sie Unterstützung für XA-Transaktionen aktivieren möchten, z. B. Arbeitsplatz.
  3. Zeigen Sie das Kontextmenü für den Computernamen an, und klicken Sie anschließend auf Eigenschaften.
  4. Klicken Sie auf Optionen, und setzen Sie anschließend die Einstellung Transaktionstimeout auf den Zeitwert, der für Ihre Umgebung angemessen ist. Empfohlen wird eine Mindesteinstellung von 180 Sekunden.
  5. Klicken Sie auf MSDTC und anschließend auf Sicherheitskonfiguration.
  6. Wählen Sie unter Sicherheitseinstellungen die Option XA-Transaktionen ermöglichen aus, um diese Unterstützung zu aktivieren.
  7. Klicken Sie auf OK, um Ihre Änderungen zu speichern.
Fehler vermeiden Fehler vermeiden: In der Installationsdokumentation zur JDBC-XA-Konnektivität wird auf zwei bekannte Probleme hingewiesen. Weitere Informationen finden Sie auf der Microsoft-Unterstützungssite:
  • KB899756: nur Windows 2003. MSDTC erkennt keine Prozessbeendigung, und MSDTC kann keine Zeitlimitwerte für XA-Transaktionen in Windows Server 2003 setzen.
  • KB318818: Die Leistung nimmt ab, wenn SIe XA-Transaktionen mit SQL Server verwenden.
gotcha

Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rtrb_dsaccess4
Dateiname:rtrb_dsaccess4.html