Recientemente, actualicé LocalDB de la versión 13 a la 14 usando el instalador de SQL Server Express y esta instrucción . Después de la instalación, detuve la instancia predeterminada existente (MSSQLLOCALDB) de la versión 13 y creé una nueva, que utilizaba automáticamente el motor del servidor v14.0.1000.
A menudo uso LocalDB para las pruebas de integración de la base de datos, es decir, en mis pruebas xunit, creo una base de datos (temporal) que se elimina cuando finaliza la prueba. Desde la nueva versión, desafortunadamente todas mis pruebas fallan debido al siguiente mensaje de error:
CREAR ARCHIVO encontró el error 5 del sistema operativo (acceso denegado) al intentar abrir o crear el archivo físico 'C: \ Users \ kepflDBd0811493e18b46febf980ffb8029482a.mdf'
Lo extraño es que la ruta de destino para el archivo mdf es incorrecta, falta una barra invertida entre C: \ Users \ kepfl y DBd0811493e18b46febf980ffb8029482a.mdf (que es el nombre de la base de datos aleatoria para una sola prueba). Las bases de datos se crean mediante el comando simple CREATE DATABASE [databaseName]
, nada especial aquí.
En SSMS, veo que las ubicaciones de destino para datos, registro y copia de seguridad son las siguientes:
Sin embargo, cuando intento actualizar la ubicación, recibo otro mensaje de error:
¿Cómo puedo actualizar las ubicaciones predeterminadas para que LocalDB pueda crear bases de datos nuevamente? Es obvio que LocalDB no combina correctamente el directorio de ubicación predeterminado y el nombre del archivo de la base de datos. ¿Hay alguna entrada de registro que pueda editar? ¿O algo más?
Actualización después de la respuesta de Doug y el comentario de Sepupic
De acuerdo con esta pregunta de Stackoverflow , la ubicación predeterminada también debe ser modificable a través del registro. Sin embargo, si trato de encontrar las claves correspondientes "DefaultData", "DefaultLog" y "BackupDirectory", no puedo encontrarlas en mi registro. ¿SQL Server v14 cambió el nombre de estas claves de registro o eliminó esta información del registro?