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

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

使用本文中的步驟,使用 Azure SQL Database 來設定 Azure DevOps Server。 相較於使用內部部署 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 DevOps Server 使用 Azure SQL Database 的組態不支援具有 SQL Server Analysis Services 報表功能的較舊 SQL Server Reporting Services。 相反地,您可以使用 Azure DevOps Analytics

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

設定 Azure SQL 資料庫

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

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

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

    • AzureDevOps_Configuration

    • AzureDevOps_DefaultCollection

      注意

      如果您使用現有的資料庫來略過此步驟::

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

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

    a. 在資料庫上 master 執行下列 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 DevOps Server 實例在 Azure SQL Database 上執行。