共用方式為


搭配 Azure DevOps Server 使用 Azure SQL 資料庫

Azure DevOps Server 2022 |Azure DevOps Server 2020 |Azure DevOps Server 2019

使用本文中的步驟來設定 Azure DevOps Server 與 Azure SQL 資料庫。 相較於使用內部部署 SQL Server,此拓撲有一些額外的步驟。

需求

  • Azure SQL 資料庫 只能與 Azure DevOps Server 2019 和更新版本搭配使用。
  • 您必須在 Azure VM 上安裝 Azure DevOps Server。
  • VM 必須啟用系統受控識別,才能用來向 Azure SQL 資料庫進行驗證。
  • VM 必須加入網域,但不能加入工作組。
  • Azure SQL 資料庫必須是單一資料庫。 Azure DevOps Server 2022 和更新版本支援受控實例和彈性集區。

支援所有一般用途和進階 SKU。 也支援標準 SKU S3 和更新版本。 不支援基本 SKU 和標準 SKU S2 和以下版本。 使用 Azure SQL 資料庫 的 Azure DevOps Server 組態不支援舊版 SQL Server Reporting Services 與 SQL Server Analysis Services 報告功能。 相反地,您可以使用 Azure DevOps Analytics

當您使用 Azure SQL 資料庫 時,僅支援從 Team Foundation Server 2015 和更新版本升級至 Azure DevOps Server。 Azure SQL 資料庫 不支援加密的預存程式。

設定 Azure SQL Database

  1. 在您的虛擬機上設定受控識別。 我們目前僅支持系統管理的身分識別。

    您可以使用所有標準機制來執行組態,包括:

  2. 若要設定新的 Azure DevOps Server 實例,請建立兩個 Azure SQL 資料庫:

    • AzureDevOps_Configuration

    • AzureDevOps_DefaultCollection

      注意

      如果您使用現有的資料庫,則可以略過此步驟:

      • 升級新版本的 Azure DevOps Server。
      • 將 Azure DevOps Server 的最新實例遷移至 Azure SQL 資料庫。
  3. 設定 Azure SQL 資料庫 伺服器的 Azure Active Directory 驗證。 讓自己成為伺服器上的 Active Directory 系統管理員。 您需要資料庫的系統管理員許可權,才能完成其餘的設定步驟。 您稍後可以變更此許可權。

  4. 如果您使用多部伺服器,請啟用您的受控識別或身分識別,以登入您的 Azure SQL 資料庫,並提供適當的許可權。 使用 SQL Server Management Studio 連線到資料庫伺服器。 使用 Azure Active Directory 使用者搭配 Active Directory 驗證進行連線。 如果您在 SQL 驗證下登入 Azure SQL 資料庫,則無法操作 Azure Active Directory 使用者。

    a. 在 main 資料庫上執行下列 T-SQL 命令:

    CREATE USER [VMName] FROM EXTERNAL PROVIDER
    ALTER ROLE [dbmanager] ADD MEMBER [VMName]
    

    將 VMName 取代為您新增至資料庫之受控識別的虛擬機名稱。

    b. 在組態和所有集合資料庫上執行下列 T-SQL 命令:

    CREATE USER [VMName] FROM EXTERNAL PROVIDER  
    ALTER ROLE [db_owner] ADD MEMBER [VMName]  
    ALTER USER [VMName] WITH DEFAULT_SCHEMA=dbo  
    

設定 Azure DevOps Server

返回 Azure DevOps Server 組態精靈。 如果您設定新的實例,請選取 [這是新的 Azure DevOps Server 部署]。 如果您升級或移轉並在資料庫中有現有的數據,請選取 [我有現有的資料庫可供此 Azure DevOps Server 部署使用]。

當您進入組態精靈中的 [資料庫] 頁面時,請指定 Azure SQL 資料庫 伺服器實例。 一般而言,伺服器實例的格式 為 SQLInstanceName.database.windows.net

您現在有在 Azure SQL 資料庫 上執行的 Azure DevOps Server 實例。