En un bucle de:
Para completar la actualización, vuelve a compilar usando: ./launcher rebuild app
Debo estar perdiendo algo. El registro completo a continuación. Agradezco cualquier ayuda.
root@discuss:/var/discourse# ./launcher rebuild app
Asegurando que el lanzador esté actualizado
Obteniendo origen
El lanzador está actualizado
Deteniendo el contenedor antiguo
+ /usr/bin/docker stop -t 60 app
app
cd /pups && git pull && /pups/bin/pups --stdin
Ya está actualizado.
I, [2020-05-26T20:43:00.459915 #1] INFO -- : Cargando --stdin
I, [2020-05-26T20:43:00.466076 #1] INFO -- : > locale-gen $LANG && update-locale
I, [2020-05-26T20:43:00.497010 #1] INFO -- : Generando configuraciones regionales (esto puede tardar un momento)...
Generación completada.
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 ya se está ejecutando, detén el contenedor ; exit 1
2020/05/26 20:43:00 socat[26] E connect(6, AF=1 "/shared/postgres_run/.s.PGSQL.5432", 36): No existe el archivo o directorio
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 -- : Archivo > /etc/service/postgres/run chmod: +x chown:
I, [2020-05-26T20:43:00.534602 #1] INFO -- : Archivo > /etc/service/postgres/log/run chmod: +x chown:
I, [2020-05-26T20:43:00.538528 #1] INFO -- : Archivo > /etc/runit/3.d/99-postgres chmod: +x chown:
I, [2020-05-26T20:43:00.542481 #1] INFO -- : Archivo > /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: advertencia: habilitando la autenticación «trust» para conexiones locales
Puedes cambiar esto editando pg_hba.conf o usando la opción -A, o
--auth-local y --auth-host, la próxima vez que ejecutes initdb.
debconf: retrasando la configuración del paquete, ya que apt-utils no está instalado
mv: no se puede mover '/shared/postgres_data' a '/shared/postgres_data_old/postgres_data': El directorio no está vacío
mv: no se puede mover '/shared/postgres_data_new' a '/shared/postgres_data/postgres_data_new': El directorio no está vacío
I, [2020-05-26T20:43:15.530374 #1] INFO -- : Actualizando PostgreSQL de la versión 10 a la 12
Los archivos que pertenecen a este sistema de base de datos serán propiedad del usuario «postgres».
Este usuario también debe ser el propietario del proceso del servidor.
El clúster de bases de datos se inicializará con la configuración regional «en_US.UTF-8».
La codificación predeterminada de la base de datos se ha establecido en consecuencia como «UTF8».
La configuración predeterminada de búsqueda de texto se establecerá en «inglés».
Las sumas de verificación de las páginas de datos están desactivadas.
corrigiendo permisos en el directorio existente /shared/postgres_data_new ... ok
creando subdirectorios ... ok
seleccionando implementación de memoria compartida dinámica ... posix
seleccionando max_connections predeterminado ... 100
seleccionando shared_buffers predeterminado ... 128MB
seleccionando zona horaria predeterminada ... Etc/UTC
creando archivos de configuración ... ok
ejecutando script de arranque ... ok
realizando inicialización posterior al arranque ... ok
sincronizando datos en el disco ... ok
Éxito. Ahora puedes iniciar el servidor de bases de datos usando:
/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]
Se han obtenido 571 kB en 1s (810 kB/s)
Leyendo listas de paquetes...
Leyendo listas de paquetes...
Construyendo árbol de dependencias...
Leyendo información de estado...
Se instalarán los siguientes paquetes adicionales:
postgresql-client-10
Paquetes sugeridos:
postgresql-doc-10
Se instalarán los siguientes paquetes NUEVOS:
postgresql-10 postgresql-client-10
0 actualizados, 2 nuevos para instalar, 0 para eliminar y 9 no actualizados.
Es necesario descargar 6.390 kB de archivos.
Después de esta operación, se utilizarán 30.6 MB adicionales de espacio en el disco.
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]
Se han obtenido 6.390 kB en 2s (4.017 kB/s)
Seleccionando el paquete previamente no seleccionado postgresql-client-10.
(Leyendo la base de datos ... 43929 archivos y directorios actualmente instalados.)
Preparando para desempaquetar .../postgresql-client-10_10.13-1.pgdg100+1_amd64.deb ...
Desempaquetando postgresql-client-10 (10.13-1.pgdg100+1) ...
Seleccionando el paquete previamente no seleccionado postgresql-10.
Preparando para desempaquetar .../postgresql-10_10.13-1.pgdg100+1_amd64.deb ...
Desempaquetando postgresql-10 (10.13-1.pgdg100+1) ...
Configurando postgresql-client-10 (10.13-1.pgdg100+1) ...
update-alternatives: advertencia: forzando la reinstalación de la alternativa /usr/share/postgresql/12/man/man1/psql.1.gz porque el grupo de enlaces psql.1.gz está roto
Configurando postgresql-10 (10.13-1.pgdg100+1) ...
Creando nuevo clúster de PostgreSQL 10/main ...
/usr/lib/postgresql/10/bin/initdb -D /var/lib/postgresql/10/main --auth-local peer --auth-host md5
Los archivos que pertenecen a este sistema de base de datos serán propiedad del usuario «postgres».
Este usuario también debe ser el propietario del proceso del servidor.
El clúster de bases de datos se inicializará con la configuración regional «C.UTF-8».
La codificación predeterminada de la base de datos se ha establecido en consecuencia como «UTF8».
La configuración predeterminada de búsqueda de texto se establecerá en «inglés».
Las sumas de verificación de las páginas de datos están desactivadas.
corrigiendo permisos en el directorio existente /var/lib/postgresql/10/main ... ok
creando subdirectorios ... ok
seleccionando max_connections predeterminado ... 100
seleccionando shared_buffers predeterminado ... 128MB
seleccionando zona horaria predeterminada ... Etc/UTC
seleccionando implementación de memoria compartida dinámica ... posix
creando archivos de configuración ... ok
ejecutando script de arranque ... ok
realizando inicialización posterior al arranque ... ok
sincronizando datos en el disco ... ok
Éxito. Ahora puedes iniciar el servidor de bases de datos usando:
pg_ctlcluster 10 main start
Advertencia: El directorio stats_temp_directory seleccionado /var/run/postgresql/10-main.pg_stat_tmp
no es escribible para el propietario del clúster. No se agregará esta configuración en
postgresql.conf.
Ver Cluster Puerto Estado Propietario Directorio de datos Archivo de registro
10 main 5433 apagado postgres /var/lib/postgresql/10/main /var/log/postgresql/postgresql-10-main.log
update-alternatives: advertencia: forzando la reinstalación de la alternativa /usr/share/postgresql/12/man/man1/postmaster.1.gz porque el grupo de enlaces postmaster.1.gz está roto
invoke-rc.d: no se pudo determinar el nivel de ejecución actual
invoke-rc.d: policy-rc.d denegó la ejecución de start.
Procesando desencadenantes para postgresql-common (213.pgdg100+1) ...
Construyendo diccionarios de PostgreSQL a partir de los paquetes myspell/hunspell instalados...
Eliminando archivos de diccionario obsoletos:
Deteniendo el servidor de bases de datos PostgreSQL 10: main.
Deteniendo el servidor de bases de datos PostgreSQL 12: main.
Realizando comprobaciones de coherencia
-----------------------------
Comprobando versiones de clústeres ok
Comprobando que el usuario de la base de datos es el usuario de instalación ok
Comprobando configuración de conexión de la base de datos ok
Comprobando transacciones preparadas ok
Comprobando tipos de datos reg* en tablas de usuario ok
Comprobando contrib/isn con discrepancia en paso de bigint ok
Comprobando tablas WITH OIDS ok
Comprobando columnas de usuario «sql_identifier» inválidas ok
Creando volcado de objetos globales ok
Creando volcado de esquemas de bases de datos
discourse
postgres
template1
ok
Comprobando presencia de bibliotecas requeridas ok
Comprobando que el usuario de la base de datos es el usuario de instalación ok
Comprobando transacciones preparadas ok
Si pg_upgrade falla después de este punto, debes reinicializar el
nuevo clúster antes de continuar.
Realizando actualización
------------------
Analizando todas las filas en el nuevo clúster ok
Congelando todas las filas en el nuevo clúster ok
Eliminando archivos de nuevo pg_xact ok
Copiando antiguo pg_xact al nuevo servidor ok
Estableciendo siguiente ID de transacción y época para el nuevo clúster ok
Eliminando archivos de nuevo pg_multixact/offsets ok
Copiando antiguo pg_multixact/offsets al nuevo servidor ok
Eliminando archivos de nuevo pg_multixact/members ok
Copiando antiguo pg_multixact/members al nuevo servidor ok
Estableciendo siguiente ID multixact y desplazamiento para el nuevo clúster ok
Restableciendo archivos WAL ok
Estableciendo contadores frozenxid y minmxid en el nuevo clúster ok
Restaurando objetos globales en el nuevo clúster ok
Restaurando esquemas de bases de datos en el nuevo clúster
template1
discourse
postgres
ok
Copiando archivos de relación de usuario
/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
Estableciendo siguiente OID para el nuevo clúster ok
Sincronizando directorio de datos en el disco ok
Creando script para analizar el nuevo clúster ok
Creando script para eliminar el antiguo clúster ok
Actualización completada
----------------
Las estadísticas del optimizador no se transfieren por pg_upgrade, por lo que,
una vez que inicies el nuevo servidor, considera ejecutar:
./analyze_new_cluster.sh
Ejecutar este script eliminará los archivos de datos del antiguo clúster:
./delete_old_cluster.sh
-------------------------------------------------------------------------------------
ACTUALIZACIÓN DE POSTGRES COMPLETADA
La antigua base de datos 10 se almacena en /shared/postgres_data_old
Para completar la actualización, vuelve a compilar usando:
./launcher rebuild app
-------------------------------------------------------------------------------------