skills/microsoftdocs/agent-skills/azure-sql-virtual-machines

azure-sql-virtual-machines

SKILL.md

SQL Server on Azure Virtual Machines Skill

This skill provides expert guidance for SQL Server on Azure Virtual Machines. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.

How to Use This Skill

IMPORTANT for Agent: This file may be large. Use the Category Index below to locate relevant sections, then use read_file with specific line ranges (e.g., L136-L144) to read the sections needed for the user's question

IMPORTANT for Agent: If metadata.generated_at is more than 3 months old, suggest the user pull the latest version from the repository. If mcp_microsoftdocs tools are not available, suggest the user install it: Installation Guide

This skill requires network access to fetch documentation content:

  • Preferred: Use mcp_microsoftdocs:microsoft_docs_fetch with query string from=learn-agent-skill. Returns Markdown.
  • Fallback: Use fetch_webpage with query string from=learn-agent-skill&accept=text/markdown. Returns Markdown.

Category Index

Category Lines Description
Troubleshooting L37-L52 Diagnosing and fixing Azure SQL and SQL Server on Azure VM issues: connectivity, capacity, performance (I/O, memory, redo lag), transaction logs, geo-replication, and IaaS Agent extension errors.
Best Practices L53-L66 Performance, HA/DR, and maintenance best practices for SQL Server on Azure VMs: VM sizing, storage/tempdb tuning, baselines, backups, FCI/DNN, and cluster configuration.
Decision Making L67-L78 Guidance on migration/modernization to SQL on Azure VMs (from Db2/Oracle/on-prem), HADR and licensing choices, cost optimization, and end-of-support upgrade planning.
Architecture & Design Patterns L79-L87 High-level designs and patterns for SQL Server on Azure VMs: connectivity, Always On availability groups, failover cluster instances, and Windows Server Failover Clustering setup.
Limits & Quotas L88-L95 Info on Azure SQL capacity limits, DTU benchmark behavior, regional feature availability, and how to request quota increases for databases and managed instances
Security L96-L106 Securing SQL Server on Azure VMs: policies, TLS cert rotation, Key Vault and EKM, Entra auth, managed identities, hardening guidance, and confidential VM deployment.
Configuration L107-L149 Configuring SQL Server on Azure VMs: HA/DR (AGs, FCIs, listeners, load balancers), storage/perf, backups, editions/versions, and SQL IaaS Agent/monitoring setup.
Integrations & Coding Patterns L150-L155 Backing up and restoring SQL Server on Azure VMs directly to Azure Blob Storage, including configurations that use managed identities instead of stored credentials.
Deployment L156-L173 Deploying and configuring SQL Server Always On availability groups and FCIs on Azure VMs, including single/multi-subnet, cross-region, prerequisites, and migration of VMs and storage.

Troubleshooting

Topic URL
Resolve capacity errors when deploying Azure SQL resources https://learn.microsoft.com/en-us/azure/azure-sql/capacity-errors-troubleshoot?view=azuresql
Fix slow database import and export in Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/database-import-export-hang?view=azuresql
Handle transient connectivity errors in Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-common-connectivity-issues?view=azuresql
Troubleshoot common connection issues for Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-common-errors-issues?view=azuresql
Troubleshoot geo-replication and redo lag in Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-geo-replication-redo?view=azuresql
Investigate and fix memory issues in Azure SQL Database https://learn.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-memory-errors-issues?view=azuresql
Troubleshoot transaction log full errors in Azure SQL Database https://learn.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-transaction-log-errors-issues?view=azuresql-db
Diagnose and work around Azure SQL MI known issues https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/doc-changes-updates-known-issues?view=azuresql
Troubleshoot transaction log issues in Azure SQL Managed Instance https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/troubleshoot-transaction-log-errors-issues?view=azuresql-mi
Resolve common SQL Server on Azure VM issues https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/frequently-asked-questions-faq?view=azuresql
Troubleshoot SQL Server IaaS Agent extension issues on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-agent-extension-troubleshoot-known-issues?view=azuresql
Diagnose I/O throttling for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/storage-performance-analysis?view=azuresql

Best Practices

Topic URL
Prepare for planned maintenance in Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/planned-maintenance?view=azuresql
Understand feature interoperability with DNN listeners https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-dnn-interoperability?view=azuresql
Apply backup and restore strategies for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/backup-restore?view=azuresql
Use SQL Server features with FCI DNN on Azure https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-dnn-interoperability?view=azuresql
Configure HADR clusters for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/hadr-cluster-best-practices?view=azuresql
Apply performance best practices checklist for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-checklist?view=azuresql
Collect performance baselines for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-collect-baseline?view=azuresql
Optimize storage performance for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-storage?view=azuresql
Select and tune VM sizes for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/performance-guidelines-best-practices-vm-size?view=azuresql
Optimize SQL tempdb using VM ephemeral storage https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/tempdb-ephemeral-storage?view=azuresql

Decision Making

Topic URL
Answer migration and modernization questions for Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/migration-guides/modernization?view=azuresql
Plan and execute Db2 to SQL on Azure VM migration https://learn.microsoft.com/en-us/azure/azure-sql/migration-guides/virtual-machines/db2-to-sql-on-azure-vm-guide?view=azuresql
Plan and execute Oracle to SQL on Azure VM migration https://learn.microsoft.com/en-us/azure/azure-sql/migration-guides/virtual-machines/oracle-to-sql-on-azure-vm-guide?view=azuresql
Use Modernization Advisor to compare SQL VM vs Managed Instance https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/modernization-advisor?view=azuresql
Choose HADR and business continuity options for SQL VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/business-continuity-high-availability-disaster-recovery-hadr-overview?view=azuresql
Switch SQL Server VM licensing to Azure Hybrid Benefit https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/licensing-model-azure-hybrid-benefit-ahb-change?view=azuresql
Choose cost-effective pricing options for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/pricing-guidance?view=azuresql
Plan SQL Server 2014 end-of-support migration to Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-server-extend-end-of-support?view=azuresql

Architecture & Design Patterns

Topic URL
Understand connectivity architecture for Azure SQL Database https://learn.microsoft.com/en-us/azure/azure-sql/database/connectivity-architecture?view=azuresql
Apply SQL Server application patterns on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/application-patterns-development-strategies?view=azuresql
Design Always On availability groups for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-overview?view=azuresql
Understand failover cluster instances for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-overview?view=azuresql
Use Windows Server Failover Clustering with SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/hadr-windows-server-failover-cluster-overview?view=azuresql

Limits & Quotas

Topic URL
Understand DTU benchmark characteristics for Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/dtu-benchmark?view=azuresql
Request quota increases for Azure SQL resources https://learn.microsoft.com/en-us/azure/azure-sql/database/quota-increase-request?view=azuresql
Check regional feature availability for Azure SQL Database https://learn.microsoft.com/en-us/azure/azure-sql/database/region-availability?view=azuresql
Check regional feature availability for Azure SQL Managed Instance https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/region-availability?view=azuresql

Security

Topic URL
Use built-in Azure Policy definitions for Azure SQL https://learn.microsoft.com/en-us/azure/azure-sql/database/policy-reference?view=azuresql
Prepare for Azure SQL TLS root certificate rotation https://learn.microsoft.com/en-us/azure/azure-sql/updates/ssl-root-certificate-expiring?view=azuresql
Integrate Azure Key Vault with SQL Server on VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/azure-key-vault-integration-configure?view=azuresql
Enable Microsoft Entra authentication for SQL Server VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/configure-azure-ad-authentication-for-sql-vm?view=azuresql
Use managed identities with SQL EKM and Key Vault https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/managed-identity-extensible-key-management?view=azuresql
Harden SQL Server on Azure VMs with security best practices https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/security-considerations-best-practices?view=azuresql
Deploy SQL Server to Azure confidential VMs securely https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-vm-create-confidential-vm-how-to?view=azuresql

Configuration

Topic URL
Reference for Azure SQL Database monitoring metrics and logs https://learn.microsoft.com/en-us/azure/azure-sql/database/monitoring-sql-database-azure-monitor-reference?view=azuresql
Reference for Azure SQL Managed Instance monitoring data https://learn.microsoft.com/en-us/azure/azure-sql/managed-instance/monitoring-sql-managed-instance-azure-monitor-reference?view=azuresql
Set up Always On AG with DH2i DxEnterprise on Azure https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/dh2i-high-availability-tutorial?view=azuresql
Configure availability group listener for Linux SQL VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/high-availability-listener-tutorial?view=azuresql
Configure RHEL cluster and fencing for SQL AG on Azure https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/rhel-high-availability-fencing-tutorial?view=azuresql
Configure SLES cluster and STONITH for SQL AG on Azure https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/sles-high-availability-fencing-tutorial?view=azuresql
Register Linux SQL VM with SQL IaaS Agent https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/sql-iaas-agent-extension-register-vm-linux?view=azuresql
Configure SQL IaaS Agent extension on Linux VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/sql-server-iaas-agent-extension-linux?view=azuresql
Configure Ubuntu availability group for SQL on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/linux/ubuntu-high-availability-fencing-tutorial?view=azuresql
Create SQL Server on Azure VM with PowerShell https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/scripts/create-sql-vm-powershell?view=azuresql
Configure automated backups for SQL Server 2014 VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/automated-backup-sql-2014?view=azuresql
Configure automated backups for SQL Server 2016+ VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/automated-backup?view=azuresql
Configure DNN listener for SQL availability groups on VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-distributed-network-name-dnn-listener-configure?view=azuresql
Configure AG listeners and load balancer via PowerShell https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-listener-powershell-configure?view=azuresql
Configure load balancer and AG listener in Azure portal https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-load-balancer-portal-configure?view=azuresql
Configure Azure load balancer for VNN AG listener https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-vnn-azure-load-balancer-configure?view=azuresql
Change SQL Server edition in-place on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/change-sql-server-edition?view=azuresql
Upgrade or downgrade SQL Server version in-place on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/change-sql-server-version?view=azuresql
Configure SQL Server on Azure VM deployment options in the portal https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/create-sql-vm-portal?view=azuresql
Provision SQL Server on Azure VMs with advanced PowerShell options https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/create-sql-vm-powershell?view=azuresql
Configure SQL Server on Azure Dedicated Host https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/dedicated-host?view=azuresql
Manually configure SQL FCI with Azure Elastic SAN https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-azure-elastic-san-manually-configure?view=azuresql
Create SQL failover cluster instance with Azure shared disks https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-azure-shared-disks-manually-configure?view=azuresql
Configure distributed network name for SQL FCI on Azure https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-distributed-network-name-dnn-configure?view=azuresql
Create SQL failover cluster instance using premium file shares https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-premium-file-share-manually-configure?view=azuresql
Prepare Azure VMs for SQL failover cluster instances https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-prepare-vm?view=azuresql
Create SQL failover cluster instance with Storage Spaces Direct https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-storage-spaces-direct-manually-configure?view=azuresql
Configure Azure Load Balancer for SQL FCI VNN https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/failover-cluster-instance-vnn-azure-load-balancer-configure?view=azuresql
Configure cluster quorum for SQL Server VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/hadr-cluster-quorum-configure-how-to?view=azuresql
Manage SQL Server on Azure VMs using the SQL virtual machines resource https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/manage-sql-vm-portal?view=azuresql
Enable automatic SQL IaaS Agent extension registration for all SQL VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-agent-extension-automatic-registration-all-vms?view=azuresql
Manually register a SQL Server VM with the SQL IaaS Agent extension https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-agent-extension-manually-register-single-vm?view=azuresql
Bulk register SQL Server VMs with the SQL IaaS Agent extension https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-agent-extension-manually-register-vms-bulk?view=azuresql
Configure SQL Server IaaS Agent extension on Windows VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/sql-server-iaas-agent-extension-automate-management?view=azuresql
Configure Azure Elastic SAN for SQL Server VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/storage-configuration-azure-elastic-san?view=azuresql
Deploy SQL Server VMs using Premium SSD v2 disks https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/storage-configuration-premium-ssd-v2?view=azuresql
Configure storage layout for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/storage-configuration?view=azuresql
Configure vCore customization for SQL Server VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/vm-vcore-customization-for-sql?view=azuresql
Configure connectivity options for SQL Server on Azure VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/ways-to-connect-to-sql?view=azuresql

Integrations & Coding Patterns

Topic URL
Back up SQL Server on Azure VMs to Azure Blob Storage https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/azure-storage-sql-server-backup-restore-use?view=azuresql
Back up and restore SQL VMs to Blob using managed identities https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/backup-restore-to-url-using-managed-identities?view=azuresql

Deployment

Topic URL
Deploy multi-subnet availability group using PowerShell/CLI https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-az-commandline-configure-multi-subnet?view=azuresql
Deploy single-subnet availability group via PowerShell/CLI https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-az-commandline-configure?view=azuresql
Deploy multi-subnet availability group via Azure portal https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-azure-portal-configure?view=azuresql
Configure domain-independent workgroup availability group https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-clusterless-workgroup-configure?view=azuresql
Configure cross-region multi-subnet availability group https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-multi-subnet-multiple-regions?view=azuresql
Configure cross-region availability group for SQL VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-multiple-regions?view=azuresql
Prepare prerequisites for multi-subnet availability groups https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-prerequisites-tutorial-multi-subnet?view=azuresql
Prepare prerequisites for single-subnet availability groups https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-prerequisites-tutorial-single-subnet?view=azuresql
Configure multi-subnet availability group on SQL VMs https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-tutorial-multi-subnet?view=azuresql
Configure single-subnet Always On availability group https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-configure-tutorial-single-subnet?view=azuresql
Migrate availability group from single to multi-subnet https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-manually-migrate-multi-subnet?view=azuresql
Deploy availability group using Azure quickstart templates https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-quickstart-template-configure?view=azuresql
Migrate SQL Server VMs to another Azure region https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/move-sql-vm-different-region?view=azuresql
Migrate SQL Server VM log disk to Azure Ultra Disk https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/storage-migrate-to-ultradisk?view=azuresql
Migrate SQL FCI to Azure VMs with Azure Migrate https://learn.microsoft.com/en-us/data-migration/sql-server/virtual-machines/failover-cluster-instance-migrate
Weekly Installs
2
GitHub Stars
408
First Seen
4 days ago
Installed on
amp2
cline2
opencode2
cursor2
kimi-cli2
codex2