Skip to content

Instantly share code, notes, and snippets.

@rsyuzyov
Created May 11, 2023 11:18
Show Gist options
  • Select an option

  • Save rsyuzyov/9ae954ab4f75378c977aff85e1b74473 to your computer and use it in GitHub Desktop.

Select an option

Save rsyuzyov/9ae954ab4f75378c977aff85e1b74473 to your computer and use it in GitHub Desktop.
pg_upgrade
+1Создать в ЦБ и начать регистрацию изменений
+Сделать тонкий клон
+Проверить план в реплике
+Остановить старый кластер
+systemctl disable postgrespro-1c-11.service
+Поставить пг15 (https://github.com/rsyuzyov/work-on-linux/blob/master/postgresql/postgresql.md)
wget https://repo.postgrespro.ru/1c-15/keys/pgpro-repo-add.sh
sh pgpro-repo-add.sh
apt-get install postgrespro-1c-15-contrib -y
/opt/pgpro/1c-15/bin/pg-setup initdb --encoding=UTF8 --locale=ru_RU.UTF-8 --data-checksums
/opt/pgpro/1c-15/bin/pg-setup service enable
Кластер пока не запускаем
+su postgres
+cd ~
pg_upgrade:
Сначала делаем check:
/opt/pgpro/1c-15/bin/pg_upgrade -c --old-bindir=/opt/pgpro/1c-11/bin/ --new-bindir=/opt/pgpro/1c-15/bin/ --old-datadir=/var/lib/pgpro/1c-11/data/ --new-datadir=/var/lib/pgpro/1c-15/data/
Затем заменяем ключ -c на -k:
/opt/pgpro/1c-15/bin/pg_upgrade -k --old-bindir=/opt/pgpro/1c-11/bin/ --new-bindir=/opt/pgpro/1c-15/bin/ --old-datadir=/var/lib/pgpro/1c-11/data/ --new-datadir=/var/lib/pgpro/1c-15/data/
+Переписать ram-диск для temp на каталог pg15 в /etc/fstab
+reboot
+Обновить статистику и создать расширения:
/opt/pgpro/1c-15/bin/psql -f ~/update_extensions.sql
/opt/pgpro/1c-15/bin/vacuumdb --all --analyze-in-stages
Удалить старый кластер и дистрибутив pg11
./delete_old_cluster.sh
apt purge postgrespro-1c-11*
+В реплике поменять названия и коды узлов местами
+Опубликовать реплику на апаче
Догнать обмен
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment