Share via


Getting Started with the SQL Server On-Demand Assessment

The SQL Server assessment allows you to diagnose potential issues with your SQL Server environment running on-premises, on Microsoft Azure Virtual Machines (VMs), or on Amazon Web Services (AWS) VMs. You are able to assess a single server, multiple servers, or failover cluster running SQL Server 2012, SQL Server 2014, SQL Server 2016, SQL Server 2017 or SQL Server 2019 instances, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016, Windows Server 2019 failover cluster, or standalone server installations are supported.

The recommendations cover areas such as change control, monitoring, disaster recovery, service-level agreements, configuration items, and the proper function of the major components of the SQL environment.

This assessment is designed to provide you with specific actionable guidance grouped in Focus Areas to mitigate risks to your SQL Servers and your organization.

The SQL Server Assessment focuses on several key pillars, including:

  • SQL Server configuration
  • Database design
  • Security
  • Performance
  • Always On
  • Cluster
  • Upgrade readiness
  • Error log analysis
  • Operational Excellence

Running the SQL Server Assessment

Prerequisites

To take full advantage of the On-Demand Assessments available through Services Hub, you must:

  1. Have linked an active Azure subscription to Services Hub and added the SQL Server Assessment. For more information please see: Setting up Assessments or watch the how to link video.
  2. A ___domain account (User or Managed Service Account) with the following rights:
    • Member of the local Administrators group on all servers in the environment
    • SysAdmin role on all Microsoft SQL Servers in the environment.
  3. Review the Pre-Requisites document for the SQL Server Assessment. This document explains the detailed technical documentation of the SQL Server Assessment and the server preparation needed to run the assessment. It also documents the various types of data collected by the assessment.

Note

On average, it takes an hour to configure your environment to run an On-Demand Assessment. After you run an assessment, review the data in Azure Log Analytics. This will provide you with a prioritized list of recommendations, categorized across six focus areas. This allows you and your team to quickly understand risk levels, the health of your environments, act to decrease risk, and improve your overall IT health.

Setup the SQL Server Assessment

Note

You will only be able to successfully setup the assessment once you have linked your Azure Subscription to Services Hub and added the SQL Server Assessment from Health > Assessments in Services Hub.

  1. On the data collection machine create the following folder: C:\LogAnalytics\SQLServer (or any other folder besides C:\ODA which is reserved by the system).

  2. If you are using a User Domain Account Open regular PowerShell (not ISE) in Administrator mode and run the cmdlet:

    Add-SQLAssessmentTask -SQLServerName <YourServerName> –WorkingDirectory <Directory> LogAnalyticsWorkspaceId <WorkspaceID> -RunWithManagedServiceAccount $True

    where YourServerName is the fully qualified ___domain name (FQDN) or the NetBIOS name of single server or failover cluster running SQL Server environment.

    <WorkspaceId> – provide id for the Log Analytics workspace that will be used to store the uploaded data

If more than one environment is assessed, “;” is used between the environments. For failover cluster, check failover cluster virtual network name. Directory is the path to an existing directory used to store the files created while collecting and analyzing the data from the environment(s). Provide the required user account credentials that satisfy the requirements mentioned in this article earlier.

  1. If you are using a Group Managed Service Account Open regular PowerShell (not ISE) in Administrator mode and run the cmdlet:

    Add-SQLAssessmentTask -SQLServerName <YourServerName> –WorkingDirectory <Directory> LogAnalyticsWorkspaceId <WorkspaceID> -RunWithManagedServiceAccount $True

    where YourServerName is the fully qualified ___domain name (FQDN) or the NetBIOS name of single server or failover cluster running SQL Server environment. When prompted for password just press enter, as you are using a gMSA you don't need to provide a password as it is handled by the system

    <WorkspaceId> – provide id for the Log Analytics workspace that will be used to store the uploaded data

If more than one environment is assessed, “;” is used between the environments. For failover cluster, check failover cluster virtual network name. Directory is the path to an existing directory used to store the files created while collecting and analyzing the data from the environment(s). Provide the required user account credentials that satisfy the requirements mentioned in this article earlier.

  1. Data collection is triggered by the scheduled task named SQLAssessment within an hour of running the previous script and then every 7 days. Modify the task to run on a different date/time or even forced to run immediately from the task scheduler library > Microsoft > Operations Management Suite > AOI*** > Assessments > SQLAssessment.
  2. During collection and analysis, data is temporarily stored under the Working Directory folder that was configured during setup.
  3. After a few hours, your assessment results will be available on your Log Analytics and Services Hub Dashboard. Navigate to see the results by going into Services Hub > IT Health > On-Demand Assessments and then selecting View all recommendations against the active assessment.
  4. If you wish to get a Microsoft Accredited Engineer to go over the issues about your SQL Server environment with you, contact your Microsoft Representative and ask them about the Remote or Onsite CSA Led Delivery.
agreement Remote Engineer Onsite Engineer
Premier SQL Remote Datasheet SQL Onsite Datasheet
Unified SQL Remote Datasheet SQL Onsite Datasheet