Параметр awe enabled
В следующей версии Microsoft SQL Server эта возможность будет удалена. Не используйте ее при работе над новыми приложениями и как можно быстрее измените приложения, в которых она в настоящее время используется.
SQL Server позволяет использовать API-интерфейсы расширений AWE для доступа к физической памяти сверх ограничений, установленных для настроенной виртуальной памяти. Объем памяти, с которой можно работать, зависит от конфигурации оборудования и возможностей операционной системы. Объем поддерживаемой физической памяти вырос с выходом операционных систем Microsoft Windows Server 2003. Таким образом, объем доступной расширениям AWE физической памяти зависит от используемой операционной системы.
Выпуск Windows Server 2003 Standard Edition поддерживает до 4 ГБ физической памяти.
Выпуск Windows Server 2003 Enterprise Edition поддерживает до 32 ГБ физической памяти.
Выпуск Windows Server 2003 Datacenter Edition поддерживает до 64 ГБ физической памяти.
Примечание |
---|
В 64-разрядных операционных системах расширения AWE не используются и не подлежат настройке. |
Замечания по использованию
Прежде чем включить расширения AWE, обратите внимание на следующие рекомендации.
Windows 2000
Если объем доступной физической памяти меньше ограничения на адресное пространство виртуальной памяти, память расширений AWE включить нельзя. В этом случае память выделяется динамически, а SQL Server не использует расширения AWE независимо от значения параметра awe enabled.
Если объем доступной физической памяти превышает размер адресного пространства виртуальной памяти, память расширений AWE можно включить. В этом случае применяются два правила.
Если объем доступной физической памяти превышает значение параметра max server memory, экземпляр SQL Server блокирует объем памяти, заданный параметром max server memory.
Если объем доступной физической памяти не превышает значение параметра max server memory или параметр max server memory не задан, экземпляр SQL Server блокирует всю доступную память, кроме 128 МБ.
Память расширений AWE освобождается только после завершения работы SQL Server. Майкрософт настоятельно рекомендует каждый раз при включении расширения AWE устанавливать значение параметра max server memory таким образом, чтобы учитывались требования к памяти других приложений, которые выполняются на сервере.
Windows Server 2003
SQL Server поддерживает динамическое выделение памяти для расширений AWE в Windows Server 2003. Расширения AWE увеличивают возможности приложений, работающих в 32-разрядных операционных системах, предоставляя доступ к имеющейся физической памяти сверх ограничений, установленных для адресного пространства виртуальной памяти.
Во время запуска SQL Server резервирует только небольшой участок памяти расширений AWE. Так как для расширений AWE требуется дополнительная память, операционная система динамически выделяет ее SQL Server. Аналогично, если требуется меньшее количестве ресурсов, SQL Server может вернуть память, выделенную под расширения AWE, операционной системе для использования другими процессами или приложениями. За балансировку памяти между SQL Server и операционной системой отвечают параметры min server memory и max server memory.
Если SQL Server работает в Windows Server 2003, реакция SQL Server на изменение параметров конфигурации max server memory и min server memory не требует перезапуска экземпляра SQL Server. Дополнительные сведения о параметрах min server memory и max server memory см. в разделе Параметры памяти сервера.
В Windows Server 2003 динамическая память расширений AWE поддерживается на серверах, где объем физической памяти меньше объема, заданного ограничением на адресное пространство виртуальной памяти. В этом случае использование расширений AWE не повлияет на производительность, однако если после добавления памяти ее объем превысит ограничение на адресное пространство виртуальной памяти, то ее можно использовать без перезагрузки сервера.
И в Windows 2000, и в Windows Server 2003 память расширений AWE не может быть выгружена в файлы подкачки. Необходимо определить, сколько памяти можно безопасно выделить экземплярам SQL Server. Для этого нужно узнать, сколько памяти останется после запуска всех приложений, которые должны выполняться на компьютере.
Чтобы определить, сколько памяти выделено экземпляру SQL Server в режиме расширений AWE, используйте счетчик системного монитора SQL ServerTotal Server Memory (KB). Настройте параметр max server memory так, чтобы оставить некоторый дополнительный объем свободной памяти для других приложений, операционных систем Windows 2000 и Windows Server 2003. Дополнительные сведения см. в разделе Мониторинг использования памяти.
Важно! |
---|
Значения параметров awe enabled и max server memory могут повлиять на производительность других приложений или экземпляра SQL Server в среде с несколькими экземплярами или в кластерной среде. Дополнительные сведения об использовании памяти расширений AWE см. в разделе Управление памятью для больших баз данных. |
Включение расширений AWE
Чтобы включить расширения AWE, установите для параметра awe enabled значение 1. Если в Windows 2000 не задано значение параметра max server memory, SQL Server резервирует практически всю доступную память во время запуска, оставляя другим приложениям 128 МБ или меньше физической памяти. (Если расширение AWE выключено, объем физической памяти, доступной другим приложениям, управляется параметром max server memory.) В Windows Server 2003 управление памятью расширений AWE осуществляется динамически, поэтому во время запуска выделяется только небольшая часть доступной физической памяти.
Если параметр был успешно включен, при запуске экземпляра SQL Server в журнал ошибок SQL Server записывается сообщение «Включены расширения AWE».
Примечание |
---|
Прежде чем включить расширения AWE, учетной записи SQL Server необходимо предоставить разрешение LOCK PAGE IN MEMORY. Дополнительные сведения см. в разделе Как включить параметр «Блокировка страниц в памяти» (Windows). |
Параметр awe enabled является расширенным. Если для изменения настроек используется системная хранимая процедура sp_configure, то изменить значение параметра awe enabled можно только при условии, что параметр show advanced options равен 1. Чтобы задействовать AWE, необходимо перезапустить экземпляр SQL Server.
Пример
Следующий пример демонстрирует, как включить расширения AWE и установить для параметров min server memory и max server memory значения 1 и 6 ГБ соответственно:
Прежде всего включите расширения AWE.
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
После перезапуска SQL Server в журнале ошибок SQL Server должно появиться следующее сообщение: Address Windowing Extensions enabled.
Далее настройте память.
sp_configure 'min server memory', 1024
RECONFIGURE
GO
sp_configure 'max server memory', 6144
RECONFIGURE
GO
В этом примере настройки памяти для SQL Server и Windows Server 2003 устанавливают буферный пул для динамического управления расширенной памятью AWE между 1 ГБ и 6 ГБ. (Этот пример динамического управления памятью расширений AWE не относится к SQL Server 2000.) Если другому приложению требуется дополнительная память, SQL Server может высвободить выделенную под расширения AWE память в случае ее ненадобности. В этом примере память расширений AWE можно освободить, если ее размер превышает 1 ГБ (значение параметра min server memory).
Обратите внимание на то, что, если присвоить параметру min server memory значение 1 ГБ, этот объем необязательно будет автоматически выделен серверу SQL Server. Память выделяется по требованию, в зависимости от текущей нагрузки на сервер базы данных.
Отключение расширений AWE
Чтобы отключить расширения AWE, присвойте параметру awe enabled значение 0 и выполните инструкцию RECONFIGURE. Память расширений AWE по умолчанию отключена. Изменения параметра awe enabled регистрируются в журнале ошибок SQL Server. После перезагрузки SQL Server будет работать в обычном режиме динамического выделения памяти, а доступная память будет ограничена виртуальным адресным пространством или физической памятью в зависимости от того, какое значение меньше.