Назад | Перейти на главную страницу

Администратор баз данных, которого беспокоит реорганизация и восстановление индексов, может привести к потере данных?

У нас есть базы данных с фрагментацией индекса> 95%. Насколько я могу судить, индексы никогда не перестраивались, тем более реорганизовывались. Годами.

(Честно говоря, в этих таблицах действительно включена автоматически обновляемая статистика. Честно говоря, он внимательно относится к резервным копиям: полные ежедневные и ежечасные журналы trx.)

Когда я спросил, администратор базы данных сказал, что он не хочет перестраивать или реорганизовывать индексы. Когда я спросил, почему, он не смог четко сформулировать это. В конце концов он сказал, что обеспокоен возможной потерей данных. Например, одна из баз данных используется нашим бухгалтерским приложением Great Plains Dynamics, и он, похоже, очень обеспокоился этим.

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

Я не уверен, что делать дальше. Предложения, как мне действовать?

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

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

Нет риска потери данных из-за восстановления или дефрагментации индексов.

Реорганизация индексов займет меньше времени и усилий со стороны SQL-сервера, поэтому их можно выполнять в экземплярах типа «будние ночи». Если вы говорите правду, даже реорганизация индексов, которой никогда не было, также может оказать большее влияние на сервер. Восстановление индексов потребует от сервера SQL значительных усилий, поскольку они отбрасываются и восстанавливаются. Выполнение перестройки в будний вечер не стоит риска того, что сервер будет занят индексами и не будет обслуживать людей, которые его используют.

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