Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Problemas de tamaño en mi BD

Estas en el tema de Problemas de tamaño en mi BD en el foro de SQL Server en Foros del Web. Hola buenas a todos, Tengo una pequqeña duda acerca de SQL Server 2005 y su distribución de tamaño. Estoy tratando con un base de datos ...
  #1 (permalink)  
Antiguo 02/07/2009, 08:58
 
Fecha de Ingreso: diciembre-2008
Mensajes: 2
Antigüedad: 15 años, 4 meses
Puntos: 0
Problemas de tamaño en mi BD

Hola buenas a todos,

Tengo una pequqeña duda acerca de SQL Server 2005 y su distribución de tamaño. Estoy tratando con un base de datos de tamaño descomunal (140 GB) y he realizado una primera tarea para reducir su tamaño, pero no ha tenido efecto y quería saber porqué.

Lo que hice fue eliminar ciertas columnas de datos en algunas tablas que no aportaban nada. He realizado algunos cálculos para determinar el porcentaje de ahorro en cada una de esas tablas y he visto que después de realizar el delete de esas columnas no he ganado ni un ápice de espacio. He ejecutado el procedimiento sp_spaceused y esto es lo que me devuelve:

databasename database_size unllocated_space
WindReport 142530.44 MB 4007.82 MB

reserved data index_size unused
86632632 KB 81420440 KB 2633656 KB 2578536 KB

Esto me hace preguntarme algunas cosas:
¿Como funciona el espacio de datos "reserved"?
¿Porque me reserva un tamaño igual al tamaño de datos ocupado?
¿Qué tengo que hacer con esos datos que están como "unused"?

Gracias a todos por adelantado y disculpad el parrafazo!!
  #2 (permalink)  
Antiguo 02/07/2009, 20:38
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Problemas de tamaño en mi BD

Hay que leer su ayuda en linea compañero.

La reduccion de espacio ocupado por una base de datos en SQL Server (no se en los otros motores), no es algo de "magia", simplemente SQL Server, va ocupando espacio, y ocupando espacio, en proporcion al crecimiento designado (comunmente 10%).

El hecho de borrar datos, no hace que se disminuya, hay que decirle al motor, que YA NO OCUPAREMOS ESE ESPACIO POR EL MOMENTO, ¿como?

BACKUP DATABASE <tubase> TO DISK = 'C:\TuBackupDB.bak'
BACKUP LOG <tubase> TO DISK = 'C:\TuBackupLog.bak'
BACKUP LOG <tubase> WITH TRUNCATE_ONLY

Despues de esto, ejecutar el SHRINKDB

Espero sirva la guia.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:07.