設定 Azure SQL Database 和 Azure SQL 受控執行個體

已完成

您已確認部署成功,並知道有哪些資源可供使用。 您現在可能想要設定受控執行個體中的 SQL 受控執行個體、SQL 資料庫或資料庫。 這些資料庫稱為「受控資料庫」。

設定 Azure SQL 受控執行個體

Azure SQL 受控執行個體基本上是受控 SQL Server 執行個體。 許多 SQL Server 的可用設定都適用於此。 例如,您可以使用 sp_configure 與特定的全域追蹤旗標來進行設定。 您也可以使用 tempdbmodel、和 master 等方面的選項。 您可控制網路連線性與設定。

資料庫設定

針對 Azure SQL 受控執行個體與 Azure SQL 資料庫中的受控資料庫,將有可透過 ALTER DATABASE 命令使用的選項。 有 SET 選項,且您可選取想要的 dbcompat 值。 此值有助於移轉。 您也可以使用 ALTER DATABASE 命令來變更版本或服務層。

在 Azure SQL Database 中,您無法存取底下的檔案設定。 在 Azure SQL 受控執行個體中,您可執行檔案維護。 類似於 Azure SQL 受控執行個體,您有可用的網路連線性、網路設定與空間管理選項。

明確地說,在 Azure SQL Database 中會啟用「過時」頁面偵測,且一律使用預設的伺服器定序 SQL_Latin1_General_CP1_CI_AS。 此外,下列是設定為 [開啟] 的預設選項:

  • SNAPSHOT_ISOLATION_STATE
  • READ_COMMITTED_SNAPSHOT
  • FULL RECOVERY
  • CHECKSUM
  • QUERY_STORE
  • TDE
  • ACCELERATED_DATABASE_RECOVERY

作業管理

SQL Server Agent 提供 SQL Server 使用者的設定和排程系統。 您可以透過下列選項在 Azure SQL 中執行對等的功能:

SQL 受控執行個體中的 SQL Agent

SQL Agent 是完整支援的 Azure SQL 受控執行個體服務。 SQL Agent 作業僅支援 T-SQL 和 SQL Server Integration Services 作業步驟。 不支援命令殼層步驟。 雖然不支援警示,但可透過資料庫郵件支援電子郵件通知。

SQL Database 的彈性作業

Azure SQL Database 不支援 SQL Server Agent。 不過,您可使用彈性作業代理程式服務來建立和排程作業。 作業是可對許多資料庫執行的 T-SQL 指令碼,包括平行執行。

Azure Automation

您可使用 Azure 自動化服務,以透過稱為 Runbook 的概念來協調處理序。 Runbook 可由 PowerShell 或 Python 等程式碼組成,並可導向至任何 Azure 資源。

受限制的設定選項

Azure SQL 受控執行個體和 Azure SQL Database 服務會限制下列設定。 這些限制可能會影響您執行某些工作的方式。

  • 您無法停止或重新啟動伺服器。
  • 您無法使用:
    • 立即檔案初始化。
    • 記憶體內部鎖定分頁。
    • FILESTREAM 和可用性群組。
    • 伺服器定序。 在 SQL 受控執行個體中,您可在部署期間選取伺服器定序,但無法進行變更。
    • 啟動參數。
    • 錯誤報告和客戶意見反應。
    • ALTER SERVER CONFIGURATION.
    • ERRORLOG 設定。
  • 強制執行「混合模式」安全性。
  • 透過 SQL 稽核執行登入稽核。
  • 伺服器 Proxy 帳戶不適用。

Azure SQL 受控執行個體和 SQL Database 是平台即服務 (PaaS) 供應項目。 限制這些選項不應禁止您可完整使用 SQL Server 受控服務。

儲存空間管理

針對 Azure SQL 受控執行個體,根據您所選的 SLO,可能會有執行個體允許的最大儲存體大小。 您可以為執行個體選擇最大儲存體 (最大可能大小)。 達到儲存體最大值時,您可能會收到訊息 1105 (受控資料庫),或訊息 1133 (執行個體)。

正如同 SQL Server,任何新的資料庫大小都是以 model 資料庫大小為基礎。 model 資料庫是 100 MB 的資料檔案和 8 MB 的記錄檔。 如同 SQL Server,model 大小可設定。 您可改變檔案的大小和數量,但無法控制其實體位置。 Microsoft 會根據所選部署選項來承諾 I/O 效能。 此外,由於一般用途服務層級使用遠端儲存體,因此資料檔案和記錄檔大小可能會影響效能。

針對 Azure SQL Database,根據您所選的 SLO,可能會有資料庫檔案的大小上限。 您可以選擇最大 資料大小上限 的上限。 資料庫檔案的 Maxsize (由 sys.database_files.max_size 資料行定義) 可成長到資料大小上限

為了解資料大小上限Maxsize 的概念,請考慮一個範例,其中部署了 1 TB (資料大小上限) 的一般用途資料庫。 執行此部署時,資料庫僅需要 500 GB,而非 1 TB。 當資料庫成長並接近資料大小上限時,資料庫檔案 Maxsize 也會成長到 1 TB 的等級。

交易記錄除了資料大小之外,還包含在您支付儲存體的費用。 由於自動備份以及預設會開啟加速資料庫復原,它會定期截斷。 記錄其大小上限一律是資料大小上限的 30%。 例如,若資料大小上限是 1 TB,則交易記錄大小上限為 0.3 TB,而資料大小上限和記錄大小的總計則為 1.3 TB。

Azure SQL Database 超大規模資料庫層與其他服務層級不同。 它會建立大小最初為 40 GB 並會自動成長為 100 TB 的資料庫。 交易記錄的固定大小限制為 1 TB。

連線能力結構和原則

在設定 Azure SQL 資料庫邏輯伺服器或 Azure SQL 受控執行個體的過程中,必須決定連線至資料庫的路由。

對於 Azure SQL 受控執行個體,您可以在部署期間選擇連線類型或原則。 在 Azure SQL Database 中,您可以在部署之後選擇連線類型。

您可以保留 Azure 外部連線使用 Proxy,Azure 內部連線使用重新導向的預設值,或進行其他設定。 下圖顯示閘道如何用於 Proxy 或重新導向連線原則

Azure SQL 中的連線原則圖表。

以最高層級來看,在 Proxy 模式中,所有連線都會透過閘道進行 Proxy 處理。 在重新導向模式中,建立連線並使用網路閘道後,連線可直接連線至資料庫或受控執行個體。 在上圖中,網路閘道為 redirect-find-db

直接連線 (重新導向) 可降低延遲並改善輸送量。 它也需要開啟更多連接埠來允許介於 11000 和 11999 範圍間的輸入和輸出通訊。

在下一個練習中,您會看到一些使用 Azure CLI 設定 Azure SQL 的命令。 然後,您會深入評估 Proxy 和重新導向連線原則。

知識檢查

1.

若 Azure SQL Database 中的資料大小上限為 10 GB,則交易記錄大小上限為何?

2.

Azure SQL Database 與 Azure SQL 受控執行個體的預設連線原則為何?