No me sucedió TODAVÍA. Pero estaba pensando en esto.
Estaba jugando con mi entorno de entrenamiento y, por error, hice clic en el nombre de la base de datos y luego toqué la letra A.
Supongamos que presiono enter. Ahora la base de datos se llama A, y no recuerdo el nombre original. CTRL + Z no funciona.
¿Qué hacer en un caso como este, en un entorno de producción?
Sé que no podría suceder, porque la base de datos no está configurada como ÚNICO USUARIO. Pero si sucede. ¿Qué hacer? Por el bien de la discusión, digamos que es una base de datos que nadie está usando en este momento.
sql-server
sql-server-2008
Racer SQL
fuente
fuente
ALTER DATABASE
permisos y solo iniciar sesión como ese usuario cuando realmente quiera ejecutar unALTER DATABASE
script. De esa manera nunca harás lo anteriorRespuestas:
Haga clic derecho en la base de datos, vaya a los archivos. Puede ver los nombres de los archivos originales. Esto lo ayudará a encontrar fácilmente el nombre correcto de la base de datos. Los nombres de los archivos no se cambiarán en un cambio de nombre.
También puedes intentar echar un vistazo a tu
fn_dblog
. No está documentado, pero puede ver (y filtrar) las últimas acciones.fuente
SELECT CAST([RowLog Contents 0] AS sysname) ,CAST([RowLog Contents 1] AS sysname) FROM sys.fn_dblog(NULL,NULL) WHERE Context = 'LCX_BOOT_PAGE' AND [Offset in Row] =52
Dudo que tenga una base de datos en producción cuyo nombre desconozca o no haya documentado en alguna parte.
Si sucede en la producción, puede buscar una lista de copias de seguridad existentes usando
O usar
dbo.backupset
desde msdb.fuente
Puede ver los registros de SQL Server por última vez que se inició SQL Server y buscar cada instancia de 'Iniciar la base de datos' DBName '. Luego, podría comparar esta lista con los resultados de sys.databases. Las bases de datos nuevas y las que haya cambiado no estarán en la lista de registro de SQL Server.
Otra forma, quizás mejor, sería consultar el rastreo y el filtro predeterminados por :: fn_trace_gettable database_id. Suponiendo que hubo algún uso reciente de la base de datos, la columna databaseName mostrará el nombre anterior y luego, en una fila más reciente, el nuevo nombre con un tipo de evento de Objeto: alterado.
fuente