Ошибка заданий статистики, ребилда и реиндекса MS SQL баз 1С после обновления: различия между версиями
Материал из iSphinx Home Wiki
Нет описания правки |
Нет описания правки |
||
(не показано 14 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
В результате каких-то обновлений конфигурации или платформы (привет 1С) в базах 1С SQL снялись очень нужные права на индексы ... Точнее - права на блокировку ... Как результат, всё обслуживание по реиндексации баз и пересчету статистики ушло в Валгаллу ... Восстанавливать тысячи индексов по одному? Идите в пень, мне столько не платят ... | |||
EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_PAGE_LOCKS = ON)' | |||
EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_ROW_LOCKS= ON)' | А что бывает с базами 1С со временем без статистики и кривыми индексами? Базы становятся медленными и печальными, юзвери медитируют на колесико загрузки, потребление чая и кофе возрастает ... | ||
GO | |||
Это для понимания масштаба проблемы, подкинутой 1С. Но. Достаточно пробежаться по каждой базе этим скриптом. | |||
'''USE [имя базы] | |||
'''EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_PAGE_LOCKS = ON)' | |||
'''EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_ROW_LOCKS = ON)' ''' | |||
'''GO | |||
И всё, ваши индексы снова разблокированы ... | |||
[[Категория:1С]] | [[Категория:1С]] | ||
[[Категория:SQL]] |
Текущая версия от 07:23, 7 июня 2024
В результате каких-то обновлений конфигурации или платформы (привет 1С) в базах 1С SQL снялись очень нужные права на индексы ... Точнее - права на блокировку ... Как результат, всё обслуживание по реиндексации баз и пересчету статистики ушло в Валгаллу ... Восстанавливать тысячи индексов по одному? Идите в пень, мне столько не платят ...
А что бывает с базами 1С со временем без статистики и кривыми индексами? Базы становятся медленными и печальными, юзвери медитируют на колесико загрузки, потребление чая и кофе возрастает ...
Это для понимания масштаба проблемы, подкинутой 1С. Но. Достаточно пробежаться по каждой базе этим скриптом.
USE [имя базы] EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_PAGE_LOCKS = ON)' EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? SET (ALLOW_ROW_LOCKS = ON)' GO
И всё, ваши индексы снова разблокированы ...