web-dev-qa-db-fra.com

Outils à migrer de SQLite vers PostgreSQL

J'ai besoin de migrer continuellement de SQLite vers PostgreSQL. En continu, je veux dire que je vais réimporter la base de données SQLite dans PostgreSQL tous les jours. Ce serait bien si je pouvais modifier les tables en SQLite car je vous plaide sans avoir à apporter manuellement des modifications à la base de données PostgreSQL. Je vais courir la migration de Python, mais cela pourrait être n'importe quel outil externe, qui peut être contrôlé à partir de la ligne de commande. L'outil doit être disponible pour Linux et ce serait bien s'il a également couru sur Windows.

11
David

J'utilise Navicat pour migrer entre des bases de données (MSSQL/MySQL principalement). Il fonctionne sous Linux et Windows, mais est principalement un outil d'interface graphique. Si vous créez un profil, il peut être démarré à partir de la ligne de commande. Vous pouvez télécharger un essai de 30 jours.

3
pritaeas

Avez-vous examiné à l'aide d'outils ETL? Ils sont externes et je crois que Pentaho fonctionne sur Windows et Linux et sa liberté. Site de Pentaho

4
CleanFill

Je pense que c'est possible, mais je ne pense pas que beaucoup de gens seraient heureux avec ça. Dans le cas général, postgresql et SQLite Treat Table Table Définitions sont très différemment.

CREATE TABLE test (trans_date date primary key);

Si je décharge le contenu de cette table de SQLite, voici ce que je reçois.

sqlite> .dump
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE test (trans_date date primary key);
INSERT INTO "test" VALUES('2011-01-01');
INSERT INTO "test" VALUES('Oh, bugger.');
COMMIT;

Je pense que chaque colonne devrait être Varcharchar () du côté PostgreSQL. Il peut ne pas être trop difficile d'écrire un script pour modifier tous les types de données SQLite en Varcharchar (). Mais cela ressemble beaucoup à un terrain terrible comme frapper les baleines mortes dans la plage.

Vous pouvez utiliser

Toolkit de migration de données ESF .

Je l'ai essayé, cela fonctionne bien et vous donne des options de conversion de plusieurs types de bases de données vers plusieurs types de bases de données: telles que SQLite, MySQL, MSSQL, Oracle, PostgreSQL et Juste beaucoup!

Vous venez d'abord de jeter un coup d'œil à sa version d'essai/évaluation, les résultats sont vraiment satisfaisants!

1
linuxeasy