Ver Mensaje Individual
  #39 (permalink)  
Antiguo 13/07/2012, 09:11
Avatar de lordalucardmx
lordalucardmx
 
Fecha de Ingreso: junio-2012
Ubicación: Cuernavaca
Mensajes: 38
Antigüedad: 9 años, 6 meses
Puntos: 1
Respuesta: Fragmentar Base de datos SQL Server 2008 por fechas

Bueno, ya metí cientos de miles de registros en diferentes fechas desde el 2005 hasta el día de hoy, y las consultas las hace trasparentes, como quiero que sea, ahora solo necesito agregarle a mi función de partición la fecha del siguiente semestre, y según yo es con esto:

Código SQL:
Ver original
  1. --Agrego el filegroup del primer semestre del 2013
  2. ALTER DATABASE SERVICIO_BD
  3. ADD FILEGROUP s1_2013_fg
  4. GO
  5.  
  6. --Asigno ese filegroup a un archivo
  7. ALTER DATABASE SERVICIO_BD
  8. ADD FILE(NAME = s1_2013_BD,
  9.     FILENAME = 'C:\Archivos de programa\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\s1_2013_BD.ndf')
  10. TO FILEGROUP s1_2013_fg
  11. GO
  12.  
  13. --Al esquema le agrego el nuevo filegroup
  14. ALTER PARTITION SCHEME evto_perf_ps
  15. NEXT USED s1_2013_fg;
  16. GO
  17.  
  18. --Agrego el nuevo valor frontera
  19. ALTER PARTITION FUNCTION evto_perf_pf()
  20.     SPLIT RANGE ('20120701')

Bueno ya hice pruebas y es lo que quiero, ahora falta acomodarlo para que este en uno o varios scripts como tarea programada y que se ejecute cada 6 meses, y que cambie el valor dentro del split range, y que cambie el nombre de los nuevos filegroups, datafile y definir el next used por medio de vb.net 2010.

Una duda: ¿Puedo eliminar las particiones existentes con registros ya almacenados y que regresen al archivo principal? Solo es curiosidad.

Última edición por lordalucardmx; 13/07/2012 a las 09:30