Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Agregar y equilibrar archivos de datos
Las bases de datos de SQL Server EnterpriseOne incluidas suelen beneficiarse de archivos adicionales. Los archivos adicionales permiten un equilibrio óptimo entre los nodos de almacenamiento y de procesador. El equilibrio de los archivos es un proceso que consta de varios pasos. Muchos de estos pasos requieren acceso exclusivo a los objetos de la base de datos, por lo que tendría que realizar EnterpriseOne otros sistemas que accedan a la base de datos sin conexión.
Cálculos completos del tamaño de los archivos
Para encontrar el tamaño adecuado de los archivos de la base de datos, comience por examinar el tamaño de los datos ROW actuales mediante la siguiente consulta.
USE JDE_PRIST920 SELECT SUM(CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0) AS SpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'
A continuación, complete los siguientes cálculos y rellene la columna Su valor:
Línea | Nombre | Ejemplo | Su valor | Descripción |
---|---|---|---|---|
1 | Tamaño actual de la fila | 1 TB | Resultados de la consulta anterior. | |
2 | Crecimiento planificado | 20% | Crecimiento previsto para los próximos meses, incluido un margen de seguridad. | |
3 | Tamaño requerido | 1,2 TB | Línea 1 multiplicada por línea 2. | |
4 | Cantidad de archivos | 8 | Cantidad de archivos objetivo. | |
5 | Tamaño por archivo | 150 GB | Línea 3 dividida por línea 4. | |
6 | Porcentaje de crecimiento automático | 10% | Tamaño del crecimiento automático. Para una fragmentación mínima, un 10 % es un buen objetivo. | |
7 | Tamaño del de crecimiento automático | 15 GB | Línea 5 multiplicada por línea 6. |
Crear nuevos archivos
Utilice el siguiente script como plantilla para agregar archivos a la base de datos. Modifique los siguientes parámetros:
-
Cambie
JDE-PRIST920
al nombre de la base de datos a la que desea agregar los archivos. -
Para
NAME
, especifique el nombre lógico de cada archivo que desee agregar. -
Para
FILENAME
, especifique el nombre físico de cada archivo que desee agregar. -
Para
FILEGROWTH
, utilice el valor que calculó en la fila 7 de la tabla anterior. -
Para
SIZE
, especifique el valor de la fila 5 de la tabla anterior.
USE master; GO ALTER DATABASE JDE_PRIST920 MODIFY FILE (NAME = JDE_PRIST920_Data, FILEGROWTH = 15GB); GO ALTER DATABASE JDE_PRIST920 ADD FILE (NAME = JDE_PRIST920_Data2, FILENAME = 'M:\DATA\PRIST920_Data2.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data3, FILENAME = 'M:\DATA\PRIST920_Data3.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data4, FILENAME = 'M:\DATA\PRIST920_Data4.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data5, FILENAME = 'M:\DATA\PRIST920_Data5.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data6, FILENAME = 'M:\DATA\PRIST920_Data6.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data7, FILENAME = 'M:\DATA\PRIST920_Data7.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_Data8, FILENAME = 'M:\DATA\PRIST920_Data8.ndf', SIZE=150GB, FILEGROWTH = 15GB), (NAME = JDE_PRIST920_TEMP, FILENAME = 'M:\DATA\PRIST920_TEMP.ndf', SIZE=150GB, FILEGROWTH = 15GB) GO
Vaciar temporalmente el archivo MDF
Una vez creados los archivos, migre los datos del MDF a los archivos NDF mediante la ejecución del siguiente comando para cada archivo. Ajuste los nombres de los archivos para que reflejen los nombres de los archivos de la base de datos.
USE JDE_PRIST920 DBCC SHRINKFILE (JDE_PRIST920_Data, EMPTYFILE)
El comando EMPTYFILE
genera un error porque parte del contenido no se puede trasladar a un archivo NDF. Puede ignorar este mensaje de error.

Cambiar el tamaño del archivo MDF
Para reducir el tamaño del archivo MDF al tamaño de destino, ejecute el siguiente comando. Ajuste el tamaño del archivo para que refleje el valor de la línea 5 del cálculo de la tabla.
JDE_PRIST920 DBCC SHRINKFILE (JDE_PRIST920_Data, 150000);
Algunas veces, el comando SHRINKFILE
presentará errores debido a la colocación del contenido que no se pudo trasladar a un archivo NDF. En este caso, es posible que necesite ejecutar el comando DBCC DBREINDEX
, volver a ejecutar el proceso para vaciar el archivo y reintentar la operación SHRINKFILE
.
Limpieza
Cuando se hayan creado los archivos de destino y el tamaño del archivo MDF sea correcto, utilice el siguiente comando para migrar los datos del archivo TEMP nuevamente al archivo MDF. Ajuste los nombres de los archivos para que reflejen los nombres de los archivos de la base de datos.
DBCC SHRINKFILE (JDE_PRIST920_TEMP, EMPTYFILE)
Cuando el archivo esté vacío, puede ejecutar el siguiente comando para eliminarlo:
ALTER DATABASE JDE_PRIST920; REMOVE FILE JDE_PRIST920_TEMP;
Validar los resultados
Para comprobar el uso actual del espacio en disco de la base de datos después del equilibrio, ejecute los siguientes scripts.
USE JDE_PRIST920 SELECT DB_NAME() AS DbName, type_desc, CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0 AS SpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'; SELECT SUM(CAST(FILEPROPERTY(name, 'SpaceUsed') AS INT)/128.0) AS TotalSpaceUsedMB FROM sys.database_files WHERE type IN (0,1) AND type_desc = 'ROWS'
El resultado debería ser similar al siguiente. Los archivos rara vez estarán perfectamente equilibrados, ya que parte del contenido solo puede existir en el archivo MDF.
