ISPManager 5 - смена версии PostgreSQL на 10 версию после установки панели на CentOS 7
Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
ISPManager 5 - смена версии PostgreSQL на 10 версию после установки панели на CentOS 7
Задача - сразу после установки ISPManager 5 - удалить старый PostgreSQL 9.2 и установить PostgreSQL 10 на CentOS 7.
Алгоритм замены версии ниже.
1) Проверяем какие пакеты сейчас стоят и удаляем их без зависимостей:
# rpm -qa | grep postgresql | grep 9 postgresql-server-9.2.24-4.el7_8.x86_64 postgresql-9.2.24-4.el7_8.x86_64 postgresql-libs-9.2.24-4.el7_8.x86_64 # systemctl stop postgresql # rpm -e --nodeps postgresql-server-9.2.24-4.el7_8.x86_64 postgresql-9.2.24-4.el7_8.x86_64 postgresql-libs-9.2.24-4.el7_8.x86_64
2) Подключаем репозиторий с PostgreSQL 10, делаем установку PostgreSQL 10 и инициализируем создание системным данных и баз:
# rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm # yum install postgresql10-server.x86_64 postgresql10-libs.x86_64 postgresql10.x86_64 postgresql10-contrib.x86_64 # /usr/pgsql-10/bin/postgresql-10-setup initdb Initializing database ... OK
Проверяем директорию с базами PostgreSQL:
# ls /var/lib/pgsql/10/data/ base log pg_hba.conf pg_multixact pg_serial pg_stat_tmp pg_twophase pg_xact postmaster.opts current_logfiles pg_commit_ts pg_ident.conf pg_notify pg_snapshots pg_subtrans PG_VERSION postgresql.auto.conf postmaster.pid global pg_dynshmem pg_logical pg_replslot pg_stat pg_tblspc pg_wal postgresql.conf
3) Добавляем в корневой конфиг файл оболочки bash пользователя postgres - /var/lib/pgsql/.bash_profile - новые пути к бинарникам PostgreSQL 10 и перезапускам, добавляем PostgreSQL 10 в автозагрузку:
# egrep PATH /var/lib/pgsql/.bash_profile export PATH=/usr/pgsql-10/bin:$PATH # systemctl start postgresql-10.service # systemctl enable postgresql-10.service
Проверяем версию PostgreSQL:
# su - postgres -c "psql" psql (10.13) Type "help" for help.
4) Меняем конфиги для ISPManager 5 (пакет ispmanager-pkg-postgresql)
# rpm -ql ispmanager-pkg-postgresql-5.254.0-1.el7.x86_64 /usr/local/mgr5/etc/conf.d/postgresql.conf
Меняем
# cat /usr/local/mgr5/etc/conf.d/postgresql.conf path pgvacuum /usr/bin/vacuumdb path pgctl service postgresql path pghbaconf /var/lib/pgsql/data/pg_hba.conf path postgresql_restart service postgresql restart path postgresql_reload service postgresql reload path postgresql.conf /var/lib/pgsql/data/postgresql.conf
на
# cat /usr/local/mgr5/etc/conf.d/postgresql.conf path pgvacuum /usr/pgsql-10/bin/vacuumdb path pgctl service postgresql-10 path pghbaconf /var/lib/pgsql/10/data/pg_hba.conf path postgresql_restart service postgresql-10 restart path postgresql_reload service postgresql-10 reload path postgresql.conf /var/lib/pgsql/10/data/postgresql.conf
и перезапускаем панель ISPManager 5
# killall -9 core