¿Una solución de la base de datos de una sola solución? ¿Solución 22?
-
29-09-2020 - |
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
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 ...
- ¿Por qué el ¿El registro de transacciones sigue creciendo o se queda sin espacio?
- SQL Server: las mejores prácticas para el cultivo de archivos de base de datos
- Las mejores prácticas y experiencia del archivo contra el archivo contra el archivo contra el archivo encogido
- I Necesidad de reducir mi base de datos: acabo de liberar mucho espacio
- Reduciendo el tamaño de una base de datos
- ¿Cuándo está bien reducir una base de datos?
- Base de datos que se ejecuta sin espacio