In un ciclo di:
Per completare l'aggiornamento, ricostruisci nuovamente utilizzando: ./launcher rebuild app
Devo aver dimenticato qualcosa. Log completo di seguito. Apprezzo qualsiasi aiuto.
root@discuss:/var/discourse# ./launcher rebuild app
Assicurazione che il launcher sia aggiornato
Recupero di origin
Il launcher è aggiornato
Arresto del vecchio contenitore
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
Già aggiornato.
I, [2020-05-26T20:43:00.459915 #1] INFO -- : Caricamento di --stdin
I, [2020-05-26T20:43:00.466076 #1] INFO -- : > locale-gen $LANG && update-locale
I, [2020-05-26T20:43:00.497010 #1] INFO -- : Generazione delle impostazioni locali (questo potrebbe richiedere del tempo)...
Generazione completata.
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 già in esecuzione, arresta il contenitore ; exit 1
2020/05/26 20:43:00 socat[26] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): File o directory non esistente
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 -- : File > /etc/service/postgres/run chmod: +x chown:
I, [2020-05-26T20:43:00.534602 #1] INFO -- : File > /etc/service/postgres/log/run chmod: +x chown:
I, [2020-05-26T20:43:00.538528 #1] INFO -- : File > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2020-05-26T20:43:00.542481 #1] INFO -- : File > /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: avviso: abilitata l'autenticazione "trust" per le connessioni locali
Puoi modificare questo impostando pg_hba.conf o utilizzando l'opzione -A, o
--auth-local e --auth-host, la prossima volta che esegui initdb.
debconf: ritardo della configurazione del pacchetto, poiché apt-utils non è installato
mv: impossibile spostare '/shared/postgres_data' in '/shared/postgres_data_old/postgres_data': Directory non vuota
mv: impossibile spostare '/shared/postgres_data_new' in '/shared/postgres_data/postgres_data_new': Directory non vuota
I, [2020-05-26T20:43:15.530374 #1] INFO -- : Aggiornamento di PostgreSQL dalla versione 10 alla 12
I file appartenenti a questo sistema di database saranno di proprietà dell'utente "postgres".
Questo utente deve anche possedere il processo del server.
Il cluster del database verrà inizializzato con le impostazioni locali "en_US.UTF-8".
La codifica predefinita del database è stata di conseguenza impostata su "UTF8".
La configurazione predefinita di ricerca testuale sarà impostata su "english".
I checksum delle pagine dei dati sono disabilitati.
Correzione dei permessi sulla directory esistente /shared/postgres_data_new ... ok
Creazione delle sottodirectory ... ok
Selezione dell'implementazione della memoria condivisa dinamica ... posix
Selezione del valore predefinito di max_connections ... 100
Selezione del valore predefinito di shared_buffers ... 128MB
Selezione del fuso orario predefinito ... Etc/UTC
Creazione dei file di configurazione ... ok
Esecuzione dello script di bootstrap ... ok
Esecuzione dell'inizializzazione post-bootstrap ... ok
Sincronizzazione dei dati su disco ... ok
Successo. Ora puoi avviare il server del database utilizzando:
/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 kB]
Get:3 http://deb.debian.org/debian buster-updates InRelease [49.3 kB]
Get:4 http://apt.postgresql.org/pub/repos/apt buster-pgdg InRelease [84.6 kB]
Get:5 http://security.debian.org/debian-security buster/updates/main amd64 Packages [201 kB]
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 kB]
Scaricati 571 kB in 1s (810 kB/s)
Lettura degli elenchi dei pacchetti...
Lettura degli elenchi dei pacchetti...
Costruzione dell'albero delle dipendenze...
Lettura delle informazioni sullo stato...
I seguenti pacchetti aggiuntivi saranno installati:
postgresql-client-10
Pacchetti suggeriti:
postgresql-doc-10
I seguenti NUOVI pacchetti saranno installati:
postgresql-10 postgresql-client-10
0 aggiornati, 2 nuovi installati, 0 da rimuovere e 9 non aggiornati.
Necessari 6.390 kB di archivi.
Dopo questa operazione, saranno utilizzati 30.6 MB di spazio su disco aggiuntivo.
Get:1 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-client-10 amd64 10.13-1.pgdg100+1 [1.428 kB]
Get:2 http://apt.postgresql.org/pub/repos/apt buster-pgdg/main amd64 postgresql-10 amd64 10.13-1.pgdg100+1 [4.961 kB]
Scaricati 6.390 kB in 2s (4.017 kB/s)
Selezione del pacchetto precedentemente non selezionato postgresql-client-10.
(Lettura del database ... 43929 file e directory attualmente installati.)
Preparazione per lo unpacking di .../postgresql-client-10_10.13-1.pgdg100+1_amd64.deb ...
Unpacking postgresql-client-10 (10.13-1.pgdg100+1) ...
Selezione del pacchetto precedentemente non selezionato postgresql-10.
Preparazione per lo unpacking di .../postgresql-10_10.13-1.pgdg100+1_amd64.deb ...
Unpacking postgresql-10 (10.13-1.pgdg100+1) ...
Impostazione di postgresql-client-10 (10.13-1.pgdg100+1) ...
update-alternatives: avviso: forzatura della reinstallazione dell'alternativa /usr/share/postgresql/12/man/man1/psql.1.gz perché il gruppo di collegamenti psql.1.gz è rotto
Impostazione di postgresql-10 (10.13-1.pgdg100+1) ...
Creazione del nuovo cluster PostgreSQL 10/main ...
/usr/lib/postgresql/10/bin/initdb -D /var/lib/postgresql/10/main --auth-local peer --auth-host md5
I file appartenenti a questo sistema di database saranno di proprietà dell'utente "postgres".
Questo utente deve anche possedere il processo del server.
Il cluster del database verrà inizializzato con le impostazioni locali "C.UTF-8".
La codifica predefinita del database è stata di conseguenza impostata su "UTF8".
La configurazione predefinita di ricerca testuale sarà impostata su "english".
I checksum delle pagine dei dati sono disabilitati.
Correzione dei permessi sulla directory esistente /var/lib/postgresql/10/main ... ok
Creazione delle sottodirectory ... ok
Selezione del valore predefinito di max_connections ... 100
Selezione del valore predefinito di shared_buffers ... 128MB
Selezione del fuso orario predefinito ... Etc/UTC
Selezione dell'implementazione della memoria condivisa dinamica ... posix
Creazione dei file di configurazione ... ok
Esecuzione dello script di bootstrap ... ok
Esecuzione dell'inizializzazione post-bootstrap ... ok
Sincronizzazione dei dati su disco ... ok
Successo. Ora puoi avviare il server del database utilizzando:
pg_ctlcluster 10 main start
Avviso: La directory stats_temp_directory selezionata /var/run/postgresql/10-main.pg_stat_tmp
non è scrivibile per il proprietario del cluster. Questa impostazione non verrà aggiunta in
postgresql.conf.
Ver Cluster Port Status Owner Data directory Log file
10 main 5433 down postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
update-alternatives: avviso: forzatura della reinstallazione dell'alternativa /usr/share/postgresql/12/man/man1/postmaster.1.gz perché il gruppo di collegamenti postmaster.1.gz è rotto
invoke-rc.d: impossibile determinare il livello di esecuzione corrente
invoke-rc.d: policy-rc.d ha negato l'esecuzione dell'avvio.
Elaborazione dei trigger per postgresql-common (213.pgdg100+1) ...
Costruzione dei dizionari PostgreSQL dai pacchetti myspell/hunspell installati...
Rimozione dei file del dizionario obsoleti:
Arresto del server del database PostgreSQL 10: main.
Arresto del server del database PostgreSQL 12: main.
Esecuzione dei controlli di coerenza
-----------------------------
Controllo delle versioni dei cluster ok
Controllo che l'utente del database sia l'utente di installazione ok
Controllo delle impostazioni di connessione del database ok
Controllo delle transazioni preparate ok
Controllo dei tipi di dati reg* nelle tabelle utente ok
Controllo di contrib/isn con mismatch nel passaggio di bigint ok
Controllo delle tabelle WITH OIDS ok
Controllo delle colonne utente "sql_identifier" non valide ok
Creazione del dump degli oggetti globali ok
Creazione del dump degli schemi del database
discourse
postgres
template1
ok
Controllo della presenza delle librerie richieste ok
Controllo che l'utente del database sia l'utente di installazione ok
Controllo delle transazioni preparate ok
Se pg_upgrade fallisce dopo questo punto, dovrai reinizializzare il
nuovo cluster prima di continuare.
Esecuzione dell'aggiornamento
------------------
Analisi di tutte le righe nel nuovo cluster ok
Congelamento di tutte le righe nel nuovo cluster ok
Eliminazione dei file dal nuovo pg_xact ok
Copia del vecchio pg_xact nel nuovo server ok
Impostazione del prossimo ID di transazione ed epoca per il nuovo cluster ok
Eliminazione dei file dal nuovo pg_multixact/offsets ok
Copia del vecchio pg_multixact/offsets nel nuovo server ok
Eliminazione dei file dal nuovo pg_multixact/members ok
Copia del vecchio pg_multixact/members nel nuovo server ok
Impostazione del prossimo ID multixact e offset per il nuovo cluster ok
Reset degli archivi WAL ok
Impostazione dei contatori frozenxid e minmxid nel nuovo cluster ok
Ripristino degli oggetti globali nel nuovo cluster ok
Ripristino degli schemi del database nel nuovo cluster
template1
discourse
postgres
ok
Copia dei file delle relazioni utente
/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
Impostazione del prossimo OID per il nuovo cluster ok
Sincronizzazione della directory dei dati su disco ok
Creazione dello script per analizzare il nuovo cluster ok
Creazione dello script per eliminare il vecchio cluster ok
Aggiornamento completato
----------------
Le statistiche dell'ottimizzatore non vengono trasferite da pg_upgrade, quindi,
una volta avviato il nuovo server, considera di eseguire:
./analyze_new_cluster.sh
L'esecuzione di questo script eliminerà i file dei dati del vecchio cluster:
./delete_old_cluster.sh
-------------------------------------------------------------------------------------
AGGIORNAMENTO DI POSTGRES COMPLETATO
Il vecchio database 10 è memorizzato in /shared/postgres_data_old
Per completare l'aggiornamento, ricostruisci nuovamente utilizzando:
./launcher rebuild app
-------------------------------------------------------------------------------------