Microsoft Administering Microsoft Azure SQL Solutions Study Guide [DP300] (考試心得)

今天通過Microsoft DP300測驗
針對DP300考試的重點紀錄
1.詢問到當系統有效能問題是記憶體跟磁碟IO負載要查詢哪一個指令
記憶體 顯示目前快取在 Buffer Pool 中的資料頁資訊> sys.dm_os_buffer_descriptors
磁碟IO  檢視每個資料庫檔案的 I/O 活動 > sys.dm_io_virtual_file_stats

2.死結查詢
顯示目前正在等待的工作,包括是否有等待鎖。> sys.dm_os_waiting_tasks
查看目前執行中的請求,包括是否有被阻塞。 >sys.dm_exec_requests

3.使用 Azure Resource Manager (ARM) Template 建立 Azure SQL Database 的完整範例,並且盡可能最佳化網路效能
"resources": [
    {
      "type": "Microsoft.Sql/servers",
      "apiVersion": "2022-05-01-preview",
      "name": "[parameters('sqlServerName')]",
      "location": "[parameters('location')]",
      "properties": {
        "administratorLogin": "[parameters('sqlAdminUsername')]",
        "administratorLoginPassword": "[parameters('sqlAdminPassword')]",
        "version": "12.0",
        "minimalTlsVersion": "1.2",
        "publicNetworkAccess": "Disabled",  
        "restrictOutboundNetworkAccess": true
      }
    },
4.ARM Template:建立 Azure SQL Managed Instance with 最佳網路效能
"resources": [
    {
      "type": "Microsoft.Sql/managedInstances",
      "apiVersion": "2022-05-01-preview",
      "name": "[parameters('managedInstanceName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('skuName')]",
        "tier": "GeneralPurpose",
        "capacity": "[parameters('vCores')]"
      },
      "properties": {
        "administratorLogin": "[parameters('adminLogin')]",
        "administratorLoginPassword": "[parameters('adminPassword')]",
        "subnetId": "[resourceId('Microsoft.Network/virtualNetworks/subnets', parameters('vnetName'), parameters('subnetName'))]",
        "licenseType": "LicenseIncluded",
        "storageSizeInGB": "[parameters('storageSizeInGB')]",
        "collation": "SQL_Latin1_General_CP1_CI_AS",
        "publicDataEndpointEnabled": false,  // 關閉公網
        "timezoneId": "UTC",
        "minimalTlsVersion": "1.2",
        "zoneRedundant": true
      }
    }
  ]
5.Azure SQL 的連線策略(Connection Policy)
Redirect>用戶端首先透過 Azure Gateway 驗證連線,然後 SQL Server 會要求客戶端改連線至目標節點的資料處理 IP(直接路由)>最佳效能
Proxy>所有連線流量都通過 Azure Gateway 中繼處理,不會轉向>較高延遲
Default>根據來源 IP 與 Azure 設定自動選擇 Proxy 或 Redirect(由平台決定)>效能不穩定

6.最大程度壓縮 SQL Server 中的歷史資料
COLUMNSTORE>預設 Columnstore Index,壓縮與查詢間有平衡
COLUMNSTORE_ARCHIVE > 強化壓縮模式,犧牲部分查詢效能以節省儲存空間

7.當我有一個AZURE SQL MI資料庫要還原到虛擬機SQL上的做法
  1.建立SQL MI的憑證
-- 在 MI 上建立憑證
CREATE CREDENTIAL [https://yourstorage.blob.core.windows.net/sqlbackups]
WITH IDENTITY = 'Shared Access Signature',
SECRET = 'sv=2022-11-20&ss=b&srt=sco&sp=racwdl&se=2025-12-31T23:59:00Z&st=2023-01-01T00:00:00Z&spr=https&sig=...'  -- SAS Token

  2.SQL MI上執行備份
BACKUP DATABASE [YourDatabaseName]
TO URL = 'https://yourstorage.blob.core.windows.net/sqlbackups/YourDatabase.bak'
WITH COPY_ONLY, FORMAT, COMPRESSION, STATS = 10;
  3.VM上建立憑證
CREATE CREDENTIAL [https://yourstorage.blob.core.windows.net/sqlbackups]
WITH IDENTITY = 'Shared Access Signature',
SECRET = 'sv=....'  -- 相同 SAS Token

  4.在 VM SQL 上還原資料庫
RESTORE FILELISTONLY 
FROM URL = 'https://yourstorage.blob.core.windows.net/sqlbackups/YourDatabase.bak';

更多可以參考一下網上的練習跟microsoft learn相關課程

footer See also :

留言

這個網誌中的熱門文章

Office 2021 離線安裝封裝與KMS啟動步驟

Ollama使用心得與模型導入教學

ARC下NSMutableDictionary 無法使用retainCount