Eu trabalho em um Mac (macOS Mojave 10.14.1) e estou tentando configurar um driver ODBC para conectar-se a um banco de dados Oracle (meu objetivo final é conectar-se R
usando o DBI
pacote).
Não tenho a linguagem técnica para expressar exatamente o que preciso, mas acho que preciso descobrir onde está meu driver e usá-lo em meu código R e configurá-lo em minha ferramenta Administrador ODBC.
Tenho seguido as instruções sobre issoBlog da Oracle:
- DownloadVersão 12.2.0.1.0 (64 bits) > Base > Pacote Básico
- DownloadDesenvolvimento e Tempo de Execução > Pacote ODBC
- Descompacte e armazene os arquivos acima aqui:
/Users/my_user_name/Applications/instantclient_12_2
- Adicione arquivos ao caminho de pesquisa da biblioteca do macOS
ln -s $(pwd)/libclntsh.dylib.12.1 $(pwd)/libclntshcore.dylib.12.1 ~/lib
- Faça um pequeno patch no nome do driver em instantclient_12_2/odbc_update_ini.sh (veja o link para as instruções originais)
- Execute o script de configuração:
sudo sh odbc_update_ini.sh /usr/local
que retorna*** ODBCINI environment variable not set,defaulting it to HOME directory!
- Então eu faço isso:
sudo chown $USER ~/.odbc.ini
Neste ponto estou perdido. Encontrei o arquivo .odbc.ini
aqui: /Users/my_user_name/.odbc.ini
(preciso digitarls -l -a
Agora não tenho certeza de como me conectar. Não sei como adicionar o arquivo do driver ao meu administrador ODBC e não consigo acessá-lo via R.
este é o meu código R abaixo, acho que o caminho do meu driver está errado:
> 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
Aqui está uma foto do meu administrador ODBCcomo você pode ver, só consigo ver meus drivers Teradata. Tentei adicionar um driver oracle mas não tenho certeza de qual caminho colocar para o meu driver file
e setup file
.
Estou no limite técnico do meu banco de dados aqui, então agradeço antecipadamente pela sua ajuda.