Saltar al contenido

¿Cómo actualizar PostgreSQL de la versión 9.6 a la versión 10.1 sin perder datos?

Ten en cuenta que en las ciencias informáticas un problema puede tener más de una soluciones, de igual modo nosotros aquí te enseñaremos lo más óptimo y mejor.

Solución:

Suponiendo que ha utilizado home-brew para instalar y actualizar Postgres, puede realizar los siguientes pasos.

  1. Detener el servidor de Postgres actual:

    launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

  2. Inicialice una nueva base de datos 10.1:

    initdb /usr/local/var/postgres10.1 -E utf8

  3. correr pg_upgrade(nota: cambie la versión del contenedor si está actualizando desde algo que no sea el siguiente):

    pg_upgrade -v 
        -d /usr/local/var/postgres 
        -D /usr/local/var/postgres10.1 
        -b /usr/local/Cellar/postgresql/9.6.5/bin/ 
        -B /usr/local/Cellar/postgresql/10.1/bin/
    

    -v para habilitar el registro interno detallado

    -d el directorio de configuración del clúster de base de datos antiguo

    -D el nuevo directorio de configuración del clúster de base de datos

    -b el antiguo directorio ejecutable de PostgreSQL

    -B el nuevo directorio ejecutable de PostgreSQL

  4. Mueva nuevos datos a su lugar:

    cd /usr/local/var
    mv postgres postgres9.6
    mv postgres10.1 postgres
    
  5. Reinicie Postgres:

    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

  6. Cheque /usr/local/var/postgres/server.log para obtener más detalles y asegurarse de que el nuevo servidor se inició correctamente.

  7. Finalmente, vuelva a instalar los rieles. pg joya

    gem uninstall pg
    gem install pg
    

Le sugiero que se tome un tiempo para leer la documentación de PostgreSQL para comprender exactamente lo que está haciendo en los pasos anteriores para minimizar las frustraciones.

A pesar de todas las respuestas anteriores, aquí van mis 5 centavos.

Funciona en cualquier sistema operativo y desde cualquier versión de Postgres.

  • Detenga cualquier instancia de postgres en ejecución;
  • Instale la nueva versión e iníciela; Compruebe si también puede conectarse a la nueva versión;
  • Cambiar la versión anterior postgresql.conf -> port desde 5432 a 5433;
  • Inicie la instancia de postgres de la versión anterior;
  • Abra una terminal y cd a la nueva versión bin carpeta;
  • Correr pg_dumpall -p 5433 -U | psql -p 5432 -U
  • Detenga la antigua instancia en ejecución de postgres;

Aquí está la solución para Ubuntu usuarios

Primero tenemos que detener postgresql

sudo /etc/init.d/postgresql stop

Cree un nuevo archivo llamado /etc/apt/sources.list.d/pgdg.list y agregue la siguiente línea

deb http://apt.postgresql.org/pub/repos/apt/ utopic-pgdg main

Siga los siguientes comandos

wget -q -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-9.4
sudo pg_dropcluster --stop 9.4 main 
sudo /etc/init.d/postgresql start

Ahora tenemos todo, solo necesitamos actualizarlo como se muestra a continuación.

sudo pg_upgradecluster 9.3 main
sudo pg_dropcluster 9.3 main

Eso es. El clúster actualizado en su mayoría se ejecutará en el puerto número 5433. Compruébelo con el siguiente comando

sudo pg_lsclusters

valoraciones y comentarios

Si sostienes alguna cuestión y forma de aumentar nuestro sección puedes añadir una crítica y con placer lo leeremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *