none
SQL Server 2008 - Recuperar Base de Datos a partir de solo el archivo .MDF

    Pregunta

  • Nuevamente Buenas a todos.

    Estoy teniendo un problema con una base de datos critica que cayo y cuyo único archivo recuperado tengo el .MDF,  mi consulta es la siguiente, como puede recuperar la estructura de la base de datos a partir del archivo .mdf, hay alguna forma de restaurarlo.

    Desde ya muchas gracias.

    martes, 22 de mayo de 2012 15:29

Respuestas

  • Mira este post:

    http://social.msdn.microsoft.com/Forums/es-ES/sqlserveres/thread/bf5bc9c3-7b28-4e7d-a012-6a504bbc0deb


    Carlos Ignacio Aguero. DBA SQL Server. Toda mi respeto al pueblo Peruano por la ayuda prestada en la guerra de Malvinas.

    • Marcado como respuesta Edgar Aguayo jueves, 24 de mayo de 2012 17:56
    miércoles, 23 de mayo de 2012 15:01
  • después de haber atachado has lo siguiente:

    DBCC DCHECKDB (myDB, NOINDEX);

    ALTER DATABASE myDB
    SET  SINGLE_USER

    ALTER DATABASE myDB SET OFFLINE WITH
    ROLLBACK 
    IMMEDIATE

    ALTER DATABASE myDB SET ONLINE

    Ejecutalo paso por paso , no todo al mismo tiempo.

    saludos,



    Indet

    • Marcado como respuesta Edgar Aguayo jueves, 24 de mayo de 2012 17:55
    miércoles, 23 de mayo de 2012 20:29

Todas las respuestas

  • Hola. Intenta con el comando ATTACH. Lee este link, en inglés, para hacerlo desde el SQL Server Management Studio: http://msdn.microsoft.com/en-us/library/ms190209(v=sql.105).aspx.

    Nos cuentas como te va.

    Saludos,


    Guillermo Taylor F.
    IT Pro & Xbox gamer
    My blog

    martes, 22 de mayo de 2012 15:38
  • Hola Guille, el link no funciona me puedes dar otra?
    martes, 22 de mayo de 2012 17:29
  • martes, 22 de mayo de 2012 17:35
  • Hice lo que dice en la documentación y no me funciono,

    Este es el error que me sale:

    TÍTULO: Microsoft SQL Server Management Studio
    ------------------------------

    Error de Adjuntar base de datos para Servidor 'server'.  (Microsoft.SqlServer.Smo)

    Para obtener ayuda, haga clic en: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2500.0+((KJ_PCU_Main).110617-0038+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Adjuntar+base+de+datos+Server&LinkId=20476

    ------------------------------
    INFORMACIÓN ADICIONAL:

    Excepción al ejecutar una instrucción o un proceso por lotes Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

    ------------------------------

    No se puede abrir la nueva base de datos 'Mitsu'. CREATE DATABASE anulada.
    Error de activación de archivo. Puede que el nombre del archivo físico "C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\Mitsu_log.ldf" sea incorrecto.
    No se puede volver a generar el registro porque no había transacciones o usuarios abiertos cuando se cerró la base de datos, no había ningún punto de comprobación en la base de datos o la base de datos era de sólo lectura. Este error puede producirse si el archivo de registro de transacciones se eliminó manualmente o se perdió a causa de un error de hardware o del entorno. (Microsoft SQL Server, Error: 1813)

    Para obtener ayuda, haga clic en: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.2500&EvtSrc=MSSQLServer&EvtID=1813&LinkId=20476

    ------------------------------
    BOTONES:

    Aceptar
    ------------------------------

    miércoles, 23 de mayo de 2012 14:09
  • Mira este post:

    http://social.msdn.microsoft.com/Forums/es-ES/sqlserveres/thread/bf5bc9c3-7b28-4e7d-a012-6a504bbc0deb


    Carlos Ignacio Aguero. DBA SQL Server. Toda mi respeto al pueblo Peruano por la ayuda prestada en la guerra de Malvinas.

    • Marcado como respuesta Edgar Aguayo jueves, 24 de mayo de 2012 17:56
    miércoles, 23 de mayo de 2012 15:01
  • Seguí los pasos del Post y ya logre restaurar la base de datos,

    pero esta se quedo en estado Emergencia,

    ya aplique un procedimiento para cambiar de estado, ya van mas de 3 horas y sigue corriendo el procedimiento.

    miércoles, 23 de mayo de 2012 19:03
  • después de haber atachado has lo siguiente:

    DBCC DCHECKDB (myDB, NOINDEX);

    ALTER DATABASE myDB
    SET  SINGLE_USER

    ALTER DATABASE myDB SET OFFLINE WITH
    ROLLBACK 
    IMMEDIATE

    ALTER DATABASE myDB SET ONLINE

    Ejecutalo paso por paso , no todo al mismo tiempo.

    saludos,



    Indet

    • Marcado como respuesta Edgar Aguayo jueves, 24 de mayo de 2012 17:55
    miércoles, 23 de mayo de 2012 20:29
  • Hola:

    Esto es resumido lo que debe hacer si no tiene un archivo .ldf

    1. Cree una base de datos dummy con el mismo nombre de la base de datos que quiere reconstruir, debe tener el minso nombre y cantidad de archivos MDF y LDF

    2. detenga el servicio SQL

    3. Renombre el archivo dummy .mdf y copie el archivo .mdf de la base que necesita restaurar

    4. suba el servicio SQL

    5. la base de datos estará en modo sospechoso, asi que ejectue lo siguiente.

    ALTER DATABASE basededatos SET EMERGENCY

    6. Verifique el estado con : SELECT state_desc FROM sys.databases WHERE name='basededatos'

    7. ejecute ahora: alter database basededatos set single_user

    8. luego: DBCC CHECKDB (basededatos , REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, este paso puede tomar mucho tiempo, ya que debe reconstruir el log de transacciones y depende del tamaño de la bd

    9. ejecute alter database  basededatos set multi_user

    Un saludo,


    If the answer was helpful, please mark it as useful. Si la respuesta le ayudó, por favor márquela como útil.

    jueves, 24 de mayo de 2012 15:05
  • ING. Erickson Figueroa seguí los pasos que recomiendas y logre restaurar mi base de datos,

    ahora ya lo tengo de nuevo arriba.

    Gracias a todos por la Ayuda!!!

    jueves, 24 de mayo de 2012 17:52
  • ok me algra mucho

    suerte,


    Indet

    viernes, 25 de mayo de 2012 17:06