Publicidad

Migrar una base de datos de MySql a postgreSQL


Por Alex el 04/06/2021 ( actualizado el 23/04/2022 ) , Comentar el artículo

Comparte este artículo:      




He preparado una pequeña aplicación para realizar migraciones de bases de datos MySql a postgreSQL, lo subo al github y explico como ejecutar el script


En el README.md estan los requerimientos de funcionamiento:

Podéis descargarla desde github https://github.com/depruebas/mysql-to-posgresql-migrator.

Antes de nada comentar que el script se tiene que ejecutar con el usuario root (o con sudo, no lo he probado) porque necesita cambiar los permisos del directorio (output/data) para ejecutar los scripst de carga de datos en postgreSQL desde el terminal.

También es necesario que añadáis en el fichero /etc/postgresql/12/main/pg_hba.conf el usuario que utilices para conectar al postgreSQL ( el mismo que ponéis en el fichero config)

local all postgres_user trust

Fichero de configuración de postgreSQL - pg_hba.conf
Si usáis el usuario postgres cambiar peer por trust pero después de correr el script dejarlo como estaba antes.

La forma de utilizarlo es muy sencilla, desde el directorio raíz de ejecutáis el siguiente comando, antes de ejecutarlo deberéis cambiar la configuración de las bases de datos de MySql y de postgreSQL en el fichero config/config.php

php init.php MySqlToPostgreSQL Init 'import_sql=true'

Con el parámetro import_sql=true importará los datos al postgresql, si esta a false dejara los .csv en el directorio output/data

La base de datos en el servidor postgreSQL debe existir para que toda la migración se realice de forma automática y la base de datos debe llamarse como parámetro 'dbname' => 'PRUEBAS'.

El script que realizar todo el trabajo se encuentra en modules/MySqlToPostgreSQL.php y tiene toda la logica de migración de MySql a postgreSQL


Y esto es todo amigos, feliz programming
Saludos
Alex.



Si te ha gustado el artículo compartelo en:      



También puede interesarte:

Crear un servidor MySql en Docker con volumen externo

Crear un servidor MySql en Docker con volumen externo

Por Alex, el 16/05/2022

Paginación de registros desde MySql

Paginación de registros desde MySql

Por Alex, el 09/05/2022

Extraer valores de un campo JSON en MySql

Extraer valores de un campo JSON en MySql

Por Alex, el 30/03/2022

Comparar estructura de dos bases de datos

Comparar estructura de dos bases de datos

Por Alex, el 28/03/2022

Espacio ocupado en disco por las bases de datos MySql

Espacio ocupado en disco por las bases de datos MySql

Por Alex, el 17/02/2022

Truncate y reset identity en mysql

Truncate y reset identity en mysql

Por Alex, el 05/01/2022


Añadir un comentarios:

Nombre:
Email: (no se publica el email)




SIGUENOS EN

ARCHIVO

Publicidad

.