SQL Server-Datenbank konfigurieren

Konfiguration einer SQL Server-Datenbank für die Arbeit mit Jazz-Team-Server.

Für diese Prozedur wird vorausgesetzt, dass die folgenden Vorbedingungen erfüllt sind:

Hinweis: Der Standardanmeldename in der Datei 'JazzInstallDir/server/teamserver.properties' für eine SQL Server-Datenbank lautet jazzDBuser und das Standardkennwort ist jazzDBpswd. Diese Werte werden in den folgenden Schritten zur Erstellung der Datenbank verwendet. Sie können diese Werte durch den Benutzernamen und das Kennwort für Ihre Datenbank ersetzen.

Datenbank konfigurieren

In diesem Abschnitt wird beschrieben, wie die SQL Server-Datenbank mithilfe des Befehlszeilentools sqlcmd konfiguriert wird, das mit der Installation von SQL Server bereitgestellt wird. Sie können auch ein grafisch orientiertes Tool wie zum Beispiel SQL Server Studio Management verwenden, das auch für die Express-Version als SQL Server Studio Management Express verfügbar ist. Weitere Informationen hierzu finden Sie in der Dokumentation zu SQL Server oder erhalten Sie von einem SQL Server-Datenbankadministrator (DBA).

Gehen Sie wie folgt vor, um eine SQL Server-Datenbank mithilfe des Befehlszeilentools sqlcmd zu konfigurieren:

  1. Erstellen Sie eine Jazz-Team-Server-Datenbank. Geben Sie im Befehlszeilentool Folgendes ein:
    CREATE DATABASE jazz 
    GO 
  2. Erstellen Sie einen Benutzer und ein Kennwort und ändern Sie das Eigentumsrecht der Jazz-Team-Server-Datenbank. Geben Sie im Befehlszeilentool Folgendes ein:
    CREATE LOGIN jazzDBuser
    WITH PASSWORD = 'jazzDBpswd';
    USE jazz;
    exec sp_changedbowner 'jazzDBuser'
    GO 
  3. Ändern Sie die Sortierung der Jazz-Team-Server-Datenbank. Geben Sie im Befehlszeilentool Folgendes ein:
    ALTER DATABASE jazz COLLATE SQL_Latin1_General_CP437_CS_AS 
    GO

Server konfigurieren

Hinweis: Die Datei 'teamserver.properties' im Verzeichnis 'JazzInstallDir/server' ist standardmäßig nicht für die Verbindung zu einer SQL Server-Datenbank konfiguriert. Alle Standardeinstellungen sind zusammen mit den für SQL Server spezifischen Einstellungen in der Datei 'teamserver.sqlserver.properties' in demselben Verzeichnis enthalten.

Gehen Sie wie folgt vor, um den Server zu konfigurieren:

  1. Benennen Sie die folgenden Dateien um:
    • Benennen Sie die Datei 'JazzInstallDir/server/conf/jazz/teamserver.properties' in 'teamserver.OtherDBProvider.properties' um.
    • Benennen Sie die Datei 'teamserver.sqlserver.properties' in 'teamserver.properties' um.
    Tipp: Wenn Sie die ursprüngliche Datei 'teamserver.properties' umbenennen, können Sie die Datei für die frühere Arbeitsversion wieder herstellen. Als Datenbankprovider ist standardmäßig derby festgelegt.
  2. Bearbeiten Sie die Serverkonfigurationsdatei, wenn Sie einen anderen Benutzernamen, ein anderes Kennwort oder einen anderen Datenbanknamen verwendet haben, wenn Sie SQL Server auf einer anderen Maschine als Jazz-Team-Server installiert haben oder wenn Sie einen anderen Port als den Standardport verwenden. Öffnen Sie die Datei 'teamserver.properties' im Verzeichnis 'JazzInstallDir/server/conf/jazz' und ändern Sie die unten aufgelisteten Informationen so, dass Sie zu Ihrer Konfiguration passen.
    com.ibm.team.repository.db.vendor = SQLSERVER
    com.ibm.team.repository.db.jdbc.location=//SQL SERVER MACHINE IP:SQL SERVER TCIP PORT;databaseName=JAZZ DATABASE NAME;user=JAZZ USERNAME;password={password}
    com.ibm.team.repository.db.jdbc.password=JAZZ LOGIN PASSWORD
    Wichtig: Ändern Sie nicht den Text 'password={password}' in der Eigenschaft com.ibm.team.repository.db.jdbc.location. Das Benutzerkennwort muss in der Eigenschaft com.ibm.team.repository.db.jdbc.password angegeben werden.
Wichtig: Nur für Windows. Stellen Sie sicher, dass sich Ihr Server im gemischten Modus befindet. Sie können dies bestätigen, indem Sie die Serversicherheit überprüfen. Es sollte der Modus für die Authentifizierung von SQL Server und Windows eingestellt sein.
Gehen Sie wie folgt vor, um die Position der JAR-Datei für JDBC anzugeben:
  1. Erstellen Sie in dem Verzeichnis, in dem sich die Server-Scripts befinden (JazzInstallDir/server), das Verzeichnis 'sqlserver'.
  2. Suchen Sie die JAR-Datei 'sqljdbc.jar' für den SQL Server-JDBC-Treiber. Die Position kann abhängig vom Installationsverzeichnis der Treiber, wie im Abschnitt zu den Voraussetzungen erläutert, unterschiedlich sein. Kopieren Sie die Datei in das soeben erstellte Verzeichnis 'sqlserver'.
  3. Geben Sie die Position der JDBC-JAR-Datei für JDBC durch Ausführen der folgenden Task an:
    • Konfigurieren Sie die Umgebungsvariable SQLSERVER_ABSPATH so, dass auf das Verzeichnis verwiesen wird, in dem sich die JAR-Datei befindet. Wenn im Pfad Leerzeichen enthalten sind, müssen Sie diese in Anführungszeichen setzen.
      Tipp: Wenn Sie WebSphere Application Server verwenden, konfigurieren Sie die Eigenschaft SQLSERVER_JDBC; stellen Sie anschließend für diese Eigenschaft einen absoluten Verzeichnispfad (keine URL) ein, der die SQL Server-JDBC-Treiber enthält, beispielsweise wenn Ihre Datei sqljdbc.jar sich in JazzInstallDir/server/sqlserver befindet. Weitere Informationen hierzu finden Sie in den Konfigurationsanweisungen zu WebSphere Application Server. Notieren Sie den Dateipfad für die spätere Verwendung in diesen Anweisungen.

Fehlerbehebung

Wenn der Befehl von Repository Tools fehlschlägt, überprüfen Sie die Protokolldatei 'repotools_createTables.log' im Verzeichnis 'JazzInstallDir/server'.

Überprüfen Sie auch Folgendes:

Anmerkung: Der Datenbankcode für Jazz-Team-Server wurde generisch und dem Standard entsprechend gestaltet, damit er auf mehreren Datenbankplattformen ausgeführt werden kann; zwischen den Datenbankanbietern gibt es jedoch Unterschiede in Bezug auf Syntax, Optimierungsstrategien und Verriegelungssemantik. Der Server wurde für SQL Server mithilfe einer Kombination aus automatisierten Tests, Simulationen mit normaler Auslastung und Belastungstests getestet. Die Simulationen mit normaler Auslastung ergaben eine akzeptable Leistung. In einigen Fällen wurden bei automatisierten Tests Datenbank-Deadlocks festgestellt, die aber nicht konsistent auf einer anderen Server-Hardware reproduziert werden konnten.

Der Server ist für die Verarbeitung einer großen Anzahl simultaner Anforderungen ausgelegt. In Ausnahmefällen können Deadlocks in der Repository-Datenbank auftreten, wenn ähnliche oder gleiche Objekte gleichzeitig in Transaktionen aktualisiert werden, die den Anforderungen zugeordnet sind. Hierbei handelt es sich um seltene, aber normale Ereignisse. Das System ist so konzipiert, dass solche Ereignisse aufgefangen werden können und die Datenintegrität erhalten bleibt; es kommt somit nicht zu einem Datenverlust. Manchmal werden Deadlocks durch Tasks dokumentiert, wie zum Beispiel durch die Ausführung einer Build-Engine. Normalerweise wird die Bedingung ermittelt und die Ausführung der Task erneut versucht. Der Deadlock kann das Fehlschlagen der Erstellung zur Folge haben. In sehr seltenen Fällen kann es sich um eine Benutzeraktion handeln, wie zum Beispiel die Arbeit mit Arbeitselementen oder Quellcode, die abgebrochen wird, um einen Deadlock zu beheben. In einem solchen Fall schlägt die Benutzeraktion fehl und ein Fehler mit den Details zum Deadlock wird angezeigt. Der Benutzer kann die Aktion anschließend erneut versuchen.

Alle aufgetretenen Deadlocks werden auf dem Server protokolliert, um Informationen über die Ereignisse vor dem Auftreten des Deadlocks bereitzustellen. Der Protokolleintrag besteht aus ungefähr folgendem Text: com.ibm.team.repository.common.RetryableDatabaseException: Serialization failure.

Wenn auf Ihrem System Deadlocks auftreten, überprüfen Sie das Fehlerprotokoll, das unter 'https://servername:9443/jazz/service/com.ibm.team.repository.common.internal.IFeedService?category=SystemLog' zur Verfügung steht.

Wenn häufiger Deadlock-Ausnahmebedingungen auftreten, setzen Sie sich mit Ihrer Produktunterstützung in Verbindung oder überprüfen in den Foren von 'jazz.net' die neusten Informationen, Aktualisierungen oder Migrationstechniken.


Feedback

War dies eine Hilfe? Sie können Ihr Feedback bei Jazz.net (Registrierung erforderlich) geben: Geben Sie Ihre Kommentare in den Foren oder senden Sie einen Bug.