У меня есть большая таблица (~ 50 миллионов строк), я пытаюсь массово вставить в SQL Server, и я получаю сообщение об ошибке:
Не удалось выделить место для объекта «myDB» в базе данных «I 3 Stroke», поскольку файловая группа «PRIMARY» заполнена. Создайте дисковое пространство, удаляя ненужные файлы, удаляя объекты в файловой группе, добавляя дополнительные файлы в файловую группу или устанавливая автоматический рост для существующих файлов в файловой группе.
В базе данных есть еще одна таблица с 25 миллионами строк. Эта база данных будет использоваться только на одной машине, и она будет предназначена для добычи данных, которые уже существуют, и ни при каких обстоятельствах никогда не вырастут за пределы своего текущего размера.
Для такой ситуации, как это лучше всего решить, чтобы SQL Server не жаловался? Будет ли решение иметь значение, что эта БД не будет открыта для нескольких пользователей?
источник
Ответы:
Следуй этим шагам:
( Предложение: Оставьте по крайней мере 20% свободного места на диске, если вы разместите файлы базы данных на том же диске, что и ваша ОС. { Подсказка : Дон не делайте этого! Перестройте / перенесите ваши данные на свой собственный диск; вы ввернули себя в операции ввода-вывода.} и оставьте как минимум 8% для диска с чистыми данными; есть. )
( Вы также можете рассмотреть свои значения «Autogrowth», пока вы здесь. )
Вы хотите выделить для своей базы данных столько памяти, сколько сможете. Если места не хватит, вы получите эту ошибку без автоматического увеличения, а если включено автоматическое увеличение, вы будете испытывать снижение производительности каждый раз, когда требуется автоматическое увеличение. Если вам просто не хватает места на диске, то это ваш ответ, и вам нужен диск большего размера.
источник
Express Edition 2014 имеет ограничение в 10 ГБ на базу данных. Если автоматический рост базы данных достигает этой точки, SQL Server выдает (неясное?) Сообщение об ошибке, не упоминая ограничение лицензии. Возможно, на диске достаточно места, но вы все равно видите это сообщение.
Исправить, если дизайн позволяет: использовать несколько баз данных по этой лицензии.
источник
В базах данных часто не хватает места, когда они находятся в режиме полного восстановления. Если вы не выполняете транзакции и достаточно резервного копирования вручную, вы можете изменить режим восстановления на простой.
Вам также может понадобиться восстановить место из файла журнала. , , это может быть освобождено, но все еще использовать пространство.
Однако лучше задать этот вопрос администраторам баз данных, которые могут предложить больше решений.
источник
По моему опыту, это сообщение возникает, когда в основном файле (.mdf) нет места для сохранения метаданных базы данных. Этот файл включает системные таблицы, и они только сохраняют свои данные в него.
Сделайте немного места в файле, и команды снова будут работать. Вот и все, наслаждайтесь
источник