Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Applies to:SQL Server en Máquina Virtual de Azure
En este artículo se proporcionan listas de comprobación como parte de una serie de procedimientos recomendados e instrucciones para optimizar el rendimiento de las SQL Server on Azure Virtual Machines (VM). Use esta guía para mejorar la configuración de la máquina virtual, la configuración de almacenamiento, la posición de seguridad y solucionar problemas comunes de rendimiento.
Las listas de comprobación de este artículo proporcionan una breve introducción a los detalles más completos que se encuentran en los siguientes artículos de esta serie:
Active SQL Assessment para SQL Server en máquinas virtuales de Azure y su SQL Server será evaluado con los procedimientos recomendados conocidos con resultados en la página de administración de SQL VM del portal de Azure.
Para ver vídeos sobre las características más recientes para optimizar el rendimiento de las máquinas virtuales SQL Server y automatizar la administración, revise los siguientes vídeos expuestos a datos:
- Almacenamiento en caché y límite de almacenamiento
- Administración automática con la extensión agente de IaaS de SQL Server
- Use las métricas de Azure Monitor para realizar un seguimiento del estado de la caché de máquinas virtuales
- Consigue la mejor relación calidad-precio para tus cargas de trabajo de SQL Server en máquina virtual de Azure
- Usando PerfInsights para evaluar el estado de salud de los recursos y resolver problemas
- Mejor relación precio-rendimiento con la serie Ebdsv5
- Configura óptimamente SQL Server en Máquinas Virtuales de Azure con SQL Assessment
- Nuevo y mejorado SQL Server en Azure experiencia de implementación y administración de máquinas virtuales
Información general
Al ejecutar SQL Server on Azure Virtual Machines, siga usando las mismas opciones de optimización del rendimiento de la base de datos que se aplican a SQL Server en entornos de servidor locales. Sin embargo, el rendimiento de una base de datos relacional en una nube pública depende de muchos factores, como el tamaño de una máquina virtual y la configuración de los discos de datos.
Por lo general, existe un equilibrio entre la optimización de los costos y la optimización del rendimiento. Esta serie de mejores prácticas de rendimiento se centra en obtener el mejor rendimiento para SQL Server en las Máquinas Virtuales de Azure.
Siguientes pasos: Comience con la primera sección de recomendaciones de tamaño de VM, luego continúe a través de las secciones de Almacenamiento, Seguridad y funciones de SQL Server para obtener un enfoque de optimización completo.
Si su carga de trabajo es menos exigente, podría no necesitar todas las optimizaciones recomendadas. Tenga en cuenta sus necesidades de rendimiento, costos y patrones de carga de trabajo a medida que evalúa estas recomendaciones.
Instalación manual de SQL Server en una máquina virtual de Azure
Si tiene previsto instalar manualmente SQL Server en una máquina virtual de Azure, siga estos pasos esenciales para evitar problemas comunes de configuración:
- Asegúrese de que tiene una clave de producto lista para la instalación.
- Evite configuraciones no admitidas como:
- Más de 64 núcleos virtuales por nodo NUMA.
- Almacenamiento con tamaño de sector de 8 KB.
- Conjuntos de escalas de máquinas virtuales de Azure
- Si aún no existen, cree las carpetas para la instalación de SQL Server y los archivos de datos antes de iniciar el medio de instalación.
- Copie el medio de instalación en una unidad local en lugar de instalar directamente desde la ISO montada.
- Después de la instalación, registre la máquina virtual de SQL Server con la extensión del agente de IaaS SQL Server para automatizar las tareas de administración.
- Coloque la
tempdbbase de datos en el almacenamiento efímero de SSD local siempre que sea posible.
Tamaño de VM
Advertencia
No se admite la colocación de tempdb en el disco temporal local en imágenes de VM de Azure con discos efímeros no inicializados, como el FXmdsv2. Este problema solo afecta a Azure Virtual Machines con la nueva interfaz NVMe que también tiene almacenamiento efímero local. Estas implementaciones a través del portal de Azure pueden producir errores y SQL Server pueden no iniciarse. Use una serie de máquinas virtuales diferente o coloque tempdb en el almacenamiento no efímero, tanto al implementar la imagen de SQL Server a través del portal de Azure como al instalar SQL Server manualmente. Para obtener más información sobre el problema y ver también una lista de MV afectadas, revise implementación de MV y fallos de SQL Server.
En la lista de verificación de esta sección se tratan las mejores prácticas para el tamaño de las VMs para SQL Server en máquinas virtuales de Azure.
- Antes de elegir un tamaño de máquina virtual, configure el almacenamiento. Recopile una línea de base del entorno de origen bajo las condiciones de mayor estrés y configure su almacenamiento en función de las necesidades de IOPS y rendimiento de su carga de trabajo, con un margen del 20% para un crecimiento futuro.
- Identifique las características de rendimiento de la carga de trabajo (OLTP frente a OLAP, tamaño de carga de trabajo) para determinar el tamaño de máquina virtual adecuado para su empresa.
- Si vas a migrar a Azure, evalúa la preparación para la migración para encontrar el tamaño de máquina virtual adecuado para tu carga de trabajo de SQL Server existente y, después, migra con Azure Database Migration Service.
- Usa imágenes de Azure Marketplace para implementar tus máquinas virtuales de SQL Server, ya que la configuración de SQL Server y las opciones de almacenamiento están configuradas para lograr un rendimiento óptimo.
- Use tamaños de máquina virtual con 4 o más núcleos virtuales.
- Use tamaños de máquina virtual optimizados para memoria para obtener el mejor rendimiento de las cargas de trabajo de SQL Server.
- La serie Mbdsv3 ofrece el mejor rendimiento general para cargas de trabajo olTP y almacenamiento de datos críticas.
- La serie Ebdsv5 proporciona el mejor rendimiento de precio para la mayoría de las cargas de trabajo de SQL Server de producción.
- Las series Easv7 y Msv3/Mdsv3 están optimizadas para cargas de trabajo que consumen mucha memoria.
- La familia M ofrece las configuraciones de memoria más altas en Azure para las cargas de trabajo más grandes.
- Inicie entornos de desarrollo con la serie D de nivel inferior o serie B y aumente su entorno con el tiempo.
- Compruebe la compatibilidad de VM para evitar configuraciones no admitidas.
- Utiliza la personalización del núcleo virtual de VM para asignar adecuadamente la vCPU para las cargas de trabajo y la máquina virtual y reducir los costos de licencias de SQL Server, así como deshabilitar la SMT y la configuración de hyperthreading para obtener un rendimiento óptimo de SQL Server.
Almacenamiento
En la lista de comprobación de esta sección se tratan los procedimientos recomendados de storage para SQL Server en máquinas virtuales de Azure.
- Supervise la aplicación y determine los requisitos de ancho de banda y latencia de almacenamiento para los datos, registros y archivos de SQL Server antes de elegir el tipo de disco.
- Si está disponible, configure los archivos de datos y registro de
tempdben el volumen D: SSD local al implementar una nueva máquina virtual o después de haber instalado SQL Server manualmente. La extensión de agente de IaaS de SQL controla la carpeta y los permisos necesarios al volver a aprovisionar. - Para optimizar el rendimiento del almacenamiento, planee el uso más alto de IOPS disponible sin almacenamiento en caché, y use el almacenamiento en caché de datos como una característica de rendimiento para realizar lecturas de datos al tiempo que evita el límite de máquinas virtuales y discos.
- Establezca el almacenamiento en caché del host en Solo lectura para los discos de archivos de datos.
- Establezca el almacenamiento en caché del host en Ninguno para los discos de archivos de registro.
- No habilite el almacenamiento en caché de lectura y escritura en discos que contienen SQL Server archivos de datos o de registro.
- Detenga siempre el servicio SQL Server antes de cambiar la configuración de caché del disco.
- Al usar las máquinas virtuales Ebdsv5 o Ebsv5 serie SQL Server, use Premium SSD v2 para obtener el mejor rendimiento de precio. Puede implementar la máquina virtual de SQL Server con SSD Prémium v2 mediante el portal de Azure (actualmente en versión preliminar).
- Si la carga de trabajo requiere más de 160 000 IOPS, use Premium SSD v2 o Azure Discos Ultra.
- Colocar los archivos de datos, de registro y
tempdben unidades independientes.- En el caso de la unidad de datos, use discos prémium P30 y P40, o más pequeños, para garantizar la disponibilidad de soporte de caché. Si utiliza la serie de máquinas virtuales Ebdsv5, use SSD prémium v2, ya que ofrece una mejor relación entre rendimiento y precio para aquellas cargas de trabajo que requieren un alto rendimiento de E/S e IOPS.
- En cuanto a la unidad de registro, planee la capacidad y el rendimiento de prueba frente al costo al evaluar los discos P30 - P80 con SSD prémium v2 o SSD prémium
- Si se requiere latencia inferior a un milisegundo en el almacenamiento, use Premium SSD v2 o Azure Ultra Disks para el log de transacciones.
- En el caso de las implementaciones de máquinas virtuales de la serie M, considere la posibilidad de write accelerator con Azure Discos Ultra.
- Coloque tempdb en el disco temporary (el disco temporal es efímero y el valor predeterminado es
D:\) para la mayoría de las cargas de trabajo SQL Server que no forman parte de una instancia de clúster de conmutación por error (FCI) después de elegir el tamaño óptimo de la máquina virtual.- Si la capacidad de la unidad local no es suficiente para
tempdb, considere la posibilidad de cambiar el tamaño de la VM. Consulte las directivas de caché de archivos de datos para obtener más información.
- Si la capacidad de la unidad local no es suficiente para
- En el caso de las instancias de clúster de conmutación por error (FCI) coloque
tempdben el almacenamiento compartido.- Si la carga de trabajo de FCI depende en gran medida del rendimiento del disco
tempdb, como configuración avanzada coloquetempdben la unidad SSD efímera local (de manera predeterminada,D:\), que no forma parte del almacenamiento de FCI. Esta configuración necesita supervisión personalizada y acciones para garantizar que la unidad SSD efímera local (de manera predeterminada,D:\) esté disponible en todo momento, ya que los errores de esta unidad no desencadenarán acciones de FCI.
- Si la carga de trabajo de FCI depende en gran medida del rendimiento del disco
- Seccione varios discos de datos Azure mediante Storage Spaces para aumentar el ancho de banda de E/S hasta los límites de IOPS y rendimiento de la máquina virtual de destino.
- Al migrar varias cargas de trabajo diferentes a la nube, Azure Elastic SAN puede ser una solución de almacenamiento consolidada rentable. Sin embargo, al usar Azure Elastic SAN, lograr la IOPS o el rendimiento deseados para las cargas de trabajo de SQL Server a menudo requiere capacidad de aprovisionamiento excesivo. Aunque normalmente no es adecuado para cargas de trabajo de SQL Server únicas, puede obtener una solución rentable al combinar cargas de trabajo de bajo rendimiento con SQL Server.
- En el caso de cargas de trabajo de desarrollo y pruebas y el archivo de copia de seguridad a largo plazo, considere la posibilidad de usar el almacenamiento estándar. No se recomienda usar HDD o SDD estándar con cargas de trabajo de producción.
- La expansión de disco basada en crédito (P1-P20) solo se debe tener en cuenta para cargas de trabajo de desarrollo/pruebas más pequeñas y sistemas departamentales.
- Formatee el disco de datos para que use un tamaño de unidad de asignación de 64 KB para todos los archivos de datos ubicados en una unidad que no sea la unidad temporal
D:\(que tiene un valor predeterminado de 4 KB). Máquinas virtuales de SQL Server implementadas a través de Azure Marketplace vienen con discos de datos formateados con un tamaño de unidad de asignación y configuración de intercalación establecida en 64 KB para el grupo de almacenamiento. - Configure la cuenta de almacenamiento en la misma región que la máquina virtual de SQL Server.
- Desactive el almacenamiento redundante geográfico de Azure (geo-replicación) y use LRS (almacenamiento redundante local) en la cuenta de almacenamiento.
- Habilite la SQL Best Practices Assessment para identificar posibles problemas de rendimiento y evaluar que la máquina virtual de SQL Server está configurada para seguir los procedimientos recomendados.
- Revise y supervise los límites de disco y VM mediante métricas de uso de E/S de almacenamiento.
- Excluir archivos SQL Server desde el examen de software antivirus, incluidos archivos de datos, archivos de registro y archivos de copia de seguridad.
- Cambie el tamaño adecuado del bloque de almacenamiento.
Seguridad
La lista de comprobación de esta sección cubre las mejores prácticas de seguridad para SQL Server en Azure VMs.
SQL Server características y funcionalidades proporcionan métodos de protección de datos en el nivel de base de datos que se pueden combinar con características de seguridad en el nivel de infraestructura. Juntas, estas características proporcionan defensa en profundidad en el nivel de infraestructura para soluciones híbridas y basadas en la nube. Además, con Azure medidas de seguridad, es posible cifrar los datos confidenciales, proteger las máquinas virtuales frente a virus y malware, proteger el tráfico de red, identificar y detectar amenazas, cumplir los requisitos de cumplimiento y proporcionar un único método para la administración e informes de cualquier necesidad de seguridad en la nube híbrida.
- Use Microsoft Defender for Cloud para evaluar y tomar medidas para mejorar la posición de seguridad del entorno de datos. Funcionalidades como Azure Advanced Threat Protection (ATP) se pueden usar en las cargas de trabajo híbridas para mejorar la evaluación de seguridad y proporcionar la capacidad de reaccionar a los riesgos. Al registrar la máquina virtual de SQL Server con la extensión agente de IaaS de SQL se muestran las evaluaciones de Microsoft Defender for Cloud dentro del recurso de máquina virtual SQL del portal de Azure.
- Use Microsoft Defender para SQL para detectar y mitigar posibles vulnerabilidades de base de datos, así como detectar actividades anómalas que podrían indicar una amenaza para la instancia de SQL Server y la capa de base de datos.
- Vulnerability Assessment forma parte de Microsoft Defender para SQL que pueden detectar y ayudar a corregir posibles riesgos en el entorno de SQL Server. Permite ver el estado de la seguridad e incluye los pasos necesarios para resolver problemas de seguridad.
- Utiliza máquinas virtuales confidenciales de Azure para reforzar la protección de sus datos en uso y en reposo frente al acceso de los operadores del host. Azure máquinas virtuales confidenciales le permiten almacenar con confianza sus datos confidenciales en la nube y cumplir los requisitos de cumplimiento estrictos.
- Si está en SQL Server 2022, considere usar la autenticación de Microsoft Entra para conectarse a su instancia de SQL Server.
- Azure Advisor analiza la telemetría de uso y configuración de recursos y, a continuación, recomienda soluciones que le ayuden a mejorar la rentabilidad, el rendimiento, la alta disponibilidad y la seguridad de los recursos de Azure. Use Azure Advisor en el nivel de máquina virtual, grupo de recursos o suscripción para ayudar a identificar y aplicar procedimientos recomendados para optimizar las implementaciones de Azure.
- Use Azure Disk Encryption cuando el cumplimiento y la seguridad necesiten cifrar los datos de un extremo a otro mediante las claves de cifrado, incluido el cifrado del disco efímero (temporal conectado localmente).
- Managed Disks se cifran en reposo de forma predeterminada mediante Azure Storage Service Encryption, donde las claves de cifrado son claves administradas por Microsoft almacenadas en Azure.
- Para ver una comparación de las opciones de cifrado de disco administrado, revise el gráfico de comparación de cifrado de disco administrado.
- Los puertos de administración deben estar cerrados en las máquinas virtuales: los puertos de administración remota abiertos exponen la VM a un alto nivel de riesgo de ataques basados en Internet. Estos ataques intentan averiguar las credenciales por medio de fuerza bruta a fin de obtener acceso de administrador a la máquina
- Active el acceso Just-in-time (JIT) para máquinas virtuales de Azure.
- Use Azure Bastion a través del protocolo Remote Desktop (RDP).
- Bloquee los puertos y solo permita el tráfico de aplicación necesario mediante Azure Firewall que es un firewall como servicio administrado (FaaS) que concede o deniega el acceso al servidor en función de la dirección IP de origen.
- Use Grupos de seguridad de red (NSG) para filtrar el tráfico de red hacia y desde los recursos de Azure en redes virtuales de Azure.
- Use los grupos de seguridad de aplicaciones para agrupar servidores que tienen requisitos de filtrado de puertos similares, con funciones similares, como servidores web y servidores de bases de datos.
- Para los servidores web y de aplicaciones, use protección contra denegación de servicio distribuida de Azure (DDoS). Los ataques DDoS están diseñados para sobrecargar y agotar los recursos de red, lo que hace que las aplicaciones funcionen lentamente o no respondan. Es habitual que los ataques DDoS se dirijan a las interfaces de usuario. Azure protección contra DDoS sanea el tráfico de red no deseado antes de que afecte a la disponibilidad del servicio.
- Use las extensiones de VM para poder administrar el antimalware, el estado que quiera obtener, la detección de amenazas, la prevención y la corrección para abordar las amenazas en el sistema operativo, la máquina y los niveles de red:
- La extensión Configuración de invitado hace operaciones de auditoría y configuración dentro de las máquinas virtuales.
- Extensión de máquina virtual del agente de Network Watcher para Windows y Linux supervisa el rendimiento de la red, diagnóstico y servicio de análisis que permiten la supervisión de redes de Azure.
- Extensión antimalware de Microsoft para Windows para ayudar a identificar y eliminar virus, spyware y otro software malintencionado, con alertas configurables.
- Evaluate extensiones de terceros como Symantec Endpoint Protection para Windows VM (/azure/virtual-machines/extensions/symantec).
- Use Azure Policy para crear reglas de negocio que se puedan aplicar a su entorno. Las directivas de Azure evalúan los recursos de Azure comparando las propiedades de esos recursos con las reglas definidas en formato JSON.
- Azure Blueprints permite a los arquitectos de la nube y a los grupos de tecnología de la información central definir un conjunto repetible de recursos de Azure que implementa y cumple los estándares, patrones y requisitos de una organización. Azure Blueprints son diferentes de las directivas de Azure.
- Use Windows Server 2019 o Windows Server 2022 para que sea FIPS compatible con SQL Server en máquinas virtuales de Azure.
- Trate la restauración de copias de seguridad como una operación de alto riesgo y nunca restaure una copia de seguridad desde un origen que no sea de confianza.
características de SQL Server
A continuación se muestra una lista de comprobación rápida de los procedimientos recomendados para las opciones de configuración de SQL Server cuando ejecute sus instancias de SQL Server en una máquina virtual de Azure en producción:
- Habilite la compresión de páginas de base de datos cuando corresponda.
- Habilite la compresión de copias de seguridad.
- Habilite la inicialización instantánea de archivos para archivos de datos.
- Limite el crecimiento automático de la base de datos.
- Deshabilite la reducción automática de la base de datos.
- Deshabilite el cierre automático de la base de datos.
- Mueva todas las bases de datos a discos de datos, incluidas las bases de datos del sistema.
- Mueva los directorios de archivos de seguimiento y del registro de errores de SQL Server a discos de datos.
- Configure ubicaciones predeterminadas para los archivos de base de datos y copia de seguridad.
- Establezca el límite máximo de memoria SQL Server para dejar suficiente memoria para el sistema operativo. (Utilice Memoria\Available Bytes para supervisar el estado de la memoria del sistema operativo).
- Habilite el bloqueo de las páginas en la memoria.
- Habilite la optimización para cargas de trabajo ad hoc para entornos pesados de OLTP.
- Evalúe y aplique las actualizaciones acumulativas latest para las versiones instaladas de SQL Server.
- Habilite Query Store en todas las bases de datos de SQL Server de producción siguiendo las mejores prácticas.
- Habilite el ajuste automático en bases de datos de aplicaciones críticas.
- Asegúrese de que se sigan todos los procedimientos recomendados de tempdb.
-
Use el número recomendado de archivos, mediante varios archivos de datos
tempdb, empezando por 1 archivo por núcleo, hasta 8 archivos. - Si está disponible, configure los
tempdbarchivos de datos y de registro en el volumen SSD local D:. La extensión de agente de IaaS de SQL controla la carpeta y los permisos necesarios al volver a aprovisionar. - Programe trabajos de SQL Server Agent para ejecutar DBCC CHECKDB, reorganización de índice, reconstrucción de índice y actualización de estadísticas.
- Supervise y administre el estado y el tamaño del archivo de registro SQL Server transaction.
- Aproveche las nuevas características de SQL Server disponibles para la versión que se usa.
- Tenga en cuenta las diferencias en las características admitidas entre las ediciones que está considerando implementar.
- Excluir archivos de SQL Server del análisis del software antivirus. Esto incluye archivos de datos, archivos de registro y archivos de copia de seguridad.
características de Azure
A continuación se muestra una lista de comprobación rápida de los procedimientos recomendados para obtener instrucciones específicas de Azure al ejecutar la SQL Server en Azure máquina virtual:
- Regístrese en la extensión Agente de IaaS de SQL para desbloquear una serie de ventajas de las características.
- Use la mejor estrategia de de copia de seguridad y restauración para la carga de trabajo de SQL Server.
- Asegúrese de que la opción Redes aceleradas esté habilitada en la máquina virtual.
- Utiliza Microsoft Defender for Cloud para mejorar la postura de seguridad general de la implementación de las máquinas virtuales.
- Use Microsoft Defender for Cloud, Microsoft Defender for Cloud, para cobertura específica de máquinas virtuales de SQL Server incluidas las evaluaciones de vulnerabilidades y el acceso Just-in-Time, lo que reduce la superficie de ataque mientras permite a los usuarios legítimos acceder a las máquinas virtuales cuando sea necesario. Para obtener más información, consulte evaluaciones de vulnerabilidades, habilitar evaluaciones de vulnerabilidades para máquinas virtuales de SQL Server y acceso justo a tiempo.
- Utiliza Azure Advisor para abordar rendimiento, coste, confiabilidad, excelencia operativa y recomendaciones de seguridad.
- Use Azure Monitor para recopilar, analizar y actuar sobre los datos de telemetría del entorno de SQL Server. Esto incluye la identificación de problemas de infraestructura con VM Insights y la supervisión de datos con Log Analytics para un diagnóstico más profundo.
- Habilite el apagado automático para entornos de desarrollo y pruebas.
- Implemente una solución de alta disponibilidad y recuperación ante desastres (HADR) que cumpla los SLA de continuidad empresarial, consulte las opciones de HADR disponibles para SQL Server en máquinas virtuales de Azure.
- Use el portal de Azure (soporte técnico y solución de problemas) para evaluar resource health e historial; envíe nuevas solicitudes de soporte técnico cuando sea necesario.
Configuración de alta disponibilidad y recuperación ante desastres
En la lista de comprobación de esta sección se tratan los procedimientos recomendados de HADR para SQL Server en máquinas virtuales de Azure.
Características de alta disponibilidad y recuperación ante desastres (HADR), como la Always On availability group y la instancia de clúster failover dependen de la tecnología subyacente Windows Server Cluster. Revise los procedimientos recomendados para modificar la configuración de HADR para admitir mejor el entorno en la nube.
Para el clúster de Windows, tenga en cuenta estos procedimientos recomendados:
- Implemente las máquinas virtuales de SQL Server en varias subredes siempre que sea posible para evitar la dependencia de una Azure Load Balancer o un nombre de red distribuido (DNN) para enrutar el tráfico a la solución HADR.
- Cambie el clúster a parámetros menos agresivos para evitar interrupciones inesperadas debido a fallos de red transitorios o a mantenimiento de la plataforma de Azure. Para más información, consulte la configuración de latidos y umbrales. Para Windows Server 2012 y versiones posteriores, use los siguientes valores recomendados:
- SameSubnetDelay: 1 segundo
- SameSubnetThreshold: 40 latidos
- CrossSubnetDelay: 1 segundo
- CrossSubnetThreshold: 40 latidos
- Coloque las máquinas virtuales en un conjunto de disponibilidad o en distintas zonas de disponibilidad. Para más información, consulte Configuración de disponibilidad de máquinas virtuales.
- Use una sola NIC por nodo de clúster.
- Configure la votación de cuórum de clúster para usar 3 o más números de votos impares. No asigne votos a las regiones de recuperación ante desastres.
- Supervise detenidamente los límites de recursos para evitar reinicios inesperados o conmutaciones por error debido a restricciones de recursos.
- Asegúrese de que el sistema operativo, los controladores y los SQL Server estén en las compilaciones más recientes.
- Optimice el rendimiento de SQL Server en máquinas virtuales de Azure. Revise las demás secciones de este artículo para obtener más información.
- Reduzca o extienda la carga de trabajo para evitar límites de recursos.
- Vaya a una máquina virtual o disco que tenga límites más altos para evitar restricciones.
Considere los siguientes procedimientos recomendados para su grupo de disponibilidad de SQL Server o clúster de conmutación por error de SQL Server:
- Si experimenta errores inesperados con frecuencia, siga los procedimientos recomendados de rendimiento descritos en este artículo.
- Si optimizar el rendimiento de la máquina virtual de SQL Server no resuelve las conmutaciones por error inesperadas, considere relajar la supervisión para el grupo de disponibilidad o la instancia del clúster de conmutación por error. Sin embargo, es posible que no se pueda solucionar el origen subyacente de la incidencia y podría enmascarar los síntomas al reducir la probabilidad de error. Es posible que tenga que investigar y abordar la causa principal subyacente. Para Windows Server 2012 o superior, use los siguientes valores recomendados:
-
Tiempo de espera de concesión: use esta ecuación para calcular el valor máximo de tiempo de espera de concesión:
Lease timeout < (2 * SameSubnetThreshold * SameSubnetDelay).
Comience con 40 segundos. Si usa los valoresSameSubnetThresholdySameSubnetDelayflexibles recomendados anteriormente, no supere los 80 segundos para el valor de tiempo de espera de arrendamiento. - Número máximo de errores en un período especificado: establezca este valor en 6.
-
Tiempo de espera de concesión: use esta ecuación para calcular el valor máximo de tiempo de espera de concesión:
- Al usar el nombre de red virtual (VNN) y un Azure Load Balancer para conectarse a la solución HADR, especifique
MultiSubnetFailover = trueen el connection string, incluso si el clúster solo abarca una subred.- Si el cliente no admite
MultiSubnetFailover = True, es posible que deba establecerRegisterAllProvidersIP = 0yHostRecordTTL = 300para copiar en caché las credenciales de cliente durante períodos más cortos. Sin embargo, esto puede provocar consultas adicionales en el servidor DNS.
- Si el cliente no admite
- Para conectarse a la solución HADR mediante el nombre de red distribuida (DNN), tenga en cuenta lo siguiente:
- Debe usar un controlador de cliente que admita
MultiSubnetFailover = Truey este parámetro debe estar en el connection string. - Use un puerto de DNN único en el connection string al conectarse al agente de escucha de DNN para un grupo de disponibilidad.
- Debe usar un controlador de cliente que admita
- Use una cadena de conexión de reflejo de base de datos para un grupo de disponibilidad básico y omita la necesidad de un balanceador de carga o DNN.
- Valide el tamaño del sector de los discos duros virtuales antes de implementar la solución de alta disponibilidad para evitar tener E/S mal alineadas. Consulte KB3009974 para más información.
- Si el motor de base de datos de SQL Server, el controlador de escucha del grupo de disponibilidad Always On o el sondeo de estado del clúster de conmutación por error están configurados para usar un puerto entre 49,152 y 65,536 (el intervalo de puertos dinámicos predeterminado para TCP/IP), agregue una exclusión para cada puerto. Si lo hace, impedirá que a otros sistemas se les asigne dinámicamente el mismo puerto. En el ejemplo siguiente se crea una exclusión para el puerto 59999:
netsh int ipv4 add excludedportrange tcp startport=59999 numberofports=1 store=persistent
Solución de problemas de rendimiento
Cuando encuentre problemas de rendimiento SQL Server, use estos recursos de diagnóstico para identificar y resolver problemas específicos:
- Solución de problemas de uso elevado de la CPU
- Descripción y resolución de problemas de bloqueo
- Solución de problemas de consultas de ejecución lenta
- Solución de problemas de rendimiento lento causados por problemas de E/S
- Solución de problemas de tiempo de espera de consulta
- Solución de problemas de memoria insuficiente o poca memoria
- Panel de rendimiento proporciona información rápida sobre el estado de rendimiento de SQL Server.
Contenido relacionado
Para obtener instrucciones detalladas sobre cada área de optimización:
- Tamaño de la máquina virtual : elija la configuración y la serie de máquinas virtuales adecuadas.
- Almacenamiento : optimización de la configuración y el rendimiento del disco
- Seguridad : implementación de procedimientos recomendados de seguridad
- Configuración de HADR : configuración de alta disponibilidad y recuperación ante desastres
- Recopilación de línea base : establecimiento de líneas base de rendimiento
Herramienta recomendada:Habilitar la Evaluación de SQL para SQL Server en máquinas virtuales de Azure para evaluar automáticamente su configuración en comparación con estas prácticas recomendadas.
Revisar otros artículos de Máquinas virtuales de SQL Server en Descripción general de SQL Server en Máquinas virtuales de Azure. Si tiene preguntas sobre las máquinas virtuales de SQL Server, consulte las Preguntas más frecuentes.