設定 SQL Server 資料庫

設定 SQL Server 資料庫,以搭配 Jazz™ Team Server 運作。

本程序假設您已符合下列的必備條件:

註: JazzInstallDir/server/teamserver.properties 檔中所定義的 SQL Server 資料庫預設登入名稱為 jazzDBuser,預設密碼為 jazzDBPswd。在建立資料庫時, 會在以下的步驟中使用這些值。您可以將這些值換成您資料庫的使用者名稱與密碼。

設定資料庫

註: 本節說明如何使用 SQL Server 安裝提供的指令行工具 sqlcmd,來設定 SQL Server 資料庫。您也可以使用視覺化工具, 以 SQL Server Studio Management 為例,就可以當成 SQL Server Studio Management Express 在 Express™ 版中使用。如需相關資訊,請參閱 SQL Server 文件或詢問 SQL Server 資料庫管理者 (DBA)。

若要使用 指令工具 sqlcmd 來設定 SQL Server 資料庫,請執行下列動作:

  1. 建立 Jazz Team Server 資料庫。請從指令行工具鍵入:
    CREATE DATABASE jazz 
    GO 
  2. 建立使用者和密碼,並變更 Jazz Team Server 資料庫的所有權。請從指令行工具鍵入:
    CREATE LOGIN jazzDBuser
    WITH PASSWORD = 'jazzDBPswd';
    USE jazz;
    exec sp_changedbowner 'jazzDBuser'
    GO 
  3. 建立 Jazz Team Server 資料庫對照。請從指令行工具鍵入:
    ALTER DATABASE jazz COLLATE SQL_Latin1_General_CP437_CS_AS 
    GO

配置伺服器

註: 依預設,JazzInstallDir/server 目錄中的 teamserver.properties 檔不是設定成連接 SQL Server 資料庫。所有的預設值以及 SQL Server 特定的設定全包含在同一目錄的 teamserver.sqlserver.properties 檔中。

若要配置伺服器,請執行下列動作:

  1. 重新命名下列檔案:
    • JazzInstallDir/server/ teamserver.properties 檔重新命名為 teamserver.OtherDBProvider.properties
    • teamserver.sqlserver.properties 檔重新命名為 teamserver.properties
    註: 重新命名原始 teamserver.properties 檔可讓您將檔案還原成先前的工作版本。依預設,「資料庫提供者」為 derby
  2. 如果您使用不同的使用者名稱、密碼或資料庫名稱、將 SQL Server 安裝在 Jazz Team Server以外的機器上,或者使用非預設埠,請編輯伺服器配置檔。開啟 JazzInstallDir/server 目錄中的 teamserver.properties 檔, 並變更下列資訊以符合您的設定。
    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
  3. 找出名為 sqljdbc.jar 的 SQL Server JDBC 驅動程式 JAR 檔。如「必備條件」小節中所述, 位置可能因驅動程式安裝所在而異。
  4. 完成下列作業之一,以指定 JDBC 的 JDBC JAR 檔位置:
    • 將 JDBC 驅動程式 JAR 檔複製至 JazzInstallDir/server/sqlserver 目錄
    • SQLSERVER_ABSPATH 環境變數設定為指向內含 JAR 檔的目錄
      註: 如果您使用 WebSphere® Application Server,請配置名為 SQLSERVER_JDBC 的內容; 然後將它設定為 SQL Server JDBC 驅動程式目錄的絕對檔案路徑(非 URL)。如需相關資訊,請參閱 WebSphere Application Server 設定指示。請記下檔案路徑, 以便之後用於這些指示中。

您已完成資料庫的設定。現在, 請建立 Jazz Team Server 資料庫表格。如需相關資訊,請參閱建立 Jazz Team Server 資料庫表格

疑難排解

如果 repotools 指令沒有成功, 請檢查 JazzInstallDir/server 目錄中名為 repotools_createTables.log 的日誌檔。

此外,請驗證下列:

註: 為了能在多種資料庫平台上執行, Jazz Team Server 的資料庫碼為通用和標準設計; 不過,各企業資料庫供應商在語法、最佳化策略和鎖定語意方面仍有差異。在 SQL Server 上, 已使用各種自動測試組合,並模擬正常的工作量和壓力測試,來測試伺服器。模擬正常工作量的結果, 顯示效能是可接受的。在某些實例中,在自動化並行測試中觀察到資料庫死鎖; 不過這些並未同樣重現上不同的伺服器硬體上。

依照設計,伺服器可服務大量的同步要求。在某些異常的情況中, 儲存資料庫中可能發生死鎖,這是因為要求的相關聯交易中同時更新了類似或同等的物件。這類事件罕見但仍屬正常。 依照設計,系統會有相對的防禦措施,並維護資料完整性;資料不會遺失。建置引擎執行等之類的作業偶爾會記載死鎖。一般來說, 偵測到狀況時,會重試作業。死鎖可能導致建置失敗。在某些相當罕見的情況中, 可能是使用工作項目或原始碼等之類的使用者動作,而這可藉由中斷來解決死鎖。在該情況下, 使用者動作將會失敗,並顯示內含死鎖詳細資料的錯誤給使用者。 之後使用者可重試該動作。

所遇到的所有死鎖都會記載在伺服器上,以提供發生死鎖時的相關現象資訊。日誌項目中的文字類似如下:com.ibm.team.repository.common.RetryableDatabaseException: 序列化失敗

如果您的系統遇到死鎖, 請參閱位於下列位置的錯誤日誌:https://servername:9443/jazz/service/com.ibm.team.repository.common.internal.IFeedService?category=SystemLog

如果您常常遇到死鎖異常狀況,請聯絡您的產品支援人員,或檢查 jazz.net 論壇中的最新資訊、更新項目或移轉技術。


意見