Pregunta

Estoy desarrollando un plan para que SQL Server 2012 EE para reducir y escribir correctamente (NCHE a CHAR TIPOS) algunos campos innecesariamente Unicode NVARCHAR (MAX) y desea optimizar el tamaño de la base de datos como parte del tiempo de inactividad haciendo una sola vez encogerse. Los experimentos han mostrado un ahorro de espacio asignado al 50% que es de 11 g de datos.

Después de leer y experimentar, es evidente que la reducción de una base de datos causa la fragmentación del índice y los índices de reconstrucción hacen que la base de datos se expanda. Una verdadera situación de Catch-22. No quiero dejar un 50% de espacio libre en la base de datos que tiene 11 g de almacenamiento en disco en este caso.

¿El siguiente sería un enfoque decente por un encogimiento de una sola vez que permitiría terminar con índices no fragmentos y estadísticas de índice actualizadas?

o Copia de seguridad con verificación y copias de seguridad duplicadas.

o Cae todos los índices.

o Reconstruya las tablas demasiado gorras a través de la copia en nuevas tablas, luego suelte y cambie el nombre de las tablas. Esto está funcionando bien.

o reduciendo la base de datos dejando una cantidad razonable de espacio libre.

o recrear todos los índices que fueron caídos.

o Valide la base de datos y verifique la fragmentación.

señalando cualquier advertencia, sugerencias, gotchas o alternativas para considerar mucho apreciado.

thx, dave

¿Fue útil?

Solución

El modelo de recuperación simple no "apaga el registro", por lo general, a menos que vaya a romper en algunas de estas actividades en trozos muy pequeños, simplemente anule el registro lo suficientemente grande como para lidiar con las reconstrucciones más grandes, y no te molestes en jugar con el modelo de recuperación.

, y nuevamente, en general, a menos que sus datos sean nunca crecer nuevamente, liberando el espacio temporalmente es de poco beneficio (dado que no sé lo que quiere decir con "razonable"). Vas a necesitar dejar espacio libre en la unidad, en caso de que la base de datos se vuelva a crecer, ¿verdad? ¿Por qué reducirlo solo para que vuelva a crecer? ¿Vas a proporcionar alquiler a corto plazo en ese espacio hasta que la base de datos crece? ¿Estás tratando de evitar el espacio libre% alertas?

Sugerencia: Dale a estos mensajes una buena lectura ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top