Akonadi/Оновлення PostgreSQL

From KDE UserBase Wiki
This page is a translated version of the page Akonadi/Postgres update and the translation is 100% complete.
Other languages:

У цих настановах описано кроки, які слід виконати для оновлення вашої бази даних Akonadi, якщо ви користуєтеся сервером PostgreSQL.

Щоб скористатися цими настановами, вам потрібні будуть одночасно стара і нова версії PostgreSQL. Наведені нижче шляхи до програм є чинними для користувачів openSUSE. Ймовірно, вам слід адаптувати ці шлях до вашого дистрибутива.

Вам знадобляться програми initdb та pg_upgrade. Перш ніж виконувати наведені нижче настанови, переконайтеся, що ці програми встановлено. У openSUSE pg_upgrade є частиною пакунка postgresql-contrib.

Зупиніть роботу служб Akonadi

akonadictl stop

(дочекайтеся завершення роботи усіх процесів akonadi)

Створіть додаткову резервну копію

cp -R $HOME/.local/share/akonadi/db_data $HOME/.local/share/akonadi/db_data_10

Перейменуйте каталог бази даних Akonadi

mv $HOME/.local/share/akonadi/db_data $HOME/.local/share/akonadi/db_data_old

Створіть нову базу даних за допомогою виконуваного файла postgreSQL 11

/usr/lib/postgresql11/bin/initdb --pgdata=$HOME/.local/share/akonadi/db_data --locale=en_US.UTF-8

Попередження

НЕ змінюйте значення --locale.


Перевіте, чи безпечним є оновлення

/usr/lib/postgresql11/bin/pg_upgrade -b /usr/lib/postgresql10/bin -B /usr/lib/postgresql11/bin -d $HOME/.local/share/akonadi/db_data_old -D $HOME/.local/share/akonadi/db_data --check

Щоб дізнатися більше про цю програму, можете скористатися документацієюю до pg_upgrade.

Якщо pg_upgrade не буде виявлено проблем, ви зможете запустити оновлення бази даних за допомогою команди

/usr/lib/postgresql11/bin/pg_upgrade -b /usr/lib/postgresql10/bin -B /usr/lib/postgresql11/bin -d $HOME/.local/share/akonadi/db_data_old -D $HOME/.local/share/akonadi/db_data

Нарешті, запустіть akonadi

akonadictl start

і виконайте перевіку узгодженості

akonadictl fsck

Якщо усі ваші програми працюватимуть як слід, можете вилучити дві резервні копії, які ви раніше створили.

Додаткові відомості

  • openSUSE Leap 15.2: Akonadi не запускається після оновлення до PostgreSQL 12 із тим самим повідомленням, що і у https://bugs.archlinux.org/task/64562. Вирішення: встановіть PostgreSQL 11, зробіть його типовим (за допомогою update-alternatives) і оновіться до PostgreSQL 11.
  • Оновлення PostgreSQL (Вікі Arch linux)
  • Оновлення PostgreSQL (Офіційна документація з PostgreSQL)