He creado una base de datos (espacial) en mi casa que es de varios gigabytes y quiero mover toda la base de datos, ya que es de una computadora de mi computadora de trabajo.
Nada fanático, crearé una nueva instancia de postgresql / postgis db en mi computadora de trabajo. Los usuarios de db pueden o no tener el mismo nombre en ambas computadoras.
¿Es posible? ¿De qué debo tener cuidado? ¿Cómo puedo hacerlo sin dolor?
Estoy usando postgresql v9.1.5 con extensión postgis. Ubuntu12.04 (kernel 3.2.0-31)
postgresql
usuario528025
fuente
fuente
Respuestas:
Puede ejecutar un volcado de la base de datos:
y luego importar de nuevo a PostgreSQL en su computadora de trabajo. Tomará bastante tiempo y el archivo resultante, incluso si está comprimido, puede estar en el rango de gigabytes, pero debe ser lo suficientemente pequeño como para contenerlo en una llave USB.
En su computadora de trabajo, cree la nueva base de datos y cargue el volcado:
Si tiene una conexión rápida (o puede tomarse el tiempo), incluso puede transferir la base de datos a través de Internet a través de una conexión SSH encriptada o herramientas como rsync.
fuente
pg_dumpall es la forma más segura de hacer esto. De todos modos, recomendaría tomar un dumpall antes de la migración. Sin embargo, el gran problema es que puede llevar un tiempo restaurarlo si es grande.
También puede copiar el directorio de datos, preferiblemente después de detener su servidor (puede usar pg_start_backup () en lugar de detenerse pero ver todos los documentos sobre la recuperación del punto de tiempo antes de ir a esa ruta. Esa ruta permitiría un tiempo de inactividad casi cero sin embargo, tenga en cuenta que solo puede hacer esto si la arquitectura del sistema operativo y la CPU es la misma en ambos sistemas. No puede pasar de Windows a Linux o de i686 a x86-64 de esta manera. Compruebe también las versiones del kernel del sistema operativo en orden para asegurarse de que los sistemas sean compatibles.
fuente