IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

Publics database link


Sujet :

Administration Oracle

  1. #1
    Membre expérimenté
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Points : 1 736
    Points
    1 736
    Par défaut Publics database link
    Bonjour à tous,

    Je débute dans Oracle, mais j'ai 2 instances et je dois sur chaqu'une d'elle créer un lien pour que les applications puissent interroger les DB d'une instance à l'autre.

    Voici le script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    CREATE PUBLIC DATABASE LINK link_name
    CONNECT TO my_login IDENTIFIED BY password
    USING 'service_name';
    Ca fonctionne toujours quand j'execute ceci : SELECT * FROM table@link_name. Mais ce qui est curieux, c'est que sur certaines DB, cela fonctionne sans mettre le @link_name mais ce n'est pas le cas tout le temps. Avez-vous une idée pourquoi ? Afin de facilité le travail aux développeurs de l'application, ce serait mieux qu'ils ne doivent pas mettre le DB link dans leur code. A moins que ce soit la "règle" ?

    Merci
    Jean-Luc
    Ce que nous avons fait pour nous-même meurt avec nous, ce que nous avons fait pour les autres et le monde est immortel. Albert Pike

    http://www.datacrossroad.be

  2. #2
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Quand ça fonctionne sans indiquer le DB Link, c'est qu'il existe une table du même nom sur la base locale.

    Pour faciliter la vie des développeurs, utilisez des synonymes :
    http://docs.oracle.com/cd/B19306_01/...ments_7001.htm

  3. #3
    Membre expérimenté
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Points : 1 736
    Points
    1 736
    Par défaut
    Curieux car je n'en vois aucune portant le même nom. C'est juste ça qui m'aide et me confirme que je ne me suis pas trompé en paramètrant les connexions dans SQL Developer.

    Merci, je vais étudier les synonymes. Mais sinon, sans mettre @nom_lien, ça n'est "jamais" censé donner un résultat ?
    Ce que nous avons fait pour nous-même meurt avec nous, ce que nous avons fait pour les autres et le monde est immortel. Albert Pike

    http://www.datacrossroad.be

  4. #4
    Modérateur
    Avatar de Waldar
    Homme Profil pro
    Customer Success Manager @Vertica
    Inscrit en
    Septembre 2008
    Messages
    8 452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Customer Success Manager @Vertica
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8 452
    Points : 17 820
    Points
    17 820
    Par défaut
    Sans le DBLink codé via une vue ou un synonyme, non ce n'est pas possible.

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2014
    Messages : 37
    Points : 74
    Points
    74
    Par défaut
    Bonjour,

    pour être sur qu'il n'y a rien dans votre base qui pourrait vous masquer un code de redirection vers votre autre base, que donne le résultat du code suivant avec une table interrogeable sans @lien :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM BDA_OBJECTS WHERE OBJECT_NAME = <le nom de votre table>;
    Pour les messages utiles, mettre un pouce vert fait plaisir à celui qui donne de son temps pour aider. (en tout cas, ça me fait plaisir)

  6. #6
    Membre expérimenté
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Points : 1 736
    Points
    1 736
    Par défaut
    Citation Envoyé par A.Herobic Voir le message
    Bonjour,

    pour être sur qu'il n'y a rien dans votre base qui pourrait vous masquer un code de redirection vers votre autre base, que donne le résultat du code suivant avec une table interrogeable sans @lien :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM BDA_OBJECTS WHERE OBJECT_NAME = <le nom de votre table>;
    Bonjour,

    En fait, il y avait déjà des synonymes voilà pourquoi ça fonctionnait parfois et parfois pas. Quand j'ai fait l'export de tout, j'ai oublié de modifier le @xxxx des synonymes, donc forcément àa ne fonctionnait pas. Je l'ai fait et tout à refonctionné.

    Merci pour votre aide à tous les 2.
    Ce que nous avons fait pour nous-même meurt avec nous, ce que nous avons fait pour les autres et le monde est immortel. Albert Pike

    http://www.datacrossroad.be

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Couple public/private database link
    Par akrylik dans le forum Connexions aux bases de données
    Réponses: 0
    Dernier message: 01/03/2012, 13h36
  2. Une question concernant CREATE PUBLIC DATABASE LINK et l'erreur ORA-12154
    Par dariyoosh dans le forum Connexions aux bases de données
    Réponses: 2
    Dernier message: 18/11/2009, 16h13
  3. Database link et procédure
    Par Sir Coco dans le forum PL/SQL
    Réponses: 10
    Dernier message: 02/04/2008, 16h13
  4. Erreur ORA-12514 avec database link
    Par gafreu dans le forum Administration
    Réponses: 20
    Dernier message: 09/09/2004, 11h53
  5. DATABASE LINK + type Long et long raw ...
    Par bchristo dans le forum Administration
    Réponses: 21
    Dernier message: 26/04/2004, 15h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo