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

¿Cómo adjuntar MDF sin archivo de registro?

Para su situación inicial, parece que intentó algo como esto (o lo que sea que la GUI prepare para usted cuando recorre los cuadros de diálogo):

CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf')
FOR ATTACH;

Sin embargo, este método requiere tanto un mdf archivo y un ldf expediente. De lo contrario, obtendrá un mensaje de error similar a:

Ahora, hay una manera de proceder incluso si solo tiene el mdf expediente. Suponiendo que tiene un mdf archivo que se separó correctamente de SQL Server, debería poder adjuntar el mdf archivo sin un archivo de registro usando la siguiente sintaxis:

CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf')
FOR ATTACH_REBUILD_LOG;

Sin embargo, parece que en su caso, el archivo no se separó correctamente de SQL Server:

Hay varias explicaciones posibles, incluidas las mencionadas en el mensaje de error. Tal vez se recuperó de una sombra de SAN no válida, o se desconectó mientras era de solo lectura, o se recuperó después de que SQL Server o el sistema subyacente se bloqueó, o se corrompió durante la copia/descarga, o quién sabe qué más.

Deberá volver al soporte de Yaf, o al soporte de su proveedor de servicios, para ver si hay copias de seguridad adecuadas disponibles o, en su defecto, copias alternativas del mdf expediente. También tenga en cuenta que ninguno de nosotros sabe realmente qué es Yaf o tiene forma de verificar de qué Yaf está hablando.

De lo contrario, parece que no tiene suerte, ya que este mdf en particular El archivo no es válido y, por lo tanto, no lo llevará muy lejos.

Esta es precisamente la razón por la cual los enfoques de desconexión/adjunción y/o copia de archivos a nivel de O/S no son métodos muy útiles de copia de seguridad (o migración, para el caso) para SQL Server. Necesita un plan de copia de seguridad/recuperación adecuado, lo que significa realizar copias de seguridad completas/diferenciadas/de registro apropiadas para su tolerancia a la pérdida de datos. Y separar una base de datos casi siempre es una idea inferior, cuando algo le sucede al mdf archivo durante o después de la separación, ahora tiene CERO copias de su base de datos.