web-dev-qa-db-fra.com

Erreurs lors de la connexion à Oracle DB avec Power BI

J'essaie d'utiliser Power BI pour me connecter à Oracle 12c Data source. J'ai cherché plusieurs solutions et suivi les instructions fournies dans la documentation Microsoft.

https://docs.Microsoft.com/en-us/power-bi/desktop-connect-Oracle-database#installing-the-Oracle-client

Mais je pense qu'il manque quelque chose au travail.

  • Première tentative de connexion via Oracle Database:

où j'installe de nouveaux Oracle et powerbi sur le même ordinateur portable où le serveur doit être au format "NomServeur/SID" décrit dans la documentation, le mien sera:

localhost/testdb

 enter image description here

puis en ajoutant l'utilisateur de la base de données et le mot de passe  enter image description here

et je reçois cette erreur  enter image description here

Je viens d'installer Oracle 12c 64 bits sur mon ordinateur portable pour tester la connexion  enter image description here

aussi j'utilise Power Bi 64 bit sur  enter image description here aussi je suis sur windows 10 64 bit  enter image description here

J'ai également installé "Oracle Data Access Components (ODAC) 64 bits" à partir du site Web d'Oracle: http://www.Oracle.com/technetwork/database/windows/downloads/index-090165.html

 enter image description here

où j'ai ajouté ma base de données à DSN en utilisant à la fois "OraDB12Home1" et "OraClient12Home2"  enter image description here

et aussi pour les deux DSN, j'ai testé la connexion et il a réussi  enter image description here

  • Ensuite, je teste la connexion en utilisant ODBC OraClient12Home2:

 enter image description here

puis en insérant le nom d'utilisateur et le mot de passe pour la base de données  enter image description here

alors je reçois cette erreur  enter image description here

et lorsque je me connecte à OraDB12Home1, le message d'erreur suivant s'affiche:  enter image description here

J'ai également effacer toutes les connexions de source de données sur power bi, car parfois, il ne fait qu'afficher l'erreur sans m'envoyer à l'écran suivant pour entrer l'utilisateur et le mot de passe  enter image description here

Voici les détails de tnsnames.ora:

  # tnsnames.ora Network Configuration File: 
  C:\app\Ahmadssb\virtual\product\12.2.0\dbhome_1\network\admin\tnsnames.ora
  # Generated by Oracle configuration tools. 

  LISTENER_TESTDB =
  (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))


ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))


TESTDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = testdb)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(Host = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.babader.com)
    )
  )

Je ne sais pas ce qui me manque. J'ai même exporté les données d'Oracle sous forme de fichier de vidage et les ai converties au format SQL, mais il semble que cela ne soit plus pris en charge sur le bit d'alimentation, ce qui est une autre situation.

Je dois importer les données de ma base de données dans PowerBi. Quelles sont les données manquantes et que dois-je faire pour que la connexion se fasse correctement?


  • Update: test de testdb sur le serveur:

comme suggéré dans les commentaires pour changer localhost/testdb en seulement testdb (également testé en majuscule TESTDB), car il doit être saisi sur le serveur. Mais cela aussi ne fonctionnait pas avec moi et obtenant toujours la même erreur, vérifiez les images suivantes:

 enter image description here

 enter image description here

 enter image description here

il semble que la connexion à Oracle ne fonctionne pas, puis-je faire quelque chose dans Oracle pour que cela fonctionne?

2
Ahmad Saleh

J'ai formaté Windows, tout réinstalle à partir du début et est connecté via ODBC et cela fonctionne (mais je reçois l'erreur normale DataSource.Error: ODBC: ERROR [07006] [Oracle] [ODBC] violation du type d'attribut de données restreint)

mais avec une requête de sélection pour chaque table nécessaire, je l'obtiens 

  • téléchargé Oracle Database 12c Release 2

  • installer normalement

  • à partir du menu Démarrer -> Outils d’administration de Windows> Sources de données ODBC (64 bits)

  • en tapant sur DSN utilisateur, suivez les images suivantes:

 enter image description here

 enter image description here

 enter image description here

 enter image description here

puisque la connexion a réussi, cliquez ensuite sur "OK" pour l'enregistrer

ensuite sur Power BI, sélectionnez Obtenir la source:

  • sélectionnez ODBC 

 enter image description here

  • sélectionnez le nom DSN que vous avez fourni ci-dessus

 enter image description here

  • maintenant, ne cliquez pas sur OK car cela pourrait vous donner une erreur, je vais l'expliquer ci-dessous.
  • cliquez sur l'option avancée
  • tapez une requête SELECT pour une table spécifique et cliquez sur OK  enter image description here

  • alors il affichera l'aperçu des données de la table, cliquez sur charger  enter image description here

  • félicitation, vous avez terminé  enter image description here

dans le cas où vous n'avez pas tapé une requête de sélection et cliqué sur OK, vous avez ajouté votre nom d'utilisateur et votre mot de passe.

 enter image description here

  • il va connecter et afficher la liste des tables, mais vous pouvez vous retrouver avec cette erreur (la solution fournie sur Internet était la précédente):

https://community.powerbi.com/t5/Integrations-with-Files-and/ODBC-Connection-error-07006/td-p/278165

 enter image description here

c’est ainsi que j’ai réussi à le connecter enfin, j’ai toujours un petit problème qui n’a pas trait à ce sujet, je l’ai posé sur une autre question, mais espérons que cette réponse aidera d’autres personnes à se connecter. 

0
Ahmad Saleh

Il suit la même architecture de connexion que SQL Plus. Par conséquent, le champ Serveur de Power BI doit contenir tout ce qui suit le signe @ de votre test SQL Plus réussi.

Je voudrais donc essayerTESTDBdans le champ Serveur lorsque vous établissez une connexion Oracle à partir de Power BI, et non localhost/testdb . Si cela fonctionne, je suppose que vous pouvez ignorer ODBC.

0
Mike Honey

J'ai finalement pu faire en sorte que PowerBI fonctionne avec le pilote Oracle en le désinstallant de Microsoft Store et en téléchargeant le fichier msi à partir des options de téléchargement avancées de https://powerbi.Microsoft.com/en-us/desktop/. . Je soupçonne que c'est une restriction de sécurité avec une application de magasin qui empêche d'utiliser les bibliothèques Oracle. 

0
JOTN