3 votes

Migrer mysql vers postgres à l'aide de pgloader

J'essaie de migrer mysql vers postgres en utilisant pgloader, puisque j'utilise window donc, j'ai installé pgloader en Windows linux subsystem, et j'ai utilisé la commande suivante pour migrer la base de données pgloader mysql://Root@localhost/f1db pgsql://postgres@localhost:5433/f1db

    KABOOM!
FATAL error: Failed to connect to pgsql at "localhost" (port 5433) as user "postgres": Server requested md5-password authentication, but no password was given.
An unhandled error condition has been signalled:
   Failed to connect to pgsql at "localhost" (port 5433) as user "postgres": Server requested md5-password authentication, but no password was given.

What I am doing here?

Failed to connect to pgsql at "localhost" (port 5433) as user "postgres": Server requested md5-password authentication, but no password was given.

Waiting for the monitor thread to complete.

S'il vous plaît dites que comment passer le mot de passe pour MYsql et Postgres dans la ligne de commande et si j'ai @ dans mon mot de passe comment l'utiliser dans la commande parce que nous avons déjà user@localhost dans la commande.

0voto

Jorge Points 134

De pgloader Manuel de référence ( https://pgloader.readthedocs.io/en/latest/pgloader.html ) :

ligne de commande :

pgloader SOURCE TARGET

Chaîne de connexion à la source

db://user:pass@host:port/dbname

La base de données peut être de type sqlite, mysql ou mssql.

Chaîne de connexion

Le paramètre est censé être donné sous la forme d'un URI de connexion, comme indiqué dans la documentation de PostgreSQL à l'adresse suivante http://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNSTRING .

postgresql://[user[:password]@][netloc][:port][/dbname][?option=value&...]

utilisateur

Peut contenir n'importe quel caractère, y compris les deux points ( :) qui doivent ensuite être doublés (: :) et le signe "at" (@) qui doit ensuite être doublé (@@).

Lorsqu'il est omis, le nom de l'utilisateur prend par défaut la valeur de la variable d'environnement PGUSER, et s'il n'est pas défini, la valeur de la variable d'environnement USER.

mot de passe

Peut contenir n'importe quel caractère, y compris le signe at (@) qui doit ensuite être doublé (@@). Pour laisser le mot de passe vide, lorsque le nom d'utilisateur se termine par le signe at, il faut alors utiliser la syntaxe user:@.

Lorsqu'il est omis, le mot de passe prend par défaut la valeur de la variable d'environnement PGPASSWORD si elle est définie, sinon le mot de passe est laissé tel quel.

Si aucun mot de passe n'est trouvé ni dans l'URI de connexion ni dans l'environnement, alors pgloader recherche un fichier .pgpass comme indiqué à l'adresse suivante https://www.postgresql.org/docs/current/static/libpq-pgpass.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X