Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Sesuaikan pengaturan memori
Sebaiknya Anda mengonfigurasi nilai memori default untuk database SQL Server yang menjalankan beban kerja JD Edwards. Ini termasuk:
-
Mengkonfigurasi pengaturan memori maksimum dan minimum
-
Mengunci halaman dalam memori
Konfigurasikan memori maksimum dan minimum
Mengatur memori maksimum database SQL Server memastikan bahwa sistem operasi dan proses lainnya memiliki memori yang cukup untuk melakukan tindakan mereka tanpa paging ke disk. Pengaturan memori maksimum dan minimum dapat mencegah beberapa instance SQL Server yang diinstal pada EC2 instance yang sama dari kelaparan satu sama lain untuk memori.
Anda dapat menggunakan skrip berikut untuk secara otomatis mengkonfigurasi pengaturan maksimum dan minimum dengan nilai konservatif. Skrip ini menyimpan 1 GB untuk sistem operasi, dan 25 persen memori di bawah 16 GB dan 12,5 persen dari sisa memori sebagai overhead. Memori minimum SQL Server diatur ke setengah dari memori maksimum. Script mengasumsikan bahwa Anda memiliki database SQL Server tunggal diinstal pada instance. EC2
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;
Kunci halaman dalam memori
Untuk memastikan stabilitas memori yang digunakan untuk database EnterpriseOne SQL Server, kami sarankan Anda mengunci halaman dalam memori. Ikuti langkah-langkah dalam EC2 panduan Praktik terbaik untuk menerapkan SQL Server di Amazon untuk menyelesaikan konfigurasi ini.