Я новичок в администрировании систем (так как я разработчик), но в последнее время я выполняю основные административные задачи на серверах Windows. У нас есть автоматизированный процесс восстановления базы данных, в которой произошел сбой с сообщением:
There is insufficient free space on disk volume 'c:\' to create the database. The database requires 2218459136 additional free bytes, while only 1219432448 bytes are available.
Когда я посмотрел на C: drive -> properties, там сказано, что свободного места 3 ГБ. Почему это несоответствие? (Согласно сообщению, для базы данных требуется 2,1 ГБ)
Думаю, мне нужно освободить место. Я проверил, нет ли файлов, которые можно удалить, и не нашел. Должен ли я в качестве временного решения сделать дефрагментацию системы (это что-нибудь испортит)?
Кроме того, есть ли способ узнать, какие папки занимают большую часть дискового пространства?
Спасибо
РЕДАКТИРОВАТЬ: Кроме того, я читал об утилите очистки диска. Это рискованно?
Чтобы не бросать больше предложений по программному обеспечению, но я использую windirstat (http://windirstat.info/), чтобы найти файлы, занимающие слишком много места.
Если на вашем системном диске меньше 3 ГБ, у вас гораздо более серьезные проблемы, чем при попытке восстановить базу данных.
Кроме того, есть ли способ узнать, какие папки занимают большую часть дискового пространства?
TreeSize Бесплатно здесь твой маленький помощник.
(источник: jam-software.com)
Дефрагментация ничего не испортит, но и дискового пространства, вероятно, не поможет. Очистите временный каталог, но также покопайтесь в файловой структуре в поисках «временных» данных, загрузок и пакетов обновления, а также - если вам серьезно не хватает места и вы готовы столкнуться с иронией в будущем - точек восстановления системы.
(Сделайте резервную копию, прежде чем делать что-либо из этого. Если вы думаете об удалении чего-то, чего не знаете, сначала переименуйте его и посмотрите, не заметит ли что-нибудь, что оно исчезло)
Однако, если у вас осталось 3 ГБ, а вашей БД требуется 2 ГБ, сейчас прекрасное время подумать об инвестировании в дополнительное пространство на жестком диске.
Дефрагментация не повредит вашей системе и не освободит место на диске.
Обычно, когда проблемы доходят до «очистки жесткого диска», это означает одно из двух:
Я предлагаю вам использовать утилиту Windows FIND для поиска файлов размером> 200 МБ. Если вы не найдете запаса DVD iso, купите два новых привода большего размера.
я предпочитаю TreePie - симпатичная маленькая утилита, которая показывает, где находятся все большие папки.
Некоторая часть пространства может быть зарезервирована для восстановления системы, поэтому вы видите разницу между объемом физически доступного пространства и объемом, разрешенным для установки вашей базы данных. Вы можете попытаться уменьшить объем зарезервированного пространства, но если у вас уже так мало места, вам лучше добавить дисковое пространство или удалить то, что вам не нужно.
Поскольку вы упомянули, что администрируете Windows Серверы и это не ваша основная работа, вам следует купить новый диск, а не тратить ненужное время на задачи, не связанные с разработкой.
Тем временем, пока вы ждете прибытия нового диска, лучший способ освободить дисковое пространство - это удалить все ненужные приложения или службы. Остальное дисковое пространство, вероятно, используется для хранения хранилищ данных для различных служб (например, электронной почты) или данных других пользователей.
Дефрагментация жесткого диска не будет эффективной с таким маленьким пространством, и в любом случае она не освободит место. Встроенная утилита дефрагментации Windows рекомендует освободить не менее 15% жесткого диска. Другие утилиты дефрагментации могут работать с меньшим объемом свободного места, но они все равно не решат проблему нехватки места на диске.
Попробуйте очистить кеш-память браузера и уменьшить размер кеш-памяти браузера. С широкополосным доступом кэшировать веб-страницы уже не так важно. В некоторых браузерах он устанавливается в процентах от вашего жесткого диска - чем больше ваш жесткий диск, тем больше места вы тратите на кеш-память браузера. Вы можете ввести фиксированное количество (скажем, 50 или 100 МБ), и процентное соотношение будет изменено.
Очистите свои временные папки. CCleaner может помочь с этим (а также с очисткой кешей браузера, но не позволит вам настроить размер кеша браузера).
Наконец, используйте WinDirStat чтобы найти большие файлы или каталоги, которые можно удалить с жесткого диска. Если каталоги пользователей находятся на сервере, вам следует дважды проверить, нужны ли какие-либо большие файлы, прежде чем удалять чужие данные. При необходимости вы можете установить квоты файловой системы.
Вероятная причина - удаление файлов Центра обновления Windows. Посмотри Вот для дальнейшего обсуждения и прочее.
Я также видел случай, когда неконтролируемое и неконтролируемое ведение журнала Backup Exec занимало около 19 ГБ (!!!) места на диске C.
Кроме того, если ваш файл подкачки находится на диске C, возможно, сейчас самое подходящее время, чтобы подумать о переносе его в другой раздел.
Что касается несоответствия размера, я предполагаю, что задание восстановления временно размещает файлы где-то, поэтому вам может потребоваться свободное пространство, примерно в два раза превышающее размер того, что вы пытаетесь восстановить. В зависимости от используемой технологии расположение этой промежуточной папки может быть настраиваемым.
Если ваша система - Vista / 2008/7, вы можете запустить COMPCLN, чтобы удалить файлы удаления для патчей Microsoft.
COMPCLN.exe является частью Windows - вам не нужно ничего устанавливать.
Это похоже на сообщение об ошибке SQL Server, которое появляется при попытке выполнить восстановление при недостаточном дисковом пространстве.
Почему это несоответствие? Можете ли вы вставить код или описать, что делает ваш автоматизированный процесс? Я подозреваю, что происходит то, что, несмотря на то, что у вас есть 3 ГБ свободного дискового пространства, а для базы данных требуется только 2 ГБ, ваш сценарий копирует файл SQL Server .BAK локально, а затем пытается выполнить восстановление перед удалением файла .BAK и перемещением вашего свободное место на диске резервное копирование до 3ГБ.
Следует ли мне сделать дефрагментацию системы (это что-нибудь испортит)? Как объясняли другие, дефрагментация ничего не сделает для увеличения доступного дискового пространства, а только изменит порядок размещения файлов на диске, чтобы обеспечить лучшую производительность последовательного чтения.
Я не собираюсь читать вам лекцию о том, почему размещение вашей базы данных на диске c - плохая идея, но предполагаю, что вы понимаете риски. Предполагая, что вы исчерпали все, что вы могли сделать для экономии дискового пространства на уровне сервера, вот некоторые действия SQL Server, которые вы можете сделать, чтобы исправить вашу ситуацию. Также имейте в виду, что некоторые варианты сопряжены с собственными рисками, которые вам также следует изучить / рассмотреть перед их использованием: