Файловая группа primary переполнена что делать

Первичная файловая группа заполнена SQL Server 2008

У меня есть большая таблица (

50 миллионов строк). Я пытаюсь выполнить массовую вставку в SQL Server, и я получаю сообщение об ошибке:

Не удалось выделить пространство для объекта ‘myDB’ в базе данных ‘I 3 Stroke’, потому что файловая группа PRIMARY заполнена. Создайте дисковое пространство, удалив ненужные файлы, отбросьте объекты в файловой группе, добавив дополнительные файлы в файловую группу или установив автозапуск для существующих файлов в файловой группе.

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

В такой ситуации, как это, что лучший способ справиться с этим, чтобы SQL Server не жаловался? Будет ли решение иметь в виду, что эта БД не будет подвергаться воздействию нескольких пользователей?

3 ответа

Выполните следующие действия:

Экспресс-версия 2014 имеет ограничение по 10 ГБ на базу данных. Если автоматический рост базы данных достигает этой точки, SQL Server выдает сообщение об ошибке (неясное?), Не упоминая ограничение лицензии. Может быть много места на диске, но вы все еще видите это сообщение.

Устранение, если дизайн позволяет: использовать несколько баз данных по этой лицензии.

Базы данных часто исчерпывают пространство, когда они находятся в режиме полного восстановления. Если вы не выполняете транзакции и ручное резервное копирование достаточно, вы можете изменить режим восстановления на простой.

Однако вам лучше задавать этот вопрос администраторам баз данных, которые могут предлагать больше решений.

Источник

MSSQLSERVER_1105

Сведения

attributeЗначение
Название продуктаSQL Server
Идентификатор события1105
Источник событияMSSQLSERVER
КомпонентSQLEngine
Символическое имяNO_MORE_SPACE_IN_FG
Текст сообщенияНе удалось выделить место для объекта ‘%.*ls’%.*ls в базе данных ‘%.*ls’, так как файловая группа ‘%.*ls’ переполнена. Выделите место на диске, удалив ненужные файлы или объекты в файловой группе, добавив дополнительные файлы в файловую группу или указав параметр автоматического увеличения размера для существующих файлов в файловой группе.

Объяснение

Нет свободного места на диске в файловой группе.

Действие пользователя

Место в файловой группе можно освободить следующим образом.

Добавить файлы в файловую группу.

Освободить место на диске, удалив ненужные индексы или таблицы.

Дополнительные сведения см. в разделе «Диагностика недостатка места на диске» электронной документации по SQL Server.

Когда индекс располагается в нескольких файлах, ALTER INDEX REORGANIZE может вернуть ошибку 1105 при заполнении одного их файлов. Процесс реорганизации блокируется, если процесс пытается переместить строки в полный файл. Чтобы обойти это ограничение, выполните ALTER INDEX REBUILD вместо ALTER INDEX REORGANIZE или увеличьте ограничение на размер файла для файлов, которые достигают этого ограничения.

Источник

Файловая группа primary переполнена что делать

Описание ошибки:
Клиент-серверный вариант работы базы конфигурации 1С: Комплексная автоматизация 1.1.58.3 на платформе 1С: Предприятие 8.2. Ошибка при тестировании и исправлении базы возникает в момент обновления конфигурации: В процессе обновления информационной базы произошла критическая ошибка. по причине: Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Не удалось выделить место для объекта «dbo._Reference279NG».’PK___Referen__AC8ED0C4B64C2C77′ в базе данных «KA2015», поскольку файловая группа «PRIMARY» переполнена. Выделите место на диске, удалив ненужные файлы или объекты в файловой группе, добавив дополнительные файлы в файловую группу или указав параметр автоматического увеличения размера для существующих файлов в файловой группе. HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=2, Severity=11, native=1105, line=1

Если немного углубиться в анатомию событий, прелшестовавших тестированию. То у клиента внезапно возникла проблема нумерации в документах нескольких видов («Заказ покуателя», «Заказ поставщику», нетиповой добавленный «Наряд-заказ»). Проблема была в том, что при нумерации программа не отражала в номере префикс организации, выбранной в документе. А просто ставила один и тот же префикс (недавно созданной организации) всем документам, и с таким префиксом продолжала по нему сплошную нумерацию. Хотя проблема возникла не сразу, как новую организацию добавили в справочник «Организации».

Было выполнено обновление нумерации с помощью штатной обработки «Настройка стратегии редактирования номеров»

Файловая группа primary переполнена что делать

Но выполненная операция не привела к изменениям в решении проблемы. Было принято решение выполнить «Тестирование и исправление» базы данных.

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

В процессе обновления информационной базы произошла критическая ошибка.
по причине:
Ошибка СУБД:
Microsoft SQL Server Native Client 11.0: Не удалось выделить место для объекта «dbo._Reference279NG».’PK___Referen__AC8ED0C4B64C2C77′ в базе данных «KA2015», поскольку файловая группа «PRIMARY» переполнена. Выделите место на диске, удалив ненужные файлы или объекты в файловой группе, добавив дополнительные файлы в файловую группу или указав параметр автоматического увеличения размера для существующих файлов в файловой группе.
HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=2, Severity=11, native=1105, line=1

Источник

«Основная файловая группа заполнена» в стандарте SQL Server 2008 без видимых причин

наша база данных в настоящее время находится на 64 Гб, и одно из наших приложений начало терпеть неудачу со следующей ошибкой:

Я дважды проверил все: все файлы в одной файловой группе могут автоматически расширяться с разумным шагом (100 Мб для файла данных, 10% для файла журнала), для базы данных доступно более 100 Гб свободного места, tempdb настроен на автозапуск, а также с большим количеством свободного места на жестком диске.

чтобы решить проблему, я добавил второй файл в файловую группу и ошибка ушла. Но меня беспокоит вся эта ситуация.

где здесь проблема, ребята?

9 ответов

хорошо, он работает. Оказывается, что Том NTFS, где находились файлы БД, получил сильно фрагментирован. Остановил SQL Server, дефрагментировал все это, и с тех пор все было в порядке.

рекомендуется не создавать пользовательские объекты в основной файловой группе. При наличии полосы пропускания создайте новую файловую группу, переместите пользовательские объекты и оставьте системные объекты в основном.

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

поэтому, хотя размер был установлен на «неограниченный», это не было.

Я также столкнулся с той же проблемой, где начальный размер dtabase установлен в 4Gb, а autogrowth установлен на 1Mb. Виртуальный зашифрованный диск TrueCrypt, на котором находилась база данных, казалось, имел много места.

Я изменил пару (выше) вещи:

все безрезультатно (я мог бы вставить еще несколько записи, но вскоре столкнулись с той же проблемой). Файл подкачки, упомянутый Тобби, заставил меня попробовать больший виртуальный диск. (Хотя мой диск не должен содержать таких системных файлов, так как я работаю без его монтирования много времени.)

при создании этого я столкнулся с TrueCrypt-вопросом, если я собираюсь хранить файлы размером больше 4 ГБ (как показано в этом суперпользователя вопрос).

после этих последних двух я был в порядке, и я предполагаю, что этот последний сделал свое дело. Я думаю, что TrueCrypt выбирает exfat файловой системы (как описано здесь), которая ограничивает все файлы до 4 ГБ. (Так что мне, вероятно, не нужно было увеличивать диск в конце концов, но я все равно сделал.)

Это, вероятно, очень редкий случай границы, но, возможно, это это кому-то помогает.

сделать одну вещь, перейти к свойствам базы данных выберите файлы и увеличьте начальный размер базы данных и установите первичную файловую группу как autoincremented. перезапустить SQL Server.

вы сможете использовать базу как и раньше.

перезапуск SQL server не помог, возможно, дефрагментация даст ОС время, чтобы освободить файл подкачки, но мы просто перезагрузили сервер и вуаля, файл подкачки сократилась и все работало нормально.

пожалуйста, проверьте тип роста файла базы данных, если его ограничение делает его неограниченным

SQL Server освобождает только все страницы, используемые таблицей кучи, когда выполняются следующие условия: происходит удаление в этой таблице. Ля блокировка уровня таблицы удерживается. Обратите внимание на таблицы кучи любой таблицы, не связан с кластеризованным индексом.

Если страницы не освобождены, другие объекты в базе данных не могут использовать страницы.

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

чтобы обойти эту проблему, используйте один из следующих методов: Включите подсказку TABLOCK в инструкцию DELETE, если строка уровень изоляции на основе управления версиями не включен. Для например, использовать утверждение, похожее на следующее:

удалить из TableName с (TABLOCK)

— Это имя таблицы. Используйте усечь Инструкция TABLE, если вы хотите удалить все записи в таблице. Например, используйте оператор, аналогичный следующему:

усечь таблицу TableName

создайте кластеризованный индекс в столбце таблицы. For more сведения о создании кластерный индекс на таблице, см. Раздел» Создание кластеризованного индекса » в SQL

вы заметите в нижней части ссылки, что не отмечено, что это относится к SQL Server 2008, но я думаю, что это делает

Источник

Не удалось выделить новую страницу для базы данных из-за недостатка места на диске

Используя мастер импорта и экспорта SQL Server, я получаю эту ошибку:

Ошибка 0xc0202009: Поток данных Задача 1: Код ошибки служб SSIS DTS_E_OLEDBERROR.
Произошла ошибка OLE DB. Код ошибки: 0x80004005.
Не удалось выделить новую страницу для базы данных ‘database’ из-за недостатка места на диске в файловой группе ‘PRIMARY’. Создайте необходимое пространство, удалив объекты в файловой группе, добавив дополнительные файлы в файловую группу или установив автоматический рост для существующих файлов в файловой группе.

Я пытаюсь загрузить серию файлов по 2 ГБ, и при загрузке 4-го файла я продолжаю получать указанное выше сообщение об ошибке даже после того, как захожу в Свойства базы данных> Файлы и изменяю авторазраст файловой группы на 2500 МБ и максимальный размер неограничен.

Какой лучший обходной путь? Эти данные в конечном итоге займет около 60-80 ГБ.

Sql Express база данных будет пополняться на 10g. Я считаю, что это похоже на сообщение об ошибке, которое вы получаете.

Однажды я столкнулся с этой проблемой у клиента, и мне потребовалось время, чтобы разобраться.

какую версию sql вы используете?

Вы уверены, что это

Не удалось выделить новую страницу для базы данных ‘database’ из-за недостатка места на диске в файловой группе ‘PRIMARY’.

Не удалось выделить новую страницу для базы данных «tempdb» из-за недостатка места на диске в файловой группе «PRIMARY».

Если на самом деле [tempdb] это сообщение об ошибке, то этим нужно управлять отдельно, следя за тем, чтобы он находился [tempdb] на диске соответствующего размера, отделенном от другой базы данных.

Если он [tempdb] находится на отдельном диске, и вы уверены, что у вас достаточно места, я бы пошел дальше и размер файла данных соответствовал ожидаемому размеру конечного состояния:

Также убедитесь, что файл журнала базы данных отделен от файла данных. Если нет, то вы вернулись с конкурирующими событиями роста. Если они находятся на отдельных дисках, то я бы тоже прошел их по размеру.

пока вы не получите желаемый размер файла журнала. Давайте назовем это 80GB, где вы установите свой рост до определенного размера. Я использую значения, рекомендованные Полом Рэндалом и Кимберли Трипп

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *