Здравствуйте уважаемые.
Вопрос по уменьшению базы данных SQL.
Понимаю, что тема избитая, но тем не менее для себя толкового ответа на вопрос не нашел.
Имеем sql server 2000 и базу на 65ГБ.
Настроили сверстку и потихоньку режем базу. Лишние документы помечаем на удаление, удаляем штатными средствами. Затем запросом делаем шринк базы. До начала всех манипуляций база весила 80ГБ. Сделали шринк и она стала 65ГБ. Дальше удалили год работы, в общей сложности 100 000 документов. Опять сделали шринк но база не уменьшилась. По идее должна была....
Вот и решил уточить, а так ли он работает тот шринк или есть другие методы уменьшения объема базы данных. Подскажите кто сталкивался.
(1)Шринк - зло, перестаньте насиловать СУБД. Сделайте размер БД в 80ГБ и дальше просто выполняйте свертку БД без шринка самой БД, периодически шринкая файл журнала транзакций.
(5)Хорошо себя будет вести, не тратя ресурсы на увеличение файла БД, т.е. не напрягая лишний раз дисковую подсистему.
ну быть может надо сделать бОльший, чем 80ГБ размер БД, это выявляется эмперическим путем.
(7)Его не нужно уменьшать, т.к. он все равно потом будет увеличиваться.
Его можно уменьшить до такого размера, при котором не будет увеличения. В вашем случае, как я понял, это 80ГБ, т.е. в этот объем влазит весь необходимый вам документооборот без учета свертки.
(7) Физически уменьшать не имеет смысла. Если кардинально не режете базу сразу и надолго.
Если у базы есть резерв, то она просто не будет расти долгое время, пока не забьет все свободное место.
После удаления документов, просто будете знать, что на годик размер базы не увеличится и о свободном месте беспокоится не придется.
(9)В нашем случае база с 2003 года.
Сверстка не проводилась. Сверстку стали проводить по году, т.к. большой объем документов и небольшой промежуток времени на проведение операции.
(10) У нас была база с 2013 года. Выросла до 60Гб в 2019 году. Сделали проще, без всяких сверток.
Завели новую пустую базу и перенесли остатки. Все, размер базы теперь 8Гб.
(36)
от этого также много-чего зависит...но сейчас вам точно нужно настроить обслуживание базы по расписанию
и логи и базу в размерах пока не ограничивайте
(36)RAID-ы очень разные, хорошо, если там RAID10 и плохо, если RAID5.
Создавать RAID при малом количестве дисков - нужно очень хорошо взвесить все "за" и "против".
(30)Не нужно это делать, т.к. есть очень большая вероятность словить предупреждение о достижении максимального размера на каких-то массовых операциях типа перепроведения документов.
Проще шринкать файл журнала транзакций раз в час или реже.