Evento 17137 en bases de datos SQL Server

La configuración por defecto de una base dedatos en Microsoft SQL Server en sus diferentes versiones, permite descargar al servidor de la caché la propia base de datos cuando la propiedad «AUTO CLOSE» esta activada, se genera el evento:

«Event ID 17137 Source: MSSQL$NOMBREUSUARIO Starting up database ‘NombreDeLaBBDD'»

Es posible modificar el comportamiento desde SQL Management Studio, haciendo clic con el botón derecho sobre la base de datos, en Opciones indicar la propiedad «Auto Close» a False:

En las versiones SQL Express siempre aparece activado, en el resto desactivado, si el acceso es muy esporádico puede mantenerse en OFF
Listado de las BBDD con la propiedad activada:

SELECT name FROM master.sys.databases WHERE is_auto_close_on = 1

Cambiar mediante sentencia SQL:

ALTER DATABASE <NombreBBDD> SET AUTO_CLOSE OFF

 

Ficheros bak no aparecen en SQL Server

Al trasladar copias de seguridad de SQL Server e intentar restaurarlas desde una ubicación diferente a la predeterminada, desde el explorador de Management Studio (SMSS) aunque sepamos que dentro de una carpeta concreta están los ficheros pueden no aparecer, si no están asignados los permisos; deberemos asignar permisos de lectura por lo menos sobre el usuario «NT SERVICE\MSSQLSERVER» del equipo local donde se ejecuta la instancia (por defecto)

Cuenta con la que se ejecuta el servicio:

Asignación de permisos a la carpeta donde se encuentran las copias de seguridad:

Iniciar Microsoft SQL Server cuando todo falla

En ocasiones algunas instancias de base de datos pueden comportarse de forma errática, los motivos pueden ser diversos: falta de recursos, ataques, corrupción de datos… el primer paso es averiguar el origen y para ello podemos lograr arrancar los servicios en modo usuario único y con los recursos mínimos, para ello debemos añadir el parámetro «-f» desde el administrador de servicios o iniciar desde línea de comandos «net start «SQL Server (MSSQLSERVER)» /f /m »

Solo una conexión se permitirá pero logaremos evaluar más en detalle los posibles errores del servicio degradado.

 

 

Errores de Access con OleDB 12.0

En ocasiones nos encontramos aplicaciones o componentes que requieren algún componente específico, en este caso el error que nos encontramos es el siguiente:

The ‘microsoft.ace.oledb.12.0’ provider is not registered on the local machine.

Error OLEDB

El proveedor ‘Microsoft.ACE.OLEDB.12.0’ no está registrado en ele quipo local.

La solución más sencilla que incluye a multitud de software es instalar una o las dos soluciones siguientes:

Componente redistribuible del motor de base de datos de Microsoft Access 2010 / Microsoft Access Database Engine 2010 Redistributable

Controlador de 2007 Office system: Componentes de conectividad de datos / 2007 Office System Driver: Data Connectivity Components

Eliminar base de datos SQL en modo restauración

En ocasiones es posible encontrar una base de datos en Microsoft SQL Server en un estado inconsistente, durante el proceso de restauración o recuperación y siempre teniendo una copia, es posible forzar el cambio de estado.

«ALTER DATABASE is not permitted while a database is in the restoring state»
«ALTER DATABASE statement failed. (Microsoft SQL Server. Error: 5052)»

En este caso, no podemos eliminar ni poner offline si se encuentra en modo restauración (Restoring) podemos solucionar ejecutando el siguiente comando:

RESTORE DATABASE nombreDeMiBaseDeDatos WITH RECOVERY

A partir de entonces podremos continuar con su eliminación sin problemas.