Набор скриптов для знакомства с PostgreSQL

0. YPermitin 8983 04.11.19 22:30 Сейчас в теме
Немного скриптов для PostgreSQL, позволяющих познакомиться с состоянием сервера.

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. 3vs 05.11.19 06:11 Сейчас в теме
Юрий, подскажите правильную на Ваш взгляд методологию обновления конфигураций, к примеру Бухгалтерия 3 и Зарплата 3.1, работающих на PostgreSQL.

Я делаю так - обновляю конфигурацию конфигуратором, запускаю базу, чтобы всё принялось и обновилось, потом закрываю базу и останавливаю сервер предприятия и запускаю pgAdmin3 и в нём последовательно делаю "Обслуживание", сначала VACUUM с включенными флажками "FULL" и "ANALYZE", вопрос, для чего нужен флажок "FREEZE" и нужно ли его включать? Потом делаю "ANALYZE", потом "REINDEX", потом закрываю pgAdmin3, запускаю сервер предприятия и отдаю в работу.
Это правильно, или надо обслуживать базу как-то по другому?

Ещё вопрос, в пункте "Обслуживание" есть ещё ключ "CLUSTER" зачем он нужен и надо ли его запускать, если сервер в одном числе и лице и как сервер базы данных и как сервер предприятия?
2. YPermitin 8983 05.11.19 07:10 Сейчас в теме
(1) я бы не хотел касаться темы обслуживания, особенно здесь, в комментариях.

Тем более Ваши вопросы решаются чтением стандартной документации. Но пока сложилось впечатление, что Вы делайте это на всякий случай.
3. 3vs 05.11.19 07:25 Сейчас в теме
(2)Хотелось услышать мнение профессионалов в плане обслуживания баз 1С, работающих на PostgreSQL.
Но пока сложилось впечатление, что Вы делайте это на всякий случай.

Не, мнение сложилось правильное! :-)
Но, после этих телодвижений на старой железяке Бухгалтерия 3 заметно прибавляет в скорости работы!
4. 🅵🅾️🆇 466 05.11.19 22:52 Сейчас в теме
Здорово.
Попробуйте dBeaver или DataGrip

pgAdmin эт прям совсем ниачем.
5. YPermitin 8983 06.11.19 05:35 Сейчас в теме
(4) Спасибо! А Azure Data Studio пробовали?
9. 🅵🅾️🆇 466 06.11.19 09:01 Сейчас в теме
(5) Неа.
Был опыт только с dBeaver и DataGrip.
dBeaver - бесплатен и умеет огромное количество различных СУБД.

DataGrip - платен, а также встроен в продукты JetBrains и поставляется отдельной софтиной.
Былоб довольно удобно, еслиб пользовался средами разработки наших соотечественников.


Остановился на dBeaver, не охото заморачиваться с кряками, функционала хватает за глаза, а также:
choco install dbeaver
YPermitin; Fox-trot; +2 Ответить
10. YPermitin 8983 06.11.19 09:10 Сейчас в теме
(9) спасибо за развернутый ответ.

Попробую оба инструмента.
6. 3vs 06.11.19 05:43 Сейчас в теме
(4)У меня железо старое и PostgreSQL 9.4, pgAdmin хватает
для обслуживания.
Хотелось просто методологию правильного обновления базы 1С, работающей на PostgreSQL, чтобы производительность не снижалась.
YPermitin; +1 Ответить
7. 3vs 06.11.19 05:45 Сейчас в теме
(6)Извиняюсь, вопрос, видимо был Юрию, влез. :-)
8. 3vs 06.11.19 05:47 Сейчас в теме
Юрий, а может Вы дадите какую-нибудь статью по обслуживанию баз 1С,
работающих на PostgreSQL?
YPermitin; +1 Ответить
11. YPermitin 8983 06.11.19 09:26 Сейчас в теме
(8) я бы просто начал отсюда: https://postgrespro.ru/docs/postgrespro/9.5/maintenance

Можно и отдельную публикацию сделать на этот счет. :)
letarch; 3vs; +2 Ответить
12. 3vs 06.11.19 10:42 Сейчас в теме
(11)Да, можно и оттуда! :-)
Хочется рекомендаций профессионалов по обслуживанию PostgreSQL именно в связке с 1С.
Можно ли обойтись просто встроенными в платформу 1С средствами проверки и исправления базы, или оптимальней отключить сервер предприятия, чтобы не мешал и запустить обслуживание PostgreSQL своими средствами PostgreSQL, этапы обслуживания в этом случае.
Архивы у меня делаются скриптом средствами PostgreSQL, но пишут, что не факт, что то, что выгрузилось в архив, корректно загрузится обратно.
Вопрос восстановления базы из архивной копии PostgreSQL тоже бы можно осветить, как лучше это делать, грохнуть старую базу и восстановить на новое место или можно восстанавливать из архива прямо в существующую базу, тьф-тьфу, пока всё работает, из архивов базу восстанавливать пока не приходилось.
Я, правда, ещё делаю контрольный выстрел - перед обновлением ещё базу и в DT выгружаю руками средствами конфигуратора.

Будет время и желание на этот счёт, черкните для крестьянских детей вроде меня статейку! :-)
15. letarch 06.11.19 15:35 Сейчас в теме
(11) да, было бы очень интересно почитать всем, а то сейчас никак не победим "тормоза" 1с в крохотной 70+Гб базе :-(
13. Gorus 45 06.11.19 11:48 Сейчас в теме
Дополню скриптами по управлению соединениями:

1. Закрытие всех активных подключений к базе DBName:
SELECT pg_terminate_backend(pg_stat_activity.pid)
FROM pg_stat_activity
WHERE pg_stat_activity.datname = 'DBName' AND pid <> pg_backend_pid();


2. Закрываем определенное соединение (pid берем из списка соединений):
SELECT pg_terminate_backend(pid);


3. Запрещаем новые соединения к базе DBName
UPDATE pg_database SET datallowconn = 'false' WHERE datname = 'DBName';


4. Разрешаем новые соединения к базе DBName
UPDATE pg_database SET datallowconn = 'true' WHERE datname = 'DBName';
3vs; YPermitin; +2 Ответить
14. YPermitin 8983 06.11.19 11:51 Сейчас в теме
(13) спасибо!

Сохраню в свою коллекцию.
16. Xershi 1001 14.05.20 10:48 Сейчас в теме
(13) у меня похожим образом был 1 клиент. Делали ночную копию и базу для разработки.
На винде запускаю батник, который запускает скрипт на линуксе. 6-7 шагов.
Блочим соединения, выкидываем пользователей, делаем бекап рабочей базы в архив, копируем из архива в нашу базу, открываем доступ.
17. w.r. 582 15.05.20 20:05 Сейчас в теме
18. SanchoD 192 23.06.20 09:22 Сейчас в теме
Подскажите, где в PostgreSQL хранится таблица с основной конфигурацией и конфигурацией базы данных?
Так получилось, что база при обновлении рухнула. Хочу сделать по аналогии с MSSQL, но не нахожу такие таблицы.
Оставьте свое сообщение
Вопросы с вознаграждением