PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 04/08/2009 14:47:23

lescault
Membre

créer un db link vers une base Oracle

Bonjour,

Est ce que l'un(e) d'entre vous à déjà utiliser la fonction permettant de créer un db link vers une base autre que Postgre (Oracle par exemple) ?

Cdt,
Alain

Hors ligne

#2 04/08/2009 15:43:28

gleu
Administrateur

Re : créer un db link vers une base Oracle

Avec quel outil ? le module contrib dblink de PostgreSQL ne sert qu'à se connecter à un autre serveur PostgreSQL.


Guillaume.

Hors ligne

#3 04/08/2009 15:57:36

lescault
Membre

Re : créer un db link vers une base Oracle

Bonjour Gleu

En fait je suis toujours dans le cadre de ma migration Oracle -> Postgres.

J'ai installé pgsnaphot afin de pouvoir utiliser les VMs et les snapshots logs mais lorsque j'essaie de créer le db_link Postgres vers Oracle je rencontre quelques soucis ..

testdb=# select  create_dblink('test_dblink', 'dbi:Oracle:BT2P','EN_VE','ESTHER','Autocommit => 1');
server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.
!> \q

J'ai envoyé un mail au cdp du projet pgsnapshot sur pgfoundry mais pour le moment je n'ai pas de réponse, remarque c'est les vacances ..

Hors ligne

#4 04/08/2009 17:27:09

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Il faut le driver DBD Oracle. Est-ce qu'il est bien installé ? Est-ce que les librairies Oracle sont bien dans le LD_LIBRARY_PATH ? C'est pas très simple à installer le DBD Oracle, vu qu'il y a des bouts de code proprio dedans.


Marc.

Hors ligne

#5 04/08/2009 20:56:44

lescault
Membre

Re : créer un db link vers une base Oracle

Tu veux parler du module CPAN ? j'ai pu le tester lors de l'utilistation de l'outil ora2pg avec lequel j'ai effectué quelques tests de migration Oracle->Postgres.

Concernant l'environnement les prinicipales variables d'environnement sont OK (je viens de vérifier).

Hors ligne

#6 04/08/2009 22:54:50

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Par contre j'ai pas réagi tout à l'heure mais ça ressemble à un segfault du processus serveur ton message. Il vaudrait mieux vérifier dans la log de postgres…


Marc.

Hors ligne

#7 05/08/2009 10:40:11

lescault
Membre

Re : créer un db link vers une base Oracle

oui tu as tt à fait raison, honte à moi de ne pas avoir regardé ..

c'est un peu curieux, voici un extrait de la log :

ERROR:  syntax error at or near "create_dblink" at character 1
STATEMENT:  create_dblink('my_oracle_link', 'dbi:Oracle:BT2P.WORLD','EN_VE','ESTHER','Autocommit => 1');
Can't locate vars.pm in @INC (@INC contains: /root/localperl/lib/5.10.0/i686-linux /root/localperl/lib/5.10.0 /root/localperl/lib/site_perl/5.10.0/i686-linux /root/localperl/lib/site_perl/5.10.0 .) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Can't locate Config.pm in @INC (@INC contains: /root/localperl/lib/5.10.0/i686-linux /root/localperl/lib/5.10.0 /root/localperl/lib/site_perl/5.10.0/i686-linux /root/localperl/lib/site_perl/5.10.0 .) at (eval 1) line 1.
BEGIN failed--compilation aborted at (eval 1) line 1.
LOG:  server process (PID 9437) exited with exit code 2
LOG:  terminating any other active server processes
WARNING:  terminating connection because of crash of another server process

Je viens de vérifier j'ai 3 fichier vars.pm (ts les 3 identiques même taille en octet) dont un dans l'un des path de @INC.

J'avoue que je ne comprend pas trop pourquoi j'ai ce message avec un plus un 'Can't locate Config.pm in @INC ', je viens de relancer le module ora2pg afin de valider ma configuration.

Dernière modification par lescault (05/08/2009 10:58:07)

Hors ligne

#8 05/08/2009 11:50:31

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Le @INC est très bizarre : le langage PL installé dans la base, c'est le plperl ou le plperlu ?


Marc.

Hors ligne

#9 05/08/2009 12:02:13

lescault
Membre

Re : créer un db link vers une base Oracle

le plperlu

Hors ligne

#10 05/08/2009 13:52:14

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Et le perl est un perl compilé manuellement ? (je suis toujours aussi étonné par le message d'erreur)


Marc.

Hors ligne

#11 05/08/2009 15:04:33

lescault
Membre

Re : créer un db link vers une base Oracle

oui je l'ai installé sans trop de problème, seuls les modules CPAN étaient un peu pénibles à configurer.

Hors ligne

#12 05/08/2009 15:36:30

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Question con : le fichier vars.pm est bien accessible à l'utilisateur système qui fait tourner postgres ? (vérifier le chemin complet … /root est souvent 700 par exemple)


Marc.

Hors ligne

#13 05/08/2009 15:41:03

lescault
Membre

Re : créer un db link vers une base Oracle

oui je l'ai installé sans trop de problème, seuls les modules CPAN étaient un peu pénibles à configurer.

Hors ligne

#14 05/08/2009 16:08:27

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Tiens y a de l'écho ici smile

Plus sérieusement, cette histoire de droits ?


Marc.

Hors ligne

#15 05/08/2009 18:47:25

lescault
Membre

Re : créer un db link vers une base Oracle

Oui curieux j'ai pas souvenir d'avoir répondu deux fois la même chose ;-)

il se peut que j'ai un conflit entre l'utilisateur postgres [celui avec lequel je me connecte] et l'utilisateur propriétaire des procédures stockées, je vais creuser ça demain matin.

ceci étant je ne vois pas pourquoi j'aurais ce crash process et ces msg perl, mais là je fatigue un peu ..

En tout cas merci pour  le soutien c'est appréciable

Hors ligne

#16 06/08/2009 11:01:38

lescault
Membre

Re : créer un db link vers une base Oracle

Bonjour,

Je voudrais tout de même vérifier la bonne installation des modules CPAN et je n'arrive pas à retrouver la syntaxe exact sous CPAN.

Hors ligne

#17 06/08/2009 11:21:25

Marc Cousin
Membre

Re : créer un db link vers une base Oracle

Je ne sais pas si ça existe… à part utiliser un use ou un require…


Marc.

Hors ligne

Pied de page des forums