Segue os testes:
1-) Conectado no banco local
c:\Temp>sqlplus local/local@local

SQL*Plus: Release 10.2.0.3.0 - Production on Qua Mai 27 17:19:11 2020

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.


Conectado a:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing
options

SQL>


2-) Conectado no banco de producao
c:\Temp>sqlplus wint/wint@rede

SQL*Plus: Release 10.2.0.3.0 - Production on Qua Mai 27 17:20:23 2020

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.


Conectado a:
Oracle Database 11g Release 11.2.0.4.0 - 64bit Production

SQL>

3-) Tnsping local

c:\Temp>tnsping local

TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on
27-MAI-2020 17:22:06

Copyright (c) 1997, 2006, Oracle.  All rights reserved.

Arquivos de parÔmetros usados:
D:\oracle\product\10.2.0\client_1\network\admin\sqlnet.ora


Usado o adaptador TNSNAMES para resolver o apelido
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = 127.0.0.1)(PORT = 1521))) (CONNECT_DATA = (SID = LOCAL)))
OK (0 ms)

4-) tnsping remoto
c:\Temp>tnsping rede

TNS Ping Utility for 32-bit Windows: Version 10.2.0.3.0 - Production on
27-MAI-2020 17:22:39

Copyright (c) 1997, 2006, Oracle.  All rights reserved.

Arquivos de parÔmetros usados:
D:\oracle\product\10.2.0\client_1\network\admin\sqlnet.ora


Usado o adaptador TNSNAMES para resolver o apelido
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
TCP)(HOST = 10.0.0.200)(PORT = 1521))) (CONNECT_DATA = (SID = WINT)))
OK (60 ms)

5-) Logo os dois bancos tem entradas no tnsnames e os dois são conectáveis

6-) Importando no banco local

c:\Temp>sqlldr local/local@local control=example.ctl log=employee.log
bad=employee.bad

SQL*Loader: Release 11.2.0.1.0 - Production on Qua Mai 27 17:25:19 2020

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights
reserved.

Atingido o ponto de commit - contagem de registros l¾gicos 5
Atingido o ponto de commit - contagem de registros l¾gicos 6


c:\Temp>sqlplus local/local@local

SQL*Plus: Release 10.2.0.3.0 - Production on Qua Mai 27 17:30:24 2020

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.


Conectado a:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing
options

SQL> select * from employee;

        ID
----------
NAME
--------------------------------------------------------------------------------
DEPT                                         SALARY
---------------------------------------- ----------
       100
Thomas
Sales                                          5000

       200
Jason
Technology                                     5500

c:\Temp>

7-) Importando banco remoto
c:\Temp>sqlldr wint/wint@rede control=example.ctl log=employee.log
bad=employee.bad

SQL*Loader: Release 11.2.0.1.0 - Production on Qua Mai 27 17:26:52 2020

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights
reserved.

SQL*Loader-704: Erro interno: ulconnect: OCIServerAttach [0]
ORA-12154: TNS:nÒo foi possÝvel resolver o identificador de conexÒo
especificado

c:\Temp>


8-) Levando em consideração que o tnsping funciona pelo tnsnames.ora, seria
a variável ORACLE_HOME, já que não a tenho configurada no windows ?
9-) Se sim, qual path devo setar, do caminho do banco ou do client ?
10-) Pq o sqlldr dá erro 12154 e o sqlplus/sqlbbx/sqlnavigator não?

Caminho banco:D:\app\Consultor\product\11.2.0\dbhome_1
Caminho do client: D:\oracle\product\10.2.0\client_1

Obrigado.




On Wed, May 27, 2020 at 12:58 PM Jose Laurindo Chiappa
jlchia...@yahoo.com.br [oracle_br] <oracle_br@yahoogrupos.com.br> wrote:

>
>
> Mostrando que pro sql*loader é EXATAMENTE A MESMA COISA, eis um exemplo
> nesse mesmo ambiente que citei na msg anterior, com ORACLE_HOME e PATH
> setados, etc :
>
> => crio uma tabelinha no banco-destino :
>
> SYSTEM@abobora::CNTNR=CDB$ROOT> create table EMPLOYEE
>   2  (
>   3  id     number,
>   4  name   varchar2(100),
>   5  dept   varchar2(40),
>   6  salary number
>   7  );
>
> Tabela criada.
>
> SYSTEM@abobora::CNTNR=CDB$ROOT>
> SYSTEM@abobora::CNTNR=CDB$ROOT>exit
>
> => Agora vou ter um arquivo de dados E um arquivo de controle para serem
> usados com o sql*loader :
>
> C:\Users\User 2am>type employee.txt
> 100,Thomas,Sales,5000
> 200,Jason,Technology,5500
> 300,Mayla,Technology,7000
> 400,Nisha,Marketing,9500
> 500,Randy,Technology,6000
> 501,Ritu,Accounting,5400
>
> C:\Users\User 2am>type example.ctl
> load data
>  infile 'employee.txt'
>  into table employee
>  fields terminated by ","
>  ( id, name, dept, salary )
>
> C:\Users\User 2am>
>
> ==> posso chamar o sqlldr CONECTANDO LÁ NO BANCO REMOTO com a host string
> correta , de boa :
>
> C:\Users\User 2am>sqlldr system/oracle@abobora control=example.ctl
> log=employee.log bad=employee.bad
>
> SQL*Loader: Release 19.0.0.0.0 - Production on Qua Mai 27 12:52:21 2020
> Version 19.3.0.0.0
>
> Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights
> reserved.
>
> Caminho usado:      Convencional
> Atingido o ponto de confirmação - contagem de registros lógicos 6
>
> Tabela EMPLOYEE:
>   6 Linhas carregados com sucesso.
>
> Verifique o arquivo log:
>  employee.log
> para obter mais informações sobre a carga..
>
> C:\Users\User 2am>type employee.log
>
> SQL*Loader: Release 19.0.0.0.0 - Production on Qua Mai 27 12:52:21 2020
> Version 19.3.0.0.0
>
> Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights
> reserved.
>
> Arquivo de Controle:   example.ctl
> Arquivo de Dados:      employee.txt
>   Arquivo de Incorreções:     employee.bad
>   Arquivo de Descarte:  nenhum(a) foi especificado(a)
>
>  (Permite todos os descartes)
>
> Número a ser carregado: ALL
> Número a ser ignorado: 0
> Erros permitidos: 50
> Array de ligação:     250 linhas, máximo de 1048576 bytes
> Continuação:    nenhum(a) foi especificado(a)
> Caminho usado:      Convencional
>
> Tabela EMPLOYEE, carregada a partir de cada registro lógico.
> Opção de inserção em vigor para esta tabela: INSERT
>
>    Nome da Coluna                  Posição   Tam  Term Incl Tipo de Dados
> ------------------------------ ---------- ----- ---- ----
> ---------------------
> ID                                  FIRST     *   ,       CHARACTER
> NAME                                 NEXT     *   ,       CHARACTER
> DEPT                                 NEXT     *   ,       CHARACTER
> SALARY                               NEXT     *   ,       CHARACTER
>
>
> Tabela EMPLOYEE:
>   6 Linhas carregados com sucesso.
>   0 Linhas não carregado devido a erros de dados.
>   0 Linhas não carregado porque todas as cláusulas WHEN falharam.
>   0 Linhas não carregado porque todos os campos eram nulos.
>
>
> Espaço alocado para o array de ligação:                 258000 bytes(250
> linhas)
> Bytes do buffer de leitura: 1048576
>
> Total de registros lógicos ignorados:          0
> Total de registros lógicos lidos:             6
> Total de registros lógicos rejeitados:         0
> Total de registros lógicos descartados:        0
>
> A execução começou em Qua Mai 27 12:52:21 2020
> A execução foi finalizada em Qua Mai 27 12:52:22 2020
>
> O tempo decorrido foi:     00:00:00.27
> O tempo de CPU foi:         00:00:00.08
>
> C:\Users\User 2am>
>
> ==> conectando lá no banco remoto E confirmando que tudo tá ok :
>
> C:\Users\User 2am>sqlplus system/oracle@abobora
>
> SQL*Plus: Release 19.0.0.0.0 - Production on Qua Mai 27 12:54:08 2020
> Version 19.3.0.0.0
>
> Copyright (c) 1982, 2019, Oracle.  All rights reserved.
>
> Horário do último log-in bem-sucedido: Qua Mai 27 2020 12:52:21 -03:00
>
> Conectado a:
> Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
> Version 18.4.0.0.0
>
>
> SYSTEM@abobora::CNTNR=CDB$ROOT> select * from employee;
>
>         ID NAME                 DEPT                               SALARY
> ---------- -------------------- ------------------------------ ----------
>        100 Thomas               Sales                                5000
>        200 Jason                Technology                           5500
>        300 Mayla                Technology                           7000
>        400 Nisha                Marketing                            9500
>        500 Randy                Technology                           6000
>        501 Ritu                 Accounting                           5400
>
> 6 linhas selecionadas.
>
> SYSTEM@abobora::CNTNR=CDB$ROOT>
>
> []s
>
>   Chiappa
>
>
> Em quarta-feira, 27 de maio de 2020 12:37:33 BRT, Jose Laurindo Chiappa
> jlchia...@yahoo.com.br [oracle_br] <oracle_br@yahoogrupos.com.br>
> escreveu:
>
>
>
>
> E só acrescentando, eu ** REPITO ** : vc só consegue conectar com o SID
> indicado na variável ORACLE_SID ** para bancos LOCAIS **, como é o banco
> DEV que vc diz ter na sua máquina - um banco REMOTO, residindo em OUTRA
> MÁQUINA, vc ABSOLUTAMENTE TEM que ter uma entrada no arquivo TNSNAMES.ORA
> ** e ** deve indicar essa entrada com @ em seja qual tool vc quer
> conectar... Entendo que é POR ISSO que no banco DEV local aí seu vc
> consegue conectar SEM indicar @hoststring , MAS não consegue no banco PROD
> remoto....
> Pra acessar esse banco PROD remoto, repiuto, vc TEM que ter uma entrada
> corretamente apontando pra ele no TNSNAMES.ORA e TEM que USAR essa entra
> com um @ na tool de conexão....
>
> []s
>
>   Chiappa
>
> Em quarta-feira, 27 de maio de 2020 12:30:45 BRT, Jose Laurindo Chiappa
> jlchia...@yahoo.com.br [oracle_br] <oracle_br@yahoogrupos.com.br>
> escreveu:
>
>
>
>
> Na verdade não chame as entradas do TNSNAMES.ORA de "SID" porque elas não
> são isso, ok ? Isso evita muita confusão de conceitos...
> Muito bem : se vc vai acessar por uma tool de linha de comando um banco
> remoto (como é o seu caso) não tem segredo, vc TEM que ter uma entrada
> apropriada para esse banco no TNSNAMES.ORA (tomando o CUIDADO de confirmar
> que vc não tem em lugar nenhum assignado valor pra variável TNS_ADMIN
> apontando pra algum lugar não-padrão) e TEM que ter as variáveis
> ORACLE_HOME e PATH setadas apontando para ESSE home aonde no diretório
> NETWORK/ADMIN vc tem o TNSNAMES.ORA correto.....
> Pra testar e demonstrar que não tem NADA A VER a entrada no TNSNAMES..ORA
> com o SID, num ambiente onde tenho 100% de Certeza que não há variável
> TNS_ADMIN setada, no software client Oracle instalado em d:\oracledb19c
> (que inclusive é o client que veio com um database local também instalado
> mas não importa) eu quero configurar ele para acessar um database que
> reside na máquina de IP 192.168.10.20 e atendido  por um listener ouvindo
> na porta 1521 com o SERVICE_NAME XE, vou chamar a entrada de ABOBORA :
>
> C:\Users\User 2am>SET ORACLE_HOME=d:\oracledb19c
> C:\Users\User 2am>SET PATH=%ORACLE_HOME%\bin;%PATH%
>
> C:\Users\User 2am>type %ORACLE_HOME%\network\admin\tnsnames.ora
> # tnsnames.ora Network Configuration File:
> D:\OracleDB19c\NETWORK\ADMIN\tnsnames.ora
> # Generated by Oracle configuration tools.
>
> ORACLR_CONNECTION_DATA =
>   (DESCRIPTION =
>     (ADDRESS_LIST =
>       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1527))
>     )
>     (CONNECT_DATA =
>       (SID = CLRExtProc)
>       (PRESENTATION = RO)
>     )
>   )
>
> ABOBORA =
>   (DESCRIPTION =
>     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.20)(PORT = 1521))
>     (CONNECT_DATA =
>       (SERVER = DEDICATED)
>       (SERVICE_NAME = XE)
>     )
>   )
>
> C:\Users\User 2am>
>
>
> C:\Users\User 2am>tnsping abobora
>
> TNS Ping Utility for 64-bit Windows: Version 19.0.0.0.0 - Production on
> 27-MAI-2020 12:25:43
>
> Copyright (c) 1997, 2019, Oracle.  All rights reserved.
>
> Arquivos de parâmetros usados:
> d:\oracledb19c\network\admin\sqlnet.ora
>
>
> Usado o adaptador TNSNAMES para resolver o apelido
> Tentativa de contatar (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =
> 192.168.10.20)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED)
> (SERVICE_NAME = XE)))
> OK (90 ms)
>
> ==> muito bem, o LISTENER provado acessível pelo TNSPING, vamos
> efetivamente conectar com essa entrada ABOBORA :
>
> C:\Users\User 2am>sqlplus system/oracle@abobora
>
> SQL*Plus: Release 19...0.0.0.0 - Production on Qua Mai 27 12:25:58 2020
> Version 19.3.0.0.0
>
> Copyright (c) 1982, 2019, Oracle.  All rights reserved.
>
> Horário do último log-in bem-sucedido: Ter Mai 26 2020 16:49:31 -03:00
>
> Conectado a:
> Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
> Version 18.4.0.0.0
>
>
> WHERE
> --------------------------------------------------
> CNTNR=CDB$ROOT
>
> 1 linha selecionada..
>
> SYSTEM@abobora::CNTNR=CDB$ROOT>
>
> ==> faça EXATAMENTE esses testes aí na sua máquina que com certeza vc
> Consegue conectar, ou então descobrir onde está teu erro....
>
> []s
>
>   Chiappa
> Em quarta-feira, 27 de maio de 2020 11:37:10 BRT, Eduardo Perdomo
> panc...@gmail.com [oracle_br] <oracle_br@yahoogrupos.com.br> escreveu:
>
>
>
>
> Bom dia.
> Esqueci de mencionar que SID, nesse exemplo são as entradas no
> TNSNAMES.ORA, pois consigo acessar normalmente os dois bancos via
> sqlplus/navigator/dbexpress etc.
> O problema é só no sqlldr que não reconhece a entrada do tbsnames, alias,
> só está reconhecendo uma, como se fosse um default....
>
>
> On Wed, May 27, 2020 at 9:37 AM Jose Laurindo Chiappa
> jlchia...@yahoo.com.br [oracle_br] <oracle_br@yahoogrupos.com.br> wrote:
>
>
>
> Ah, só complementando : nessa toada de conectar via software client Oracle
> (conexão jdbc thin é outra coisa, é conexão direta sem client Oracle) sem
> que vc edite/monte um TNSNAMES.ORA na sua máquina,  além de informar os
> dados de conexão todos vc tem TAMBÉM as possibilidades de :
>
> a) conexão via EZCONNECT, onde vc informa 
> usuario/senha@servername:port/instanceOUservice_name,
> vide  How To: Perform a direct connect to Oracle without a tnsnames.ora
> file <https://support...esri.com/en/technical-article/000010842>
>
> ou
>
> b) vc pode setar a variável TNS_ADMIN apontando pra algum local da sua
> rede onde alguém já criou um arquivo TNSNAMES.ORA 'público', todo mundo usa
> ele
>
> Okdoc ??
>
> How To: Perform a direct connect to Oracle without a tnsnames.ora file
>
> Technical Article Details : How To: Perform a direct connect to Oracle
> without a tnsnames.ora file
> <https://support.esri.com/en/technical-article/000010842>
>
>
>
> Em quarta-feira, 27 de maio de 2020 09:23:40 BRT, Jose Laurindo Chiappa <
> jlchia...@yahoo.com.br <jlchia...@yahoo.com..br>> escreveu:
>
>
> Blz ? Então, vamos por ordem aí : PRIMEIRO, o que vc informa depois do @
> absolutamente *** NÃO É *** um SID, não : isso é uma ENTRADA DE HOST NO
> ARQUIVO TNSNAMES.ORA, ok ??? NADA A VER, o SID é o identificador da
> instância, vc até PODE conectar por ele (principalmente se ele for local)
> mas são coisas Completamente Diferentes....
>  No seu caso, como vc está numa máquina que tem um database Oracle local,
> com CERTEZA vc tem (no registry, provavelmente) uma variável ORACLE_SID
> apontando pra esse banco DEV, E COMO EU DISSE, banco local vc consegue
> conectar só por SID.... Mas como PROD é um banco remoto, vc NÂO TEM COMO
> conectar só por SID, vc TEM que informar um @entradadotns , E TEM QUE CRIAR
> a entrada correspondente no arquivo TNSNAMES.ORA, certo ?? repito, conexão
> por SID é só para banco local, para banco remoto vc TEM que ter uma entrada
> correspondente à esse banco no TNSNAMES.ORA e TEM QUE informar essa entrada
> para as tools de conexão após um @ , blz ?
>
> []s
>
>   Chiappa
>
> OBS : não que eu recomende se fazer isso mas para Informação, em algumas
> tools Oracle (como sqlplus, por exemplo) até é possível vc ao invés de
> informar uma entrada no TNSNAMES.ORA vc passar todos os detalhes da
> conexão, vide
> https://asktom.oracle.com/pls/apex/asktom.search?tag=how-to-connect-sqlplus-without-tnsnamesora
> por exemplo....
>
> -----------------------------
> Bom dia.
>
> Estou tentando fazer um insert via sqlldr no oracle.
> Tenho dois bancos, dev e prod, sendo dev no meu note e prod em outra máquina
> Quando não especifico o sid no parametro userid=usuario/senha aponta para o
> banco local dev
> Quando especifico o SID como userid=usuario/senha@prod, não encontra o
> banco do SID prod
> Como tivesse como default o banco/sid dev.
> Será alguma variável ?
>
> --
>
> Eduardo Perdomo
> Consultor de Implantação
> Totvs - www.totvs.com..br <http://www.totvs.com.br>
> (21) 96845-8592panc...@gmail.comeduardo.perd....@totvs.com.br
>
>
>
>
> --
>
> Eduardo Perdomo
> Consultor de Implantação
> Grupo PC Sistemas - www.grupopc.com.br
> (21) 6845-8592
> panc...@gmail.com
> eduardo.perd...@pcinformatica.com.br
> Blog: eduardo.perdomo.nom.br
>
>
>
>
>
>
> 
>


-- 

Eduardo Perdomo
Consultor de Implantação
Grupo PC Sistemas - www.grupopc.com.br
(21) 6845-8592
panc...@gmail.com
eduardo.perd...@pcinformatica.com.br
Blog: eduardo.perdomo.nom.br
  • [oracle_br] Inser... Eduardo Perdomo panc...@gmail.com [oracle_br]
    • Re: [oracle_... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
      • Re: [ora... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
        • Re: ... Eduardo Perdomo panc...@gmail.com [oracle_br]
          • ... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
            • ... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
    • Re: [oracle_... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
      • Re: [ora... Eduardo Perdomo panc...@gmail.com [oracle_br]
        • RE: ... 'Schiavini' et...@schiavini.inf.br [oracle_br]
        • Re: ... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
          • ... Eduardo Perdomo panc...@gmail.com [oracle_br]
    • RE: [oracle_... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
    • Re: [oracle_... Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
      • Re: [ora... Eduardo Perdomo panc...@gmail.com [oracle_br]

Responder a