Поделиться через


Активация памяти расширений AWE для SQL Server

Расширения AWE позволяют 32-разрядным операционным системам обращаться к большим объемам памяти. Расширения AWE предоставляются операционной системой, при этом их реализация в Microsoft и несколько различается. Расширения AWE включаются с помощью Параметр awe enabled.

Использование отображаемой памяти расширений AWE с Windows 2000 Server

Экземпляры Microsoft SQL Server 2005, выполняющиеся в , распределяют память во время запуска SQL Server согласно следующей последовательности событий.

  • Если доступная физическая память оказывается меньше, чем виртуальное адресное пространство пользовательского режима, расширения AWE включить не удастся. В этом случае SQL Server выполняется без использования расширений AWE независимо от значения параметра awe enabled.
  • Если доступная физическая память больше, чем виртуальное адресное пространство пользовательского режима, то расширения AWE можно включить.
    • Если объем доступной физической памяти превышает значение параметра max server memory, экземпляр SQL Server блокирует объем памяти, указанный в параметре max server memory.
    • Если доступная физическая память меньше, чем значение параметра max server memory, или если параметр max server memory не был установлен, экземпляр SQL Server блокирует всю доступную память, кроме 256 МБ.
  • После выделения отображаемой памяти расширений AWE она не может быть освобождена до закрытия SQL Server.

Настройка параметров памяти

Настоятельно рекомендуется устанавливать значение для параметра max server memory каждый раз при включении расширений AWE. Если параметру awe enabled присвоено значение 1 (и объем доступной физической памяти больше, чем пространство процесса в пользовательском режиме), экземпляры SQL Server 2005, выполняющиеся в , при запуске сервера блокируют почти всю доступную память (либо объем памяти, соответствующий значению параметра max server memory, если этот параметр был задан). Если параметр max server memory не установлен, другим приложениям или экземплярам SQL Server будет доступно меньше, чем 128 МБ физической памяти.

Пул расширенной памяти AWE не может быть выгружен в системные файлы подкачки. Если для использования требуется дополнительная физическая память, операционная система Windows должна выгрузить другие приложения, что может воспрепятствовать работе этих приложений.

Во избежание потери производительности других приложений настройте параметр max server memory таким образом, чтобы оставалось немного дополнительной свободной памяти для различных требований других приложений и операционной системы. Можно определить объем памяти, безопасно распределяемый экземплярам компонента SQL Server, установив количество памяти, доступной после того, как были запущены все другие приложения, использующиеся на компьютере.

ms190673.note(ru-ru,SQL.90).gifПримечание.
В параметр min server memory не учитывается для расширений AWE в SQL Server.

Используйте счетчик Общая память сервера (КБ) монитора производительности SQL Server, чтобы определить, сколько памяти распределено экземпляром SQL Server, выполняющимся в режиме AWE, или выберите сведения об использовании памяти из sysperfinfo.

Дополнительные сведения см. в разделе Мониторинг использования памяти.

Запуск нескольких экземпляров SQL Server с расширениями AWE

Если сервер работает под управлением , для каждого экземпляра должен быть определен параметр max server memory. Поскольку SQL Server 2005 в операционных системах не поддерживает динамическое выделение памяти расширений AWE, рекомендуется определить параметр max server memory для каждого экземпляра.

Сумма значений max server memory для всех экземпляров должна быть меньше, чем общая физическая память компьютера. Если сумма больше, чем общий объем физической памяти, некоторые из экземпляров не запустятся или будут иметь доступ к меньшему объему памяти, чем указано параметром max server memory. Предположим, что компьютер имеет 16 гигабайт (ГБ) физической памяти и три установленных экземпляра SQL Server 2005. Кроме того, параметр max server memory установлен на 8 ГБ для каждого экземпляра. Если остановятся и перезапустятся все три экземпляра, память будет распределена следующим образом.

  1. Первый экземпляр имеет доступ к 8 ГБ физической памяти.
  2. Второй экземпляр запускается, но имеет доступ к несколько меньшему объему памяти, чем 8 ГБ (менее 128 МБ).
  3. Третий экземпляр запускается в режиме динамической памяти и имеет доступ к 256 МБ или к меньшему объему физической памяти.

Дополнительные сведения см. в разделе Управление памятью для больших баз данных.

Использование отображаемой памяти расширений AWE с Windows Server 2003

SQL Server 2005 поддерживает динамическое выделение памяти расширений AWE в . Во время запуска SQL Server резервирует только небольшую часть памяти расширений AWE. По мере появления потребности в дополнительной памяти AWE операционная система динамически выделяет ее SQL Server. Аналогично, если требуется меньшее количество ресурсов, SQL Server может вернуть отображаемую память расширений AWE операционной системе для использования другими процессами или приложениями. Дополнительные сведения о параметре конфигурации awe enabled см. в разделе Параметр awe enabled.

Объем поддерживаемой физической памяти вырос с выходом семейства операционных систем . Объем физической памяти, доступной расширениям AWE, зависит от используемой операционной системы. В следующем списке приведены сведения о максимальном объеме физической памяти, доступном для каждой операционной системы семейства , на момент написания данного раздела.

  • Выпуск Standard Edition поддерживает до 4 ГБ физической памяти.
  • Выпуск Enterprise Edition поддерживает до 32 ГБ физической памяти.
  • Выпуск Datacenter Edition поддерживает до 64 ГБ физической памяти.

Настройка параметров памяти

SQL Server 2005 динамически распределяет память расширений AWE при выполнении в любом из выпусков операционной системы . Другими словами, буферный пул может динамически управлять отображаемой памятью расширений AWE (в пределах ограничений параметров min server memory и max server memory) для балансировки использования памяти SQL Server с общими системными требованиями.

Когда расширения AWE включены, SQL Server 2005 всегда пытается использовать отображаемую память AWE. Это применимо ко всем конфигурациям памяти, включая компьютеры, настроенные на предоставление приложениям менее 3 ГБ адресного пространства в пользовательском режиме.

  • Рекомендуется установить AWE как режим памяти по умолчанию для SQL Server 2005, работающего под управлением . Для функции памяти с «горячей» заменой необходимо, чтобы расширения AWE были включены во время запуска SQL Server. Дополнительные сведения см. в разделе Горячее добавление памяти.
ms190673.note(ru-ru,SQL.90).gifПримечание.
В 64-разрядных операционных системах расширения AWE не используются и не подлежат настройке.
  • Так как отображаемая память расширений AWE поддерживается в области ниже 3 ГБ, можно определить значения min server memory и max server memory в пределах диапазона физической памяти или использовать значения по умолчанию для обоих параметров.
  • Можно рассмотреть настройку max server memory для SQL Server, чтобы гарантировать предоставление дополнительной памяти другим приложениям, работающим на компьютере. Хотя SQL Server может динамически освобождать отображаемую память расширений AWE, текущий объем распределенной отображаемой памяти расширений AWE не может быть переключен на файл подкачки.

Чтобы сделать расширения AWE доступными для экземпляра SQL Server 2005, воспользуйтесь хранимой процедурой sp_configure, чтобы установить параметр awe enabled в 1, и затем перезапустите SQL Server.

Дополнительные сведения о параметрах min server memory и max server memory см. в разделе Параметры памяти сервера.

Прежде чем включить расширения AWE, необходимо настроить политику Закрепление страниц в памяти. Дополнительные сведения см. в разделе Как включить параметр «Блокировка страниц в памяти» (Windows).

Пример

Следующий пример показывает, как активизировать AWE и настроить ограничение 1 ГБ для min server memory и 6 ГБ для max server memory.

Сначала настройте AWE:

sp_configure 'show advanced options', 1
RECONFIGURE
GO

sp_configure 'awe enabled', 1
RECONFIGURE
GO

После перезапуска SQL Server будет записано следующее сообщение в журнал ошибок SQL Server: «Расширения AWE включены.»

Далее настройте память:

sp_configure 'min server memory', 1024
RECONFIGURE
GO

sp_configure 'max server memory', 6144
RECONFIGURE
GO

В этом примере настройки памяти устанавливают буферный пул для динамического управления отображаемой памятью расширений AWE между 1 ГБ и 6 ГБ. Если другому приложению потребуется дополнительная память, SQL Server может высвободить выделенную под расширения AWE память в случае ее ненадобности. В этом примере отображаемая память расширений AWE может быть высвобождена только до 1 ГБ.

Динамическая память AWE также позволяет SQL Server увеличивать память, если дополнительная память добавлена к компьютеру, который поддерживает память с «горячей» заменой. Память с «горячей» заменой, доступная в Enterprise Edition и Datacenter Edition, позволяет добавлять память во время работы компьютера. Предположим, что запуск SQL Server 2005 под управлением Enterprise Edition происходит на компьютере с 16 ГБ физической памяти. Операционная система настроена на предоставление приложениям не более 2 ГБ адресного пространства виртуальной памяти; расширения AWE были активированы для SQL Server. Позже системный администратор добавляет 16 ГБ памяти во время работы компьютера. SQL Server 2005 немедленно распознает дополнительную память и, в случае необходимости, может использовать ее по своему усмотрению.

Дополнительные сведения об использовании AWE см. в документации .

Запуск нескольких экземпляров SQL Server с расширениями AWE

Если на одном компьютере работает несколько экземпляров SQL Server 2005 и каждый экземпляр использует отображаемую память расширений AWE, необходимо обеспечить правильную работу экземпляров.

Если сервер работает под управлением , для каждого экземпляра должен быть определен параметр min server memory. Поскольку SQL Server 2005 под управлением поддерживает динамическое управление памятью расширений AWE, рекомендуется определить параметр min server memory для каждого экземпляра. Так как отображаемая память расширений AWE не может быть переключена на файл подкачки, сумма значений min server memory для всех экземпляров должна быть меньше, чем общая физическая память на компьютере.

Параметр min server memory не заставляет SQL Server получать минимальный объем памяти при запуске. Память распределяется по требованию, основываясь на рабочей загрузке базы данных. Однако, как только достигнут порог min server memory, память не будет освобождаться SQL Server, если это может привести к тому, что SQL Server останется с меньшим количеством памяти, чем указано в параметре. Чтобы гарантировать, что каждому экземпляру выделена память (по крайней мере, соответствующая значению параметра min server memory), рекомендуется выполнить загрузку сервера базы данных вскоре после запуска. В ходе нормальной деятельности сервера доступная экземпляру память меняется, но она никогда не станет меньше, чем значение параметра min server memory каждого экземпляра.

Можно задать параметр max server memory или оставить для него значение по умолчанию. Если оставить для параметра max server memory значение по умолчанию, это может привести к конкуренции за память между экземплярами SQL Server.

Использование отказоустойчивого кластера с AWE

Если используется отказоустойчивый кластер SQL Server 2005 и память AWE, необходимо гарантировать, что сумма настроек max server memory для всех экземпляров будет меньше наименьшего доступного объема физической памяти на любом из серверов в отказоустойчивом кластере. Если у резервного узла физической памяти меньше, чем у исходного, может случиться, что экземпляры SQL Server 2005 не запустятся вообще или запустятся с меньшим объемом памяти, чем они имели на исходном узле.

См. также

Задачи

Как настроить параметр awe enabled (среда SQL Server Management Studio)

Основные понятия

Использование расширений AWE
Управление памятью для больших баз данных
Архитектура оперативной памяти

Справка и поддержка

Получение помощи по SQL Server 2005