sql >> Base de Datos >  >> RDS >> Sqlserver

Problema de escritura de tempdb y presión de memoria de SQL Server 2005

Una longitud de cola de disco alta no significa que tenga un cuello de botella de E/S si tiene un SAN o NAS, es posible que desee ver otros contadores adicionales. Consulte SQL Server Urban Leyendas comentadas para más detalles.

1:Las siguientes operaciones utilizan mucho tempdb

  • Creación y eliminación repetidas de tablas temporales (locales o globales)
  • Variables de tabla que utilizan tempdb con fines de almacenamiento
  • Mesas de trabajo asociadas a CURSORES
  • Tablas de trabajo asociadas a una cláusula ORDER BY
  • Tablas de trabajo asociadas con una cláusula GROUP BY
  • Archivos de trabajo asociados con HASH PLANS

Estas características de SQL Server 2005 también usan tempdb en gran medida:

  • versión de nivel de fila (aislamiento de instantáneas)
  • reconstrucción del índice en línea

Como se menciona en otras respuestas de SO, lea este artículo sobre las mejores prácticas para aumentar el rendimiento de tempdb.

2:mirar la cantidad de RAM libre en el servidor, es decir, mirar el contador WMI Memoria->Mbytes disponibles no ayuda, ya que SQL Server almacenará en caché las páginas de datos en RAM, por lo que cualquier servidor de base de datos que esté funcionando lo suficiente tendrá poca RAM libre.
Los contadores que debe mirar que son más significativos para decirle si agregar RAM al servidor ayudará son:
Instancia de SQL Server:Administrador de búfer->Esperanza de vida de la página (en segundos) Un valor por debajo de 300-400 segundos significará que las páginas no están en la memoria por mucho tiempo y que los datos se leen continuamente desde los discos. Los servidores que tienen una esperanza de vida de página baja se beneficiarán de RAM adicional.
y
Instancia de SQL Server:Administrador de búfer->Proporción de aciertos de caché de búfer Esto le indica el porcentaje de páginas que se leyeron desde la RAM que no tuvieron que incurrir en una lectura desde el disco, una tasa de aciertos de caché inferior a 85 significará que el servidor se beneficiará de RAM adicional

3 :Sí, no puede salir mal aquí. Se recomienda tener tempdb en un conjunto de discos separado. Mire este artículo de KB bajo el encabezado:Moviendo la base de datos tempdb sobre cómo hacer esto.