Не срабатывает автоувеличение размера файла mdf на MS SQL Server
Windows 2016 Server. Файловая система NTFS.
MS SQL Server 2019 Enterprise (проапгрейдил с 2016 Ent) со всеми обновлениямими CU
База, модель восстановления SIMPLE состоит из одного mdf и одного ldf файла.
Места на дисках сервера много (сотня гигабайт). Квот нет.
Для файловой группы PRIMARY стоит галка "Автоматическое увеличение всех файлов".
Для файлов БД стоят настройки "Автоувеличение 512 МБ, без ограничений".
Проблема. Когда MDF дорастает (заполняется) до 141 216 МБ (цифра в SSMS), в файловой системе файл 137 ГБ (138 ГБ "на диске"),
скуль считает, что больше не может увеличить размер файла MDF.
"Could not allocate space for object 'dbo._InfoRg3863'.'_InfoRg3863_1' in database 'TEST' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
1) место на диске есть
2) autogrowth включен, безлимитно
3) помогает добавить второй файл в файловую группу Primary, на диске появляется файл ndf и начинает заполняться.
Почему не расширяется существующий файл MDF? Может кто сталкивался?
MS SQL Server 2019 Enterprise (проапгрейдил с 2016 Ent) со всеми обновлениямими CU
База, модель восстановления SIMPLE состоит из одного mdf и одного ldf файла.
Места на дисках сервера много (сотня гигабайт). Квот нет.
Для файловой группы PRIMARY стоит галка "Автоматическое увеличение всех файлов".
Для файлов БД стоят настройки "Автоувеличение 512 МБ, без ограничений".
Проблема. Когда MDF дорастает (заполняется) до 141 216 МБ (цифра в SSMS), в файловой системе файл 137 ГБ (138 ГБ "на диске"),
скуль считает, что больше не может увеличить размер файла MDF.
"Could not allocate space for object 'dbo._InfoRg3863'.'_InfoRg3863_1' in database 'TEST' because the 'PRIMARY' filegroup is full. Create disk space by deleting unneeded files, dropping objects in the filegroup, adding additional files to the filegroup, or setting autogrowth on for existing files in the filegroup.
1) место на диске есть
2) autogrowth включен, безлимитно
3) помогает добавить второй файл в файловую группу Primary, на диске появляется файл ndf и начинает заполняться.
Почему не расширяется существующий файл MDF? Может кто сталкивался?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) Дефрагментация и проверка (и исправление) дисков делаются регулярно раз в неделю. Причем для диска C - с перезагрузкой сервера. Для D - там где база - на лету.
Проблема же возникла пару месяцев назад, и все это время я с ней боролся сам, сегодня отчаялся и написал на форум.
Проблема же возникла пару месяцев назад, и все это время я с ней боролся сам, сегодня отчаялся и написал на форум.
В первую очередь я бы посмотрел таблицу, на которую у Вас ругается SQL, 'dbo._InfoRg3863'.'_InfoRg3863_1'. Исходя из ошибки "Could not allocate space for object", SQL не может добавить данные именно в эту таблицу, а не увеличить .mdf.
1. Проверьте права аккаунта MS SQL на "Perform Volume Maintenance Tasks"
2. Выполните sp_spaceused и проверьте , что allocated space не имеет отрицательной величины (был такой глюк, в старых версиях)
А вообще-то странно, попробуйте руками увеличить mdf файл, если ошибка останется, что-то все же настроено не так.
Синтаксис точно не помню, как-то так:
USE master;
GO
ALT ER DATABASE HERE_IS_YOU_BASE_NAME
MODIFY FILE
(NAME = test1dat3,
SIZE = 200GB);
GO
2. Выполните sp_spaceused и проверьте , что allocated space не имеет отрицательной величины (был такой глюк, в старых версиях)
А вообще-то странно, попробуйте руками увеличить mdf файл, если ошибка останется, что-то все же настроено не так.
Синтаксис точно не помню, как-то так:
USE master;
GO
ALT ER DATABASE HERE_IS_YOU_BASE_NAME
MODIFY FILE
(NAME = test1dat3,
SIZE = 200GB);
GO
модель восстановления SIMPLE
Автоматически освобождает место на диске,
занятое журналами,
устраняя таким образом необходимость в управлении размером журналов транзакций.
а что за глупое расположение ?
Все базы и журналы на одном диске ...
Скл резервирует место под свои задачи и он предполагает,что ваше увеличение размера задевает и остальных участников дискового пространства ... и он не может позволить себе и вам проводить такие эксперименты.
У вас в случае проблем с Д диском только бекапы непонятной работоспособности могут помочь восстановится.
Все базы и журналы на одном диске ...
Скл резервирует место под свои задачи и он предполагает,что ваше увеличение размера задевает и остальных участников дискового пространства ... и он не может позволить себе и вам проводить такие эксперименты.
У вас в случае проблем с Д диском только бекапы непонятной работоспособности могут помочь восстановится.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот