Copiar una base de datos en Postgres

Para copiar una base, primero hay que tenerla sin usuarios conectados… los sacamos:

SELECT
pg_terminate_backend(pid)
–*
FROM
pg_stat_activity
WHERE
pid <> pg_backend_pid()
–and query = ‘COMMIT’
;

Luego, simplemente, creamos una nueva base con plantilla en la de origen:

CREATE DATABASE base_nueva WITH TEMPLATE base_vieja OWNER postgres;

Esto, la crea copiando base, estructura y datos.

 


Posted

in

by

Tags: