none
Riesgo de particionar una tabla en un disco duro externo RRS feed

  • Pregunta

  • Hola buenos días, quisiera saber que riesgo existe al crear la partición en dos grupos de archivos en un disco duro externo.

    Esto porque al realizar una prueba el día de ayer la base de datos funciona perfectamente pero al momento de expulsar el disco y volverlo a conectar, la base de datos queda inutilizable.

    ¿De que manera puedo recuperar esa base de datos para que funcione bien?

    Ojala que puedan ayudarme.

    martes, 22 de noviembre de 2016 14:56

Respuestas

  • Lo que parece es que no estamos en el mismo concepto de "externo".

    Vayamos por partes, un dispositivo que se pueda desadjuntar, física o lógicamente no es un buen lugar para colocar objetos de SQL Server. Ten en cuenta que SQL Server es un servicio, está arrancado y de repente le desaparecen unos ficheros (en realidad el disco entero) por tanto sabe que no podrá acceder a la información y por tanto la marca como corrupta después de reintentar las veces que considera oportunas (creo recordar que eran 3 pero no me hagas mucho caso)

    Dicho esto, es muy normal que hayan muchos discos y que en cuantos mas se distribuya la información, potencialmente mejor rendimiento. Es decir, es buena idea.

    Creo que te he contestado el porque se te marca como sospechosa, también te han dicho como arreglarlo y ha quedado claro porque es buena o mala idea.

    ¿necesitas algo mas?


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    • Marcado como respuesta Gspindola viernes, 25 de noviembre de 2016 19:38
    jueves, 24 de noviembre de 2016 17:39
    Moderador
  • Saludos

    Ok ya queda mas claro, riesgo pues es el mismo que corres con cualquier disco, tengo en raid y saca backups de manera regular, una de las ventajas que puedes tener es tener en un grupo indices o data historica, en ambos casos tienes estrategias, si es data historica que ya no se mueve puedes sacar todo un backup de file y listo te olvidas de este, en caso de ser indices estos pueden ser recreados sin tanta afeccion, mientras planes que hacer no deberia de haber mayor afeccion.

    • Marcado como respuesta Gspindola viernes, 25 de noviembre de 2016 19:38
    jueves, 24 de noviembre de 2016 17:34

Todas las respuestas

  • Si no tienes un respaldo adecuado, puedes intentar forzar la recuperación (primero respalda los archivos físicos)

    EXEC sp_resetstatus TuBaseDatos
    ALTER DATABASE TuBaseDatos SET EMERGENCY
    DBCC checkdb(TuBaseDatos)
    ALTER DATABASE TuBaseDatos SET SINGLE_USER WITH ROLLBACK IMMEDIATE
    DBCC CheckDB (TuBaseDatos, REPAIR_ALLOW_DATA_LOSS)
    ALTER DATABASE TuBaseDatos SET MULTI_USER

    martes, 22 de noviembre de 2016 15:12
  • Hola Anibal Marcano Liste pero porque si desconecto el disco se truena totalmente la base ?
    martes, 22 de noviembre de 2016 15:26
  • Es automático para protegerse de errores de inconsistencia
    martes, 22 de noviembre de 2016 15:49
  • Estimo que es una base de datos de test y que estas haciendo unas prubas y nunca vas a poner en produccion con un disco externo.

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

    martes, 22 de noviembre de 2016 18:20
  • Hola Carlos Ignacio Cba e leído en algunos lados que es mejor hacer la partición de las tablas en discos duros externos que sobre el mismo. Esto para mejorar el performance de la base.
    martes, 22 de noviembre de 2016 20:13
  • Saludos

    Me gustaria ver donde dicen eso porque estoy en completo desacuerdo y eso dejando de lado problemas de seguridad el mismo hecho de que IO es el punto mas debil de las bases de datos y un disco externo es por regla mas lento que un medio de storage directo no sabria bajo que se amparan para hacer esta recomendacion.


    • Editado Enrique AA miércoles, 23 de noviembre de 2016 14:46
    martes, 22 de noviembre de 2016 21:23
  • Hola.

    De acuerdo con Enrique. Por favor, indícanos en donde dice eso.

    Ahora bien, si es bueno aclarar que es un "disco duro externo" para entrar a un mejor debate.

    Saludos,


    Guillermo Taylor F.
    MVP Data Platform & IT Pro
    Mi Blog

    miércoles, 23 de noviembre de 2016 11:43
  • Estimo que has leido mal, particionar la tabla es una buena idea en cuestion de performace. Pero en discos propios del servidor o en distintos storages. Nunca en disco externos, pendrive y otro dispositivos extraibles.

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


    miércoles, 23 de noviembre de 2016 14:43
  • Por disco duro externo me refiero a un disco ubicado dentro del mismo servidor en el cual no esta instalado SQL Server ni el grupo de archivos PRIMARY pero que me sirve para crear los archivos .ndf y los grupos de archivos adicionales.

    Creo que no me explique bien al principio. Aunque no se si esto que comento sea correcto.

    Gracias a todos por sus respuestas.

    jueves, 24 de noviembre de 2016 16:30
  • Saludos

    Ok ya queda mas claro, riesgo pues es el mismo que corres con cualquier disco, tengo en raid y saca backups de manera regular, una de las ventajas que puedes tener es tener en un grupo indices o data historica, en ambos casos tienes estrategias, si es data historica que ya no se mueve puedes sacar todo un backup de file y listo te olvidas de este, en caso de ser indices estos pueden ser recreados sin tanta afeccion, mientras planes que hacer no deberia de haber mayor afeccion.

    • Marcado como respuesta Gspindola viernes, 25 de noviembre de 2016 19:38
    jueves, 24 de noviembre de 2016 17:34
  • Lo que parece es que no estamos en el mismo concepto de "externo".

    Vayamos por partes, un dispositivo que se pueda desadjuntar, física o lógicamente no es un buen lugar para colocar objetos de SQL Server. Ten en cuenta que SQL Server es un servicio, está arrancado y de repente le desaparecen unos ficheros (en realidad el disco entero) por tanto sabe que no podrá acceder a la información y por tanto la marca como corrupta después de reintentar las veces que considera oportunas (creo recordar que eran 3 pero no me hagas mucho caso)

    Dicho esto, es muy normal que hayan muchos discos y que en cuantos mas se distribuya la información, potencialmente mejor rendimiento. Es decir, es buena idea.

    Creo que te he contestado el porque se te marca como sospechosa, también te han dicho como arreglarlo y ha quedado claro porque es buena o mala idea.

    ¿necesitas algo mas?


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    • Marcado como respuesta Gspindola viernes, 25 de noviembre de 2016 19:38
    jueves, 24 de noviembre de 2016 17:39
    Moderador
  • Saludos Miguel

    SQL Server reintenta 3 veces y la 4 lo marca como suspect o algun otro estado pero para llegar a este punto cada intento conyeba 10 intentos en la capa de IO de windows o sea literalmente existen 39 intentos del sistema antes de declarar que existe un fallo.

    jueves, 24 de noviembre de 2016 17:42
  • :) si, lo sabía, solo es que no suelo llegar a esos detalles :) creo que solo nos importan a 3 o 4 locos :)

    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    jueves, 24 de noviembre de 2016 17:55
    Moderador
  • Me queda un poco más claro ¿pero entonces si puedo realizar las particiones en otro disco duro?. 
    viernes, 25 de noviembre de 2016 18:34
  • Saludos 

    Es posible no tienes mas ni menos siesgo que en cualquier otro storage por eso es recomendado que sea redundante fuera de eso no tiene problemas al hacerlo.

    viernes, 25 de noviembre de 2016 18:43