PostgreSQL 15 Update

Ich habe das Problem mit dem Upgrade von PostgreSQL 13 auf 15 gelöst. Nachdem ich den Server mit dem fehlgeschlagenen Upgrade aus Backups wiederhergestellt hatte, funktionierten die folgenden Schritte für mich mit einem PostgreSQL en_GB.UTF-8-Locale:

sudo -i
su - discourse
cd /var/discourse
git stash
git stash drop
git pull
./launcher stop app
docker run --rm \
    --entrypoint=/bin/bash \
    -e LANG='en_GB.UTF-8' \
    -v /var/discourse/shared/standalone/postgres_data:/var/lib/postgresql/13/data \
    -v /var/discourse/shared/standalone/postgres_data_new:/var/lib/postgresql/15/data \
    tianon/postgres-upgrade:13-to-15 \
    -c 'sed -i "s/^# $LANG/$LANG/" /etc/locale.gen && locale-gen &&
    apt-get update && apt-get install -y postgresql-13-pgvector postgresql-15-pgvector &&
    docker-upgrade'
exit
mv /var/discourse/shared/standalone/postgres_data /var/discourse/shared/standalone/postgres_data_old
mv /var/discourse/shared/standalone/postgres_data_new /var/discourse/shared/standalone/postgres_data
chown -R 101:104 /var/discourse/shared/standalone/postgres_data
su - discourse
cd /var/discourse
docker run --rm -v /var/discourse/shared/standalone:/shared \
local_discourse/app chown -R postgres:postgres /shared/postgres_data
./launcher rebuild app

Ich musste die lokalen Änderungen, die in der Vergangenheit für die PostgreSQL LANG vorgenommen wurden, mit git stash; git stash drop entfernen, und das Verschieben der PostgreSQL-Datenverzeichnisse musste als root erfolgen und ein chown war erforderlich.

5 „Gefällt mir“