As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Ajustar as configurações de memória
Recomendamos configurar os valores de memória padrão para um banco de dados do SQL Server que esteja executando workloads do JD Edwards. Isso inclui:
-
Definir as configurações de memória máxima e mínima
-
Bloquear páginas na memória
Configurar as memórias máxima e mínima
Definir a memória máxima do banco de dados SQL Server garante que os sistemas operacionais e outros processos tenham memória suficiente para realizar suas ações sem paginar para disco. Definir a memória máxima e mínima pode evitar que várias instâncias do SQL Server instaladas na mesma EC2 instância consumam memória umas das outras.
É possível usar o script a seguir para definir automaticamente as configurações máxima e mínima com valores conservadores. Esse script reserva 1 GB para o sistema operacional e 25% da memória abaixo de 16 GB e 12,5% da memória restante como overhead. A memória mínima do SQL Server está definida como metade da memória máxima. O script pressupõe que você tenha um único banco de dados SQL Server instalado na EC2 instância.
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 na memória
Para garantir a estabilidade da memória usada para um banco de dados do EnterpriseOne SQL Server, recomendamos que você bloqueie as páginas na memória. Siga as etapas do EC2 guia de melhores práticas para implantar o SQL Server na Amazon para concluir essa configuração.