Резервное копирование, обновление, установка: PostgreSQL 11.4 до 14.9

Обновлено: 21 августа, 2024

Обновление PostgreSQL до более новой версии необходимо для поддержания оптимальной производительности, повышения безопасности и доступа к последним функциям. Этот гид предоставляет детальное руководство по обновлению PostgreSQL с версии 11.4 до версии 14.9, охватывая необходимые шаги, такие как резервное копирование данных, подготовка, выполнение обновления и проверка результатов.

Резервное копирование данных

Перед началом любых изменений крайне важно сделать резервное копирование существующих данных PostgreSQL. Эта мера предосторожности гарантирует, что у вас будет страховка на случай возникновения проблем в процессе обновления.

Использование pg_dumpall:

pg_dumpall > all_databases_backup.sql

Если доступен pgBackRest:

pgbackrest --stanza=main --type=full backup

Эти команды создают полное резервное копирование ваших текущих баз данных, что будет бесценно, если вам потребуется восстановить данные позже.

Проверка текущей версии PostgreSQL

Проверьте версию вашей текущей установки PostgreSQL, чтобы убедиться, что это версия 11.4. Используйте следующую команду:

select version();

Пример вывода:

PostgreSQL 11.4 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.4.1 20230605 (Red Hat 11.4.1-3), 64-bit

Если ваша база данных пуста или вы хотите протестировать процесс обновления, рассмотрите возможность создания тестовых баз данных и таблиц:


create database oz;
c oz --connect database with psql
create schema company;
create table company.customer (name varchar(10), surname varchar(10), number integer);
insert into company.customer (name, surname, number) values ('kemal', 'oz', 12), ('ali', 'oz', 13);
select * from company.customer;

Скачивание и установка обновленного пакета PostgreSQL

Для обновления до PostgreSQL 14 скачайте и установите новую версию. Для бинарных установок используйте следующие команды:

sudo dnf install -y postgresql14-server postgresql14-contrib

Для установок из исходного кода обратитесь к официальному сайту PostgreSQL для инструкций по сборке PostgreSQL из исходного кода. Также может быть полезно прочитать Installing Postgres from Source Code.

После установки создайте новый каталог данных:

mkdir /pg_data/DATA_NEW/

Инициализируйте новый каталог данных PostgreSQL:

/usr/pgsql-14/bin/initdb -D /pg_data/DATA_NEW/

Запустите новый экземпляр PostgreSQL:

/usr/pgsql-14/bin/pg_ctl -D /pg_data/DATA_NEW/ start

Остановка службы PostgreSQL

Для выполнения обновления остановите как старую, так и новую службы PostgreSQL:

/usr/pgsql-14/bin/pg_ctl -D /pg_data/DATA_NEW/ stop
/pg_data/11.4/bin/pg_ctl -D /pg_data/DATA stop

Выполнение обновления с использованием pg_upgrade

PostgreSQL предлагает инструмент pg_upgrade для обновления баз данных с более старой версии на новую. Этот инструмент обеспечивает совместимость ваших старых данных с новой версией PostgreSQL. Выполните pg_upgrade с помощью следующей команды:

pgbackrest --stanza=main --type=full backup

Перезапуск службы PostgreSQL

После завершения обновления перезапустите службу PostgreSQL с новой версией:

/usr/pgsql-14/bin/pg_ctl -D /pg_data/DATA_NEW/ start

Проверка и очистка

Проверьте версию PostgreSQL, чтобы убедиться, что обновление прошло успешно:

select version();

Убедитесь, что ваши базы данных и таблицы в порядке:

pgbackrest --stanza=main --type=full backup

Выполнение пост-обновления обслуживания

Запустите вакуум на всех базах данных для оптимизации их производительности после обновления.

Опубликовано: 21 августа, 2024

ЕЩЕ СТАТЬИ ПО ДАННОЙ ТЕМЕ

Поддержка Postgre SQL

Поддержка — это когда у вас возникает техническая
проблема с существующей системой,
и вам необходимо некоторое руководство