Blz ? pessoal, apenas para registro, fui fazer um teste num notebook Windows
8.1 64-bits com os dois clients 12cR2 full (o de 32 E o de 64 bits) instalados,
e a primeira coisa, descobri que (ao menos nessa versão 12.2) na verdade junto
com o client JÁ VEM o Oracle OLEDB provider : basta escolher a instalação
Customizada que ele vai mostrar os componentes que vc quer, é só selecionar o
OLDEDB além do ORACLE NET (o protocolo de rede Oracle), dos utilitários de
banco Oracle, do OCI, do sqlplus E do JDBC/ODBC : claro, esses extras não são
exigidos mas é Conveniente ter eles, facilitam muito pra testes e talz... E o
legal de vc ter o OLEDB na mesma HOME que o client full é que vc passa a ter a
disposição (se os instalou) os utilitários de teste e config todos, E além
disso é um local só pra cada versão de client e de oledb que vai conter o
SQLNET.ORA e o TNSNAMES.ORA a configurar... Então, Esqueçam minhas obs sobre
baixar separadamente client E oledb : isso não é errado, é tecnicamente
possível, mas Não é Necessário nem recomendado...
Segue meu exemplo, primeiro mostrando a config do client E do OLEDB 32-bits :
C:\Users\jlchi_000>type client12cR2x86.bat
SET ORACLE_SID=
SET ORACLE_HOME=c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86
SET PATH=%ORACLE_HOME%\BIN;%PATH%
C:\Users\jlchi_000>client12cR2x86.bat
C:\Users\jlchi_000>echo %ORACLE_HOME%
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86
C:\Users\jlchi_000>echo %PATH%
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86\BIN;........ummontedepastasquenãovemaocaso.............
=> No meu caso, o banco Oracle remoto não foi configurado pra autenticação
remota via NTS, então tive que mudar esse default, comentando a linha do NTS e
adicionando outra com NONE :
C:\Users\jlchi_000>type %ORACLE_HOME%\network\admin\sqlnet.ora
# sqlnet.ora Network Configuration File:
C:\app\oracle12cr2\product\12.2.0\client_12cR2_x86\\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
#SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.AUTHENTICATION_SERVICES= (NONE)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
==> OK, uma vez configurado o TNSNAMES dessa HOME onde eu tenho o client full E
o oledb de 32 bits, eu TENHO que ser capaz de acessar o banco remoto ...
C:\Users\jlchi_000>type %ORACLE_HOME%\network\admin\tnsnames.ora
# tnsnames.ora Network Configuration File:
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
WBDTESTx86 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 192.123.10.456)
(Port = 1521)
)
)
(CONNECT_DATA = (SID = BDTEST)
)
)
C:\Users\jlchi_000>
=> teste de PING e de conexão :
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86\install>tnsping wbdtestx86
TNS Ping Utility for 32-bit Windows: Version 12.2.0.1.0 - Production
Arquivos de parâmetros usados:
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86\network\admin\sqlnet.ora
Usado o adaptador TNSNAMES para resolver o apelido
Tentativa de contatar (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP) (Host = 192.123.10.456) (Port = 1521))) (CONNECT_DATA = (SID = BDTEST)))
OK (60 ms)
C:\Users\jlchi_000>sqlplus chiappa/senha@wbdtestx86
SQL*Plus: Release 12.2.0.1.0 Production
Conectado a:
Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
SQL> exit
Desconectado de Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
==> Eis o teste da conexão via OLEDB Provider de 32 bits (achei mais fácil
fazer o teste de conexão ADO via Oracle OLEDB Provider através dum script VBS,
seguindo a nota metalink/my oracle support "HOWTO: Test an OleDb or ODBC
Connection Using VBScript" (Doc ID 1116853.1) :
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x86
C:\Users\jlchi_000>type c:\testoledbconx86.vbs
set con = createobject("adodb.connection")
con.open "provider=oraoledb.oracle;user id=chiappa;password=senha;data
source=wbdtestx86"
set rs = createobject("adodb.recordset")
rs.open "select user || ' connected at ' || to_char(sysdate) from dual",con
wscript.echo rs.fields(0).value
rs.close
set rs=nothing
con.close
set con=nothing
C:\Users\jlchi_000>
C:\Users\jlchi_000>c:\windows\syswow64\cscript.exe c:\testoledbconx86.vbs
Microsoft (R) Windows Script Host Versão 5.8
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
CHIAPPA connected at 2019-03-06 14:09:46
C:\Users\jlchi_000>
=====>>> Agora mostro a config E o teste com o client 64 bits e com o OLEBD 64
bits :
C:\Users\jlchi_000>type client12cR2x64.bat
SET ORACLE_SID=
SET ORACLE_HOME=c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64
SET PATH=%ORACLE_HOME%\BIN;%PATH%
C:\Users\jlchi_000>client12cR2x64.bat
C:\Users\jlchi_000>echo %ORACLE_HOME%
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64
C:\Users\jlchi_000>echo %PATH%
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64\BIN;.......váriosoutros
caminhosquenãointeressam......
C:\Users\jlchi_000>type %ORACLE_HOME%\network\admin\sqlnet.ora
# sqlnet.ora Network Configuration File:
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
#SQLNET.AUTHENTICATION_SERVICES= (NTS)
SQLNET.AUTHENTICATION_SERVICES= (NONE)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
C:\Users\jlchi_000>type %ORACLE_HOME%\network\admin\tnsnames.ora
# tnsnames.ora Network Configuration File:
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
WBDTESTx64 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS =
(PROTOCOL = TCP)
(Host = 192.123.10.456)
(Port = 1521)
)
)
(CONNECT_DATA = (SID = BDTEST)
)
)
C:\Users\jlchi_000>tnsping wbdtestx64
TNS Ping Utility for 64-bit Windows: Version 12.2.0.1.0 - Production
Arquivos de parâmetros usados:
c:\app\oracle12cR2\product\12.2.0\client_12cR2_x64\network\admin\sqlnet.ora
Usado o adaptador TNSNAMES para resolver o apelido
Tentativa de contatar (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP) (Host = 192.123.10.456) (Port = 1521))) (CONNECT_DATA = (SID = BDTEST)))
OK (140 ms)
C:\Users\jlchi_000>sqlplus chiappa/senha@wbdtestx64
SQL*Plus: Release 12.2.0.1.0 Production
Conectado a:
Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
SQL> exit
Desconectado de Oracle Database 10g Release 10.2.0.5.0 - 64bit Production
C:\Users\jlchi_000>
C:\Users\jlchi_000>type c:\testoledbconx64.vbs
set con = createobject("adodb.connection")
con.open "provider=oraoledb.oracle;user id=chiappa;password=senha;data
source=wbdtestx64"
set rs = createobject("adodb.recordset")
rs.open "select user || ' connected at ' || to_char(sysdate) from dual",con
wscript.echo rs.fields(0).value
rs.close
set rs=nothing
con.close
set con=nothing
C:\Users\jlchi_000>
==> Como meuWindows é 64 bits, o executor de scripts VBS por default é o de 64
bits, uso-o :
C:\Users\jlchi_000>cscript.exe c:\testoledbconx64.vbs
Microsoft (R) Windows Script Host Versão 5.8
Copyright (C) Microsoft Corporation. Todos os direitos reservados.
CHIAPPA connected at 2019-03-06 14:40:25
C:\Users\jlchi_000>
==> É ATÉ AQUI que um DBA/especialista de banco de dados pode ir, ie :
comprovou que o OLEDB e o Client Oracle tá ok e conectando.. Joinha ???
[]s
Chiappa