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.
Ajustar la configuración de la memoria
Recomendamos configurar los valores de memoria predeterminados para una base de datos de SQL Server que ejecuta cargas de trabajo de JD Edwards. Entre ellos se incluyen:
-
Configurar los ajustes de memoria máxima y mínima
-
Bloquear páginas en la memoria
Configurar la memoria máxima y mínima
Al establecer la memoria máxima de la base de datos de SQL Server, se garantiza que los sistemas operativos y otros procesos tengan memoria suficiente para realizar acciones sin tener que paginar en el disco. Si se establece una memoria máxima y mínima, se puede evitar que varias instancias de SQL Server instaladas en la misma EC2 instancia se agoten mutuamente de memoria.
Puede utilizar el siguiente script para configurar de forma automática los ajustes máximos y mínimos con valores conservadores. Este script reserva 1 GB para el sistema operativo, el 25 por ciento de la memoria inferior a 16 GB y el 12,5 por ciento de la memoria restante como sobrecarga. La memoria mínima de SQL Server se establece en la mitad de la memoria máxima. El script asume que tiene una única base de datos de SQL Server instalada en la EC2 instancia.
DECLARE @OSMemoryTotalKB bigint; DECLARE @OSMemoryUnder16GB bigint; DECLARE @OSMemoryOver16GB bigint; DECLARE @OSOverhead bigint; DECLARE @MemoryOverheadLower bigint; DECLARE @MemoryOverheadUpper bigint; DECLARE @MemoryOverheadTotal bigint; DECLARE @SQLMaxMemory int; DECLARE @SQLMinMemory int; -- Find how much memory is available on the OS SELECT @OSMemoryTotalKB = total_physical_memory_kb from sys.dm_os_sys_memory; SET @OSMemoryUnder16GB = IIF(@OSMemoryTotalKB>16777216, 16777216, @OSMemoryTotalKB); SET @OSMemoryOver16GB = IIF(@OSMemoryTotalKB>16777216, @OSMemoryTotalKB-16777216, 0); -- Calculate overhead for the OS SET @OSOverhead= 1048576; -- static 1GB reservation -- Calculate overhead for managing memory SET @MemoryOverheadLower = @OSMemoryUnder16GB/4; --reserve 25% of memory under 16GB for overhead SET @MemoryOverheadUpper = @OSMemoryOver16GB/8; -- reserve 12.5% of memory over 16GB for overhead SET @MemoryOverheadTotal = @OSOverhead + @MemoryOverheadLower + @MemoryOverheadUpper; -- Calculate remaining memory available for SQL SET @SQLMaxMemory = (@OSMemoryTotalKB-@MemoryOverheadTotal)/1024; SET @SQLMinMemory = @SQLMaxMemory/2; -- set minimum to half of maximum Print N'Total Server memory (KB): ' + CAST(@OSMemoryTotalKB as NVARCHAR); Print N'Memory Overhead for OS Overhead (KB): ' + CAST(@OSOverhead as NVARCHAR); Print N'Memory Overhead for management of lower 16GB (KB): ' + CAST(@MemoryOverheadLower as NVARCHAR); Print N'Memory Overhead for management of over 16GB (KB): ' + CAST(@MemoryOverheadUpper as NVARCHAR); Print N'Memory Overhead Total: ' + CAST(@MemoryOverheadTotal as NVARCHAR); Print N'SQL Minimum Memory (MB): ' + CAST(@SQLMinMemory as NVARCHAR); Print N'SQL Maximum Memory (MB): ' + CAST(@SQLMaxMemory as NVARCHAR); EXEC sp_configure 'show advanced options', 1; RECONFIGURE; EXEC sp_configure 'min server memory', @SQLMinMemory RECONFIGURE; EXEC sp_configure 'max server memory', @SQLMaxMemory; RECONFIGURE;
Bloquear páginas en la memoria
Para garantizar la estabilidad de la memoria utilizada en una base de datos de EnterpriseOne SQL Server, se recomienda bloquear las páginas en la memoria. Siga los pasos de la EC2 guía Mejores prácticas para implementar SQL Server en Amazon para completar esta configuración.