Назад | Перейти на главную страницу

Расположение файла подкачки SQL Server - где его разместить?

Существует множество рекомендаций по изменению размера файла подкачки Windows. Я ищу правильное размещение.

Мы запускаем сервер MS SQL на виртуальной машине Server 2012R2 с несколькими отдельными виртуальными дисками:

На данный момент Windows контролирует файл подкачки. Он рассчитал его на 38 ГБ (Память 265) и поместил его на диск с файлом журнала. Насколько я понимаю, такое размещение не логично: диск, содержащий файл журнала транзакций SQL, является диском с наибольшим объемом операций ввода-вывода на сервере SQL. Это действительно лучшее место для файла подкачки? Что касается места для хранения, я мог легко переместить файл на другой диск.

Я знаю, у Windows может быть причина для размещения файла там, но если да, то что это может быть? Или я ошибаюсь в своем мышлении?

Прежде чем беспокоиться о размере файла подкачки ....

Если честно, ты никогда хотите, чтобы ваш SQL Server начал подкачку. SQL Server имеет тенденцию превращаться в грушу, когда его память выгружается на диск.

Лучшая практика для SQL Server - установить Max Server Memory конфигурации до числа, достаточно большого, чтобы у SQL Server было достаточно памяти, но достаточно маленького, чтобы ваша ОС и все остальное, что запущено на сервере, имело достаточно памяти. Есть отличный совет, как настроить это Вот, и Вот.

Для сервера с памятью 256 ГБ и только SQL Server, работающий на сервере, я бы предложил начать с максимальной памяти сервера, настроенной на 235929 МБ, что дает около 25 ГБ свободного места. Этого должно быть достаточно, чтобы предотвратить пейджинг.

EXEC sys.sp_configure 'max server memory (MB)', '235929'; 
RECONFIGURE;

Что в Интернете говорят об этом файле подкачки ...

В Интернете есть много советов, согласно которым ваш файл подкачки должен быть в 1,5 раза больше вашей памяти. На сервере с 256 ГБ памяти для этого потребуется файл подкачки размером 386 ГБ. Вы бы хотели, чтобы этот файл подкачки находился на диске отдельно от ваших файлов данных и журналов (иначе подкачка на ваши диски данных / журналов усугубит проблемы с производительностью, вызванные подкачкой). Ваш диск C: \, вероятно, недостаточно велик для этого, если вы не строите серверы с дисками C: \ объемом 512 ГБ. Вы также захотите, чтобы диск был быстрым (иначе подкачка на медленный диск усугубит проблемы с производительностью, вызванные подкачкой). Вероятно, вам понадобится специальный диск для файла подкачки 1.5x.

Этот совет предполагает, что вы хотеть ваш сервер на страницу. Вы не хотите, чтобы ваш сервер пейджинговал. SQL Server может дать сбой при запуске подкачки, и если этого не произойдет, ваша производительность снизится до обхода. Вы можете купить какой-нибудь сверхбыстрый диск NVMe для файла подкачки, и это, вероятно, сделает производительность приемлемой.

Интернет неправильный.

Что я говорю об этом файле подкачки ...

Меня даже не волнует, насколько он большой. Я никогда не буду его использовать. Он может быть довольно маленьким. Он может быть на диске C: \. Диск C: \ может работать медленно.

  • Убедитесь, что вы правильно установили максимальную память сервера (см. Выше)
  • Если вашему серверу требуется больше памяти, установите на сервере больше памяти, а не страницы на диск.
  • Вам следует переместить файл подкачки с диска журнала на C :. Если вы используете его, вы хотите, чтобы это было с ваших дисков данных / журналов. Если тебе нужно это сделать меньше чтобы поместиться на C: \, дерзайте.
  • Не тратьте деньги на быстрые диски для файла подкачки - потратьте эти деньги на другую карту ОЗУ.

В случае сбоя системы и создания аварийных дампов памяти мой файл подкачки, вероятно, будет недостаточно большим для обработки этого дампа. Но в системах с большим объемом памяти сброс 1 ТБ памяти на диск для этого аварийного дампа займет много времени, даже на быстрых дисках, и я обычно предпочитаю быстро вернуть в оперативный режим SQL Server, который захватывает аварийный дамп. Я могу перенастроить сервер с повторяющимися проблемами в рамках устранения неполадок.

Не помещайте файл подкачки Windows (Pagefile.sys) на тот же диск, на котором расположены файлы базы данных или журнала. Вы можете оставить его на системном диске или назначить для него новый диск. Если системным диском является SSD, вы можете оставить файл подкачки там и установить начальный размер базы файла подкачки размером ОЗУ x 1,5.