Eu gostaria de saber se há alguma chance de obter a string de conexão TNS atualmente usada, que será usada para um DB-Link de um db-server.
Estou conectado a um esquema em um banco de dados localizado em qualquer servidor. Agora, tenho alguns links de banco de dados, usando tnsnames e que atualmente não estão funcionando corretamente. Eu gostaria de verificar qual banco de dados de destino está por trás desse identificador para verificar facilmente se isso pode estar correto.
Se eu tivesse acesso ao SO ao db-server, eu seria capaz de ler o ./tnsnames.ora ou usando tnsping.
Mas o DDL do dblink usa apenas o TNSNAME (RDBX neste exemplo):
CRIAR LINK DO BANCO DE DADOS "ABC" CONECTAR A "RUSER" IDENTIFICADO PELOS VALORES ':1' USANDO 'RDBX';
Claro, eu poderia perguntar a um DBA, mas isso nem sempre é tão fácil em nosso ambiente e eu gostaria de poder verificar por mim mesmo sem ter acesso ao sistema operacional.
Eu não acho que isso seja possível. Alguém ou alguma coisa precisa de acesso ao sistema de arquivos para ler o tnsnames.ora. Ao usar o oráculo DB-link obterá a definição para RDBX do arquivo tnsnames.ora. Isso é transparente para o usuário, portanto, o usuário não notará. Como @EdStevens sugeriu, eu tentaria resolver as questões políticas e trabalhar com o DBA. Ou peça ao administrador do sistema operacional para dar uma olhada para você.