Boa tarde,
Eu não tenho acesso ao servidor do cache para verificar os logs.
Os arquivos odba.ini e odbcinst.ini estão configurado desta forma:
/etc/odbc.ini
[cachedb]
Driver = /usr/local/lib/odbc/libcacheodbc35.so
Description = Cache ODBC driver
Host = 192.168.1.10
Namespace = DW
UID = dw
Password = **********************
Port = 1972
Protocol = TCP
Query Timeout = 1
Static Cursors = 0
Trace = Yes
TraceFile = /tmp/iodbctrace.log
Authentication Method = 0
Security Level = 2
Service Principal Name = cache/localhost.domain.com
/etc/odbcinst.ini
# Driver from InterSystems Cache
# Setup manually to access the database Consystem
[cachedb]
Description=InterSystems Caché ODBC Driver
Driver=/usr/local/lib/odbc/libcacheodbc35.so
Setup=/usr/local/lib/odbc/libcacheodbc35.so
Driver64=/usr/local/lib/odbc/libcacheodbc35.so
Setup64=/usr/local/lib/odbc/libcacheodbc35.so
Trace = Yes
TraceFile = /tmp/iodbctrace.log
FileUsage=1
No oracle configurei os arquivos:
- tnsnames.ora
CACHEDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SID = cachedb)
)
(HS=OK)
)
- listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = cachedb)
(ORACLE_HOME = /opt/oracle/product/21c/dbhomeXE)
(PROGRAM = dg4odbc)
)
)
- initcachedb.ora
HS_FDS_CONNECT_INFO = cachedb
HS_FDS_SHAREABLE_NAME = /usr/local/lib/odbc/libcacheodbc35.so
HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P15
HS_FDS_TRACE_LEVEL = DEBUG
HS_FDS_TRACE_FILE_NAME = /tmp/CacheD-dblink.trc
set ODBCINI=/etc/odbc.ini
Criado o dblink:
CREATE DATABASE LINK cachedb CONNECT TO "dw" IDENTIFIED BY "**********************" USING 'cachedb';
Ao executar o select esta retornando o erro.
Bom dia Danusa,
Já fiz vários testes sem aspas e com aspas.
Sempre retorna o mesmo erro.
select * from pedido@CacheDB;
select * from dw.pedido@CacheDB;
select * from "pedido"@CacheDB;
select * from "dw"."pedido"@CacheDB;
select * from "dw.pedido"@CacheDB;