Dans une boucle :
Pour finaliser la mise à niveau, reconstruisez à nouveau en utilisant : ./launcher rebuild app
Il doit me manquer quelque chose. Voici le journal complet. Merci pour toute aide.
root@discuss:/var/discourse# ./launcher rebuild app
Vérification que le lanceur est à jour
Récupération de l'origine
Le lanceur est à jour
Arrêt de l'ancien conteneur
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
Déjà à jour.
I, [2020-05-26T20:43:00.459915 #1] INFO -- : Chargement de --stdin
I, [2020-05-26T20:43:00.466076 #1] INFO -- : > locale-gen $LANG && update-locale
I, [2020-05-26T20:43:00.497010 #1] INFO -- : Génération des paramètres régionaux (cela peut prendre un certain temps)...
Génération terminée.
I, [2020-05-26T20:43:00.497661 #1] INFO -- : > mkdir -p /shared/postgres_run
I, [2020-05-26T20:43:00.500629 #1] INFO -- :
I, [2020-05-26T20:43:00.501124 #1] INFO -- : > chown postgres:postgres /shared/postgres_run
I, [2020-05-26T20:43:00.503417 #1] INFO -- :
I, [2020-05-26T20:43:00.503867 #1] INFO -- : > chmod 775 /shared/postgres_run
I, [2020-05-26T20:43:00.505796 #1] INFO -- :
I, [2020-05-26T20:43:00.506199 #1] INFO -- : > rm -fr /var/run/postgresql
I, [2020-05-26T20:43:00.508341 #1] INFO -- :
I, [2020-05-26T20:43:00.508752 #1] INFO -- : > ln -s /shared/postgres_run /var/run/postgresql
I, [2020-05-26T20:43:00.510785 #1] INFO -- :
I, [2020-05-26T20:43:00.511166 #1] INFO -- : > socat /dev/null UNIX-CONNECT:/shared/postgres_run/.s.PGSQL.5432 || exit 0 && echo postgres déjà en cours d'exécution, arrêter le conteneur ; exit 1
2020/05/26 20:43:00 socat[26] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36) : Aucun fichier ou répertoire de ce type
I, [2020-05-26T20:43:00.515245 #1] INFO -- :
I, [2020-05-26T20:43:00.515542 #1] INFO -- : > rm -fr /shared/postgres_run/.s*
I, [2020-05-26T20:43:00.518166 #1] INFO -- :
I, [2020-05-26T20:43:00.518509 #1] INFO -- : > rm -fr /shared/postgres_run/*.pid
I, [2020-05-26T20:43:00.520876 #1] INFO -- :
I, [2020-05-26T20:43:00.521215 #1] INFO -- : > mkdir -p /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-05-26T20:43:00.523438 #1] INFO -- :
I, [2020-05-26T20:43:00.523931 #1] INFO -- : > chown postgres:postgres /shared/postgres_run/12-main.pg_stat_tmp
I, [2020-05-26T20:43:00.526034 #1] INFO -- :
I, [2020-05-26T20:43:00.530519 #1] INFO -- : Fichier > /etc/service/postgres/run chmod : +x chown :
I, [2020-05-26T20:43:00.534602 #1] INFO -- : Fichier > /etc/service/postgres/log/run chmod : +x chown :
I, [2020-05-26T20:43:00.538528 #1] INFO -- : Fichier > /etc/runit/3.d/99-postgres chmod : +x chown :
I, [2020-05-26T20:43:00.542481 #1] INFO -- : Fichier > /root/upgrade_postgres chmod : +x chown :
I, [2020-05-26T20:43:00.542896 #1] INFO -- : > chown -R root /var/lib/postgresql/12/main
I, [2020-05-26T20:43:00.638174 #1] INFO -- :
I, [2020-05-26T20:43:00.638520 #1] INFO -- : > [ ! -e /shared/postgres_data ] && install -d -m 0755 -o postgres -g postgres /shared/postgres_data && sudo -E -u postgres /usr/lib/postgresql/12/bin/initdb -D /shared/postgres_data || exit 0
I, [2020-05-26T20:43:00.640938 #1] INFO -- :
I, [2020-05-26T20:43:00.641292 #1] INFO -- : > chown -R postgres:postgres /shared/postgres_data
I, [2020-05-26T20:43:00.672801 #1] INFO -- :
I, [2020-05-26T20:43:00.673456 #1] INFO -- : > chown -R postgres:postgres /var/run/postgresql
I, [2020-05-26T20:43:00.676098 #1] INFO -- :
I, [2020-05-26T20:43:00.676587 #1] INFO -- : > /root/upgrade_postgres
initdb : avertissement : activation de l'authentification « trust » pour les connexions locales
Vous pouvez modifier cela en éditant pg_hba.conf ou en utilisant l'option -A, ou
--auth-local et --auth-host, la prochaine fois que vous exécuterez initdb.
debconf : report de la configuration du paquet, car apt-utils n'est pas installé
mv : impossible de déplacer « /shared/postgres_data » vers « /shared/postgres_data_old/postgres_data » : Répertoire non vide
mv : impossible de déplacer « /shared/postgres_data_new » vers « /shared/postgres_data/postgres_data_new » : Répertoire non vide
I, [2020-05-26T20:43:15.530374 #1] INFO -- : Mise à niveau de PostgreSQL de la version 10 vers 12
Les fichiers appartenant à ce système de base de données seront propriété de l'utilisateur « postgres ».
Cet utilisateur doit également être propriétaire du processus serveur.
Le cluster de base de données sera initialisé avec le paramètre régional « en_US.UTF-8 ».
Le codage par défaut de la base de données a été défini en conséquence sur « UTF8 ».
La configuration de recherche textuelle par défaut sera définie sur « english ».
Les sommes de contrôle des pages de données sont désactivées.
Correction des permissions sur le répertoire existant /shared/postgres_data_new ... ok
Création des sous-répertoires ... ok
Sélection de l'implémentation de mémoire partagée dynamique ... posix
Sélection de max_connections par défaut ... 100
Sélection de shared_buffers par défaut ... 128 Mo
Sélection du fuseau horaire par défaut ... Etc/UTC
Création des fichiers de configuration ... ok
Exécution du script de bootstrap ... ok
Exécution de l'initialisation post-bootstrap ... ok
Synchronisation des données sur le disque ... ok
Succès. Vous pouvez maintenant démarrer le serveur de base de données en utilisant :
/usr/lib/postgresql/12/bin/pg_ctl -D /shared/postgres_data_new -l logfile start
Hit:1 http://deb.debian.org/debian buster InRelease
Get:2 http://security.debian.org/debian-security buster/updates InRelease [65,4 ko]
Get:3 http://deb.debian.org/debian buster-updates InRelease [49,3 ko]
Get:4 http://apt.postgresql.org/pub/repos/apt buster-pgdg InRelease [84,6 ko]
Get:5 http://security.debian.org/debian-security buster/updates/main amd64 Packages [201 ko]
Hit:6 https://deb.nodesource.com/node_10.x buster InRelease
Get:7 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 Packages [171 ko]
Récupération de 571 ko en 1 s (810 ko/s)
Lecture de la liste des paquets...
Lecture de la liste des paquets...
Construction de l'arbre des dépendances...
Lecture des informations d'état...
Les paquets supplémentaires suivants seront installés :
postgresql-client-10
Paquets suggérés :
postgresql-doc-10
Les paquets NOUVEAUX suivants seront installés :
postgresql-10 postgresql-client-10
0 mis à jour, 2 nouvellement installés, 0 à supprimer et 9 non mis à jour.
Nécessite de récupérer 6 390 ko d'archives.
Après cette opération, 30,6 Mo d'espace disque supplémentaires seront utilisés.
Get:1 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-client-10 amd64 10.13-1.pgdg100+1 [1 428 ko]
Get:2 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-10 amd64 10.13-1.pgdg100+1 [4 961 ko]
Récupération de 6 390 ko en 2 s (4 017 ko/s)
Sélection du paquet postgresql-client-10 précédemment non sélectionné.
(Lecture de la base de données ... 43929 fichiers et répertoires actuellement installés.)
Préparation du dépaquetage de .../postgresql-client-10_10.13-1.pgdg100+1_amd64.deb ...
Dépaquetage de postgresql-client-10 (10.13-1.pgdg100+1) ...
Sélection du paquet postgresql-10 précédemment non sélectionné.
Préparation du dépaquetage de .../postgresql-10_10.13-1.pgdg100+1_amd64.deb ...
Dépaquetage de postgresql-10 (10.13-1.pgdg100+1) ...
Configuration de postgresql-client-10 (10.13-1.pgdg100+1) ...
update-alternatives : avertissement : forcer la réinstallation de l'alternative /usr/share/postgresql/12/man/man1/psql.1.gz car le groupe de liens psql.1.gz est cassé
Configuration de postgresql-10 (10.13-1.pgdg100+1) ...
Création du nouveau cluster PostgreSQL 10/main ...
/usr/lib/postgresql/10/bin/initdb -D /var/lib/postgresql/10/main --auth-local peer --auth-host md5
Les fichiers appartenant à ce système de base de données seront propriété de l'utilisateur « postgres ».
Cet utilisateur doit également être propriétaire du processus serveur.
Le cluster de base de données sera initialisé avec le paramètre régional « C.UTF-8 ».
Le codage par défaut de la base de données a été défini en conséquence sur « UTF8 ».
La configuration de recherche textuelle par défaut sera définie sur « english ».
Les sommes de contrôle des pages de données sont désactivées.
Correction des permissions sur le répertoire existant /var/lib/postgresql/10/main ... ok
Création des sous-répertoires ... ok
Sélection de max_connections par défaut ... 100
Sélection de shared_buffers par défaut ... 128 Mo
Sélection du fuseau horaire par défaut ... Etc/UTC
Sélection de l'implémentation de mémoire partagée dynamique ... posix
Création des fichiers de configuration ... ok
Exécution du script de bootstrap ... ok
Exécution de l'initialisation post-bootstrap ... ok
Synchronisation des données sur le disque ... ok
Succès. Vous pouvez maintenant démarrer le serveur de base de données en utilisant :
pg_ctlcluster 10 main start
Avertissement : Le répertoire stats_temp_directory sélectionné /var/run/postgresql/10-main.pg_stat_tmp
n'est pas accessible en écriture pour le propriétaire du cluster. Ce paramètre n'est pas ajouté dans
postgresql.conf.
Ver Cluster Port Statut Propriétaire Répertoire de données Fichier journal
10 main 5433 arrêté postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
update-alternatives : avertissement : forcer la réinstallation de l'alternative /usr/share/postgresql/12/man/man1/postmaster.1.gz car le groupe de liens postmaster.1.gz est cassé
invoke-rc.d : impossible de déterminer le niveau d'exécution actuel
invoke-rc.d : policy-rc.d a refusé l'exécution du démarrage.
Traitement des déclencheurs pour postgresql-common (213.pgdg100+1) ...
Construction des dictionnaires PostgreSQL à partir des paquets myspell/hunspell installés...
Suppression des fichiers de dictionnaire obsolètes :
Arrêt du serveur de base de données PostgreSQL 10 : main.
Arrêt du serveur de base de données PostgreSQL 12 : main.
Exécution des vérifications de cohérence
-----------------------------
Vérification des versions des clusters ok
Vérification que l'utilisateur de la base de données est l'utilisateur d'installation ok
Vérification des paramètres de connexion à la base de données ok
Vérification des transactions préparées ok
Vérification des types de données reg* dans les tables utilisateur ok
Vérification de contrib/isn avec un décalage de passage bigint ok
Vérification des tables WITH OIDS ok
Vérification des colonnes utilisateur invalides « sql_identifier » ok
Création d'un dump des objets globaux ok
Création d'un dump des schémas de base de données
discourse
postgres
template1
ok
Vérification de la présence des bibliothèques requises ok
Vérification que l'utilisateur de la base de données est l'utilisateur d'installation ok
Vérification des transactions préparées ok
Si pg_upgrade échoue après ce point, vous devez réinitialiser le
nouveau cluster avant de continuer.
Exécution de la mise à niveau
------------------
Analyse de toutes les lignes dans le nouveau cluster ok
Gel de toutes les lignes dans le nouveau cluster ok
Suppression des fichiers du nouveau pg_xact ok
Copie de l'ancien pg_xact vers le nouveau serveur ok
Définition du prochain ID de transaction et de l'époque pour le nouveau cluster ok
Suppression des fichiers du nouveau pg_multixact/offsets ok
Copie de l'ancien pg_multixact/offsets vers le nouveau serveur ok
Suppression des fichiers du nouveau pg_multixact/members ok
Copie de l'ancien pg_multixact/members vers le nouveau serveur ok
Définition du prochain ID multixact et du décalage pour le nouveau cluster ok
Réinitialisation des archives WAL ok
Définition des compteurs frozenxid et minmxid dans le nouveau cluster ok
Restauration des objets globaux dans le nouveau cluster ok
Restauration des schémas de base de données dans le nouveau cluster
template1
discourse
postgres
ok
Copie des fichiers de relation utilisateur
/shared/postgres_data/base/16400/2613
/shared/postgres_data/base/16400/2683
/shared/postgres_data/base/16400/16728
/shared/postgres_data/base/16400/16728_fsm
/shared/postgres_data/base/16400/16728_vm
/shared/postgres_data/base/16400/16731
/shared/postgres_data/base/16400/84163
/shared/postgres_data/base/16400/84163_fsm
/shared/postgres_data/base/16400/84163_vm
……
ok
Définition du prochain OID pour le nouveau cluster ok
Synchronisation du répertoire de données sur le disque ok
Création du script pour analyser le nouveau cluster ok
Création du script pour supprimer l'ancien cluster ok
Mise à niveau terminée
----------------
Les statistiques de l'optimiseur ne sont pas transférées par pg_upgrade, donc,
une fois que vous avez démarré le nouveau serveur, envisagez d'exécuter :
./analyze_new_cluster.sh
L'exécution de ce script supprimera les fichiers de données de l'ancien cluster :
./delete_old_cluster.sh
-------------------------------------------------------------------------------------
MISE À NIVEAU DE POSTGRES TERMINÉE
L'ancienne base de données 10 est stockée dans /shared/postgres_data_old
Pour finaliser la mise à niveau, reconstruisez à nouveau en utilisant :
./launcher rebuild app
-------------------------------------------------------------------------------------