Тормоза базы после загрузки бэкапа
Здравствуйте,
Сервер БД: Postgresql 9.6.1
Версия платформы 1С: 8.3.17.1549
OS - Linux Ubuntu Server 16.04 LTS
БД на SSD, 16GB RAM, Core i7
Предыстория: главбух пыталась сделать копию базы, сделала через конфигуратор бэкап *.dt и загрузила его же в "боевую", основную базу. Грубо говоря, пятничный бэкап залила в рабочую базу и затёрла изменения за понедельник, откатила, так сказать. После этого начались проблемы: жутко тормозит при "крупных" операциях, например, закрытие месяца. Если ранее процедура занимала 7-8 минут - сейчас же это всё дело занимает 3 часа, а то и больше. Ребята 1Сники, у которых мы обслуживаемся со своей стороны всё посмотрели, протестировали, проблему не выявили. Настала очередь админа.
Размер БД небольшой, 3828 MB.
Поковырялся в настройках PostgreSQL, привёл конфиг по рекомендации сервиса PGtune, эффекта не возымело.
Так как autovacuum выключен, решил оптимизировать через vacuum, размер БД уменьшился до 2828 MB. Но результат опять отрицательный.
Подскажите пожалуйста, в какую сторону копать.
Заранее премного благодарен.
Сервер БД: Postgresql 9.6.1
Версия платформы 1С: 8.3.17.1549
OS - Linux Ubuntu Server 16.04 LTS
БД на SSD, 16GB RAM, Core i7
Предыстория: главбух пыталась сделать копию базы, сделала через конфигуратор бэкап *.dt и загрузила его же в "боевую", основную базу. Грубо говоря, пятничный бэкап залила в рабочую базу и затёрла изменения за понедельник, откатила, так сказать. После этого начались проблемы: жутко тормозит при "крупных" операциях, например, закрытие месяца. Если ранее процедура занимала 7-8 минут - сейчас же это всё дело занимает 3 часа, а то и больше. Ребята 1Сники, у которых мы обслуживаемся со своей стороны всё посмотрели, протестировали, проблему не выявили. Настала очередь админа.
Размер БД небольшой, 3828 MB.
Поковырялся в настройках PostgreSQL, привёл конфиг по рекомендации сервиса PGtune, эффекта не возымело.
Так как autovacuum выключен, решил оптимизировать через vacuum, размер БД уменьшился до 2828 MB. Но результат опять отрицательный.
Подскажите пожалуйста, в какую сторону копать.
Заранее премного благодарен.
По теме из базы знаний
- Практика перехода на Linux и Postgres в небольшой компании (10 пользователей)
- Многопоточный CI-контур для 1С c Packer, Vagrant и Jenkins. Часть 1. Описание системы и обзор инструментария
- tempdb, почему она всё время растет?
- Как выжить разработке, когда прод переезжает на PostgreSQL
- Хронология работы со старой большой базой
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
А если пересоздать базу на постгрес и тудf залить dt
Предыстория: главбух пыталась сделать копию базы, сделала через конфигуратор бэкап *.dt и загрузила его же в "боевую", основную базу. Грубо говоря, пятничный бэкап залила в рабочую базу и затёрла изменения за понедельник, откатила, так сказать. После этого начались проблемы: жутко тормозит при "крупных" операциях, например, закрытие месяца. Если ранее процедура занимала 7-8 минут - сейчас же это всё дело занимает 3 часа, а то и больше. Ребята 1Сники, у которых мы обслуживаемся со своей стороны всё посмотрели, протестировали, проблему не выявили. Настала очередь админа.
А если пересоздать базу на постгрес и тудf залить dt
(1)
ограничить права на такие действия :
главбух пыталась сделать копию базы, сделала через конфигуратор бэкап *.dt и загрузила его же в "боевую", основную базу. Грубо говоря, пятничный бэкап залила в рабочую базу и затёрла изменения за понедельник, откатила, так сказать.
Подскажите пожалуйста, в какую сторону копать.
ограничить права на такие действия :
главбух пыталась сделать копию базы, сделала через конфигуратор бэкап *.dt и загрузила его же в "боевую", основную базу. Грубо говоря, пятничный бэкап залила в рабочую базу и затёрла изменения за понедельник, откатила, так сказать.
(6) спасибо, вернул назад, протюнил, не помогло.
Итоги пересчитал через конфигуратор.
Базу пропылесосил вакуумом: vacuumdb -U postgres --full --analyze --dbname=имя_бд
Вроде всё завершилось корректно, в консоли ошибок небыло, но всё по прежнему крайне долго.
(7) увы, в конфигуратор у неё доступ должен быть...
Итоги пересчитал через конфигуратор.
Базу пропылесосил вакуумом: vacuumdb -U postgres --full --analyze --dbname=имя_бд
Вроде всё завершилось корректно, в консоли ошибок небыло, но всё по прежнему крайне долго.
(7) увы, в конфигуратор у неё доступ должен быть...
просто заново пересчитали статистику.
Собственно в (2) об этом сказано.
После загрузки из dt, как и после загрузки дампа( pg_dump/pg-restore) статистику надо создать вручную, так как в выгрузках ее нет. vacuumdb --analyze имябазы, начиная с 9.5 редакции PostgreSQL этот процесс может выполняться параллельно в несколько потоков.
И включить autovacuum, так же нельзя.
Заодно и итоги посмотреть, может слетело что..
Собственно в (2) об этом сказано.
После загрузки из dt, как и после загрузки дампа( pg_dump/pg-restore) статистику надо создать вручную, так как в выгрузках ее нет. vacuumdb --analyze имябазы, начиная с 9.5 редакции PostgreSQL этот процесс может выполняться параллельно в несколько потоков.
И включить autovacuum, так же нельзя.
Заодно и итоги посмотреть, может слетело что..
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот