La propiedad Auto_Close es una de las tantas que existen a nivel de configuración de base de datos que se suele dar poca o nada de importancia, motivos?, absoluto desconocimiento de su impacto en la perfomance. Cuando la propiedad Auto_Close está establecida a True, SQL Server cierra los archivos de la base de datos y liberará sus recursos asociados cuando el último usuario cierra su conexión con ella. Esta medida puede conducir a ciertos ahorros en memoria en situaciones de RAM escasa, sin embargo, el siguiente usuario experimentará, al conectarse, las demoras asociadas con la reapertura de la base de datos, es decir el siguiente usuario demorará más en establecer una conexión a la base de datos. Cuidado, he dicho volver establecer un conexión a la base de datos más no al servidor de datos, cuestiones que vienen a ser diferentes. Ejecute lo siguiente para deshabilitar esta opción:
ALTER DATABASE [MiDbEnProduccion] SET AUTO_CLOSE OFF WITH NO_WAIT
Por lo tanto, se debe evaluar si esto es realmente útil en la configuración de cada base de datos, aunque debo admitir que el ahorro de memoria será insignificante (se libera de 12KB a 20KB), no vale la pena en la mayoría de escenarios configurar este valor en True. Mi recomendación es casi siempre (por no decir siempre) deshabilitar la opción Auto_Close. En realidad se gana muy poco en ahorro de memoria al ajustarlo en True, y se pierde mucho en la performance. Tenga mucho cuidado, aunque la configuración por defecto es False, en el mundo real he podido encontrarme con base de datos ajustada esta propiedad en Auto_Close en True. Sólo he contado de esta propiedad acerca de su impacto en la perfomance mas no de las muchísimas utilidades que podemos explotar, lo cual espero más adelante escribir al respecto, claro si da el tiempo:(. Espero sirva.