Ich arbeite auf einem Mac (macOS Mojave 10.14.1) und versuche, einen ODBC-Treiber für die Verbindung mit einer Oracle-Datenbank einzurichten (mein endgültiges Ziel ist die Verbindung über R
das DBI
Paket).
Ich beherrsche die Fachsprache nicht, um genau auszudrücken, was ich brauche, aber ich denke, ich muss herausfinden, wo mein Treiber ist, ihn in meinem R-Code verwenden und ihn in meinem ODBC-Administratortool einrichten.
Ich habe die Anweisungen hierzu befolgt.Oracle-Blog:
- HerunterladenVersion 12.2.0.1.0 (64-bit) > Base > Basispaket
- HerunterladenEntwicklung und Laufzeit > ODBC-Paket
- Entpacken und speichern Sie die obigen Dateien hier:
/Users/my_user_name/Applications/instantclient_12_2
- Dateien zum Suchpfad der macOS-Bibliothek hinzufügen
ln -s $(pwd)/libclntsh.dylib.12.1 $(pwd)/libclntshcore.dylib.12.1 ~/lib
- Machen Sie einen kleinen Patch für den Treibernamen in instantclient_12_2/odbc_update_ini.sh (siehe Link zu den Originalanweisungen).
- Führen Sie das Konfigurationsskript aus:
sudo sh odbc_update_ini.sh /usr/local
es gibt zurück*** ODBCINI environment variable not set,defaulting it to HOME directory!
- Dann mache ich Folgendes:
sudo chown $USER ~/.odbc.ini
An diesem Punkt bin ich verloren. Ich habe die Datei .odbc.ini
hier gefunden: /Users/my_user_name/.odbc.ini
(Ich muss eingebenls -l -a
Jetzt bin ich mir nicht sicher, wie ich eine Verbindung herstellen soll. Ich weiß nicht, wie ich die Treiberdatei zu meinem ODBC-Administrator hinzufüge, und ich kann nicht über R darauf zugreifen.
das hier ist mein R-Code unten, ich glaube, mein Treiberpfad ist falsch:
> con = DBI::dbConnect(odbc::odbc()
+ ,driver = "/Users/my_user_name/.odbc.ini",
+ ,DBCName = "AUA8"
+ ,MechanismName = "ldap"
+ ,uid = 'user_name'
+ ,pwd = 'my_password')
Error: nanodbc/nanodbc.cpp:950: 01000: [unixODBC][Driver Manager]Can't open lib '/Users/my_user_name/.odbc.ini' : file not found
Hier ist ein Bild meines ODBC-Administratorswie Sie sehen, kann ich nur meine Teradata-Treiber sehen. Ich habe versucht, einen Oracle-Treiber hinzuzufügen, bin mir aber nicht sicher, welchen Pfad ich für meinen driver file
und angeben soll setup file
.
Ich bin hier an den technischen Grenzen meiner Datenbank angelangt, also danke im Voraus für Ihre Hilfe.