Re: [oracle_br] Insert Via sqlldr

2020-05-28 Por tôpico Eduardo Perdomo panc...@gmail.com [oracle_br]
ok, Vou testar com mais calma.
Estava na correria para inserir 3 milhoes de registros e por sqlldr é muito
mais rápido.
Obrigado,

On Thu, May 28, 2020 at 9:59 AM Jose Laurindo Chiappa jlchia...@yahoo.com.br
[oracle_br]  wrote:

>
>
> Tudo blz ? Só agora vi a sua msg, provavelmente este e-mail vai ficar fora
> de ordem na thread, sorry Então, na verdade vc não RESOLVEU, vc só
> Contornou a situação, e realmente um dos contornos era vc Não Usar entrada
> no TNSNAMES.ORA e sim informar diretamente os dados de conexão, e OUTRO
> controno possível era usar EZCONNECT, como eu já havia dito antes
>  Ok que neste momento o contorno/quebra-galho/gambiarra/solução 'técnica'
> possa até te estar atendendo, mas eu RECOMENDO que vc TESTE e CORRIJA a sua
> issue - vai que amanhã vc precise usar algum outro produto/tool de
> programação ou administrativa que NÃO ACEITE o work-around e efetivamente
> EXIJA UM SOFTWARE CLIENT ORACLE corretamente configurado pra funcionar, aí
> vc tá lascado..
> Pra fazer isso , faça como eu já dise : PRIMEIRO, se certifique que vc
> absolutamente Não Tem variável TNS_ADMIN setada em lugar nenhum do
> Registry, em nenhum .BAT que vc execute (ou que seja executado
> automaticamente quando vc loga na rede, ou loga no prompt DOS, etc), nalgum
> profile de Rede, enfim, em nenhum lugar MESMO
> ISSO OK, aí teste o client 10g TAL COMO EU FIZ, setando PLZ na mão tanto
> ORACLE_HOME apontando para o HOME desse client e PATH apontando para
> %ORACLE_HOME%\bin , e aí faça os testes todos que indicamos, não só com
> TNSPING mas TAMBÉM conectando no banco, E INFORMANDO @hoststring : SE qquer
> tool em modo texto nativa que conecta no banco (sqlplus, sqlldr, exp)
> FALHAR com TODAS as variáveis setadas ok vc CERTAMENTE está caindo numa
> Incompatibilidade desse client 10g com banco 11gR2, tal como DOCUMENTADO na
> nota que indiquei antes
> Aí vamos testar o client 11g que veio nesse banco 11g que vc instalou :
> pra isso é a MESMA COISA, sete ORACLE_HOME apontando para o HOME desse
> banco local aí E sete PATH=%ORACLE_HOME%\bin , tendo CERTEZA de que
> %ORACLE_HOME%\network\admin\tnsnames.ora e
> %ORACLE_HOME%\network\admin\sqlnet.ora- estão ok... Com isso, as tools
> TODAS simplesmente TEM QUE FUNCIONAR, vc Absolutamente Não Tem Razão para
> um client 11g não conectar num banco 11g.
>
> Blz ??
>
>  Abraços,
>
>   Chiappa
>
> 
>


-- 

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


Re: [oracle_br] Insert Via sqlldr

2020-05-28 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
Tudo blz ? Só agora vi a sua msg, provavelmente este e-mail vai ficar fora de 
ordem na thread, sorry Então, na verdade vc não RESOLVEU, vc só Contornou a 
situação, e realmente um dos contornos era vc Não Usar entrada no TNSNAMES.ORA 
e sim informar diretamente os dados de conexão, e OUTRO controno possível era 
usar EZCONNECT, como eu já havia dito antes Ok que neste momento o 
contorno/quebra-galho/gambiarra/solução 'técnica' possa até te estar atendendo, 
mas eu RECOMENDO que vc TESTE e CORRIJA a sua issue - vai que amanhã vc precise 
usar algum outro produto/tool de programação ou administrativa que NÃO ACEITE o 
work-around e efetivamente EXIJA UM SOFTWARE CLIENT ORACLE corretamente 
configurado pra funcionar, aí vc tá lascado.Pra fazer isso , faça como eu 
já dise : PRIMEIRO, se certifique que vc absolutamente Não Tem variável 
TNS_ADMIN setada em lugar nenhum do Registry, em nenhum .BAT que vc execute (ou 
que seja executado automaticamente quando vc loga na rede, ou loga no prompt 
DOS, etc), nalgum profile de Rede, enfim, em nenhum lugar MESMO. ISSO OK, 
aí teste o client 10g TAL COMO EU FIZ, setando PLZ na mão tanto ORACLE_HOME 
apontando para o HOME desse client e PATH apontando para %ORACLE_HOME%\bin , e 
aí faça os testes todos que indicamos, não só com TNSPING mas TAMBÉM conectando 
no banco, E INFORMANDO @hoststring : SE qquer tool em modo texto nativa que 
conecta no banco (sqlplus, sqlldr, exp) FALHAR com TODAS as variáveis setadas 
ok vc CERTAMENTE está caindo numa Incompatibilidade desse client 10g com banco 
11gR2, tal como DOCUMENTADO na nota que indiquei antesAí vamos testar o 
client 11g que veio nesse banco 11g que vc instalou : pra isso é a MESMA COISA, 
sete ORACLE_HOME apontando para o HOME desse banco local aí E sete 
PATH=%ORACLE_HOME%\bin , tendo CERTEZA de que 
%ORACLE_HOME%\network\admin\tnsnames.ora e 
%ORACLE_HOME%\network\admin\sqlnet.ora- estão ok... Com isso, as tools TODAS 
simplesmente TEM QUE FUNCIONAR, vc Absolutamente Não Tem Razão para um client 
11g não conectar num banco 11g.
Blz ??
 Abraços,
  Chiappa


Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Eduardo Perdomo panc...@gmail.com [oracle_br]
Boa noite.
Consegui resolver com a seguinte solução:
https://hs2n.wordpress.com/2012/06/12/oracle-using-sqlplus-and-sqlldr-on-databases-without-tnsnames-entry/#comment-700

Obrigado a todos.




On Wed, May 27, 2020 at 8:38 PM Jose Laurindo Chiappa jlchia...@yahoo.com.br
[oracle_br]  wrote:

>
>
> Blz ? Então, principalmente quando vc tem múltiplos produtos Oracle na sua
> máquina , vc SIMPLESMENTE TEM QUE setar diretamente a ORACLE_HOME e o PATH,
> sob penas de confusões as maiores... E ao que parece vc TEM SIM um client
> Oracle 10.2.0.3 E um banco 11.2.0.1 , banco esse que OBVIAMENTE já trouxe
> um client 11.2.0.1 na mesma ORACLE_HOME : eu DEDUZI isso pelas msgs
> "Conectado a:
> Oracle Database 11g Enterprise Edition Release 11.2.0.1.0" E ""SQL*Plus:
> Release 10.2.0.3.0" do sqlplus que vc está usando para conectar nesse
> bancolocal
>
> Sobre qual setar , seguinte : vc quer usar o sqlldr que está nesse client
> 10.2.0.3 (ESPERO que seja um client FULL, instalado com TODAS AS
> FERRAMENTAS, e não um Instant Client!!) , OU vc quer usar o sqlldr desse
> client 11.2.0.1 que veio com o banco 11.2.0.1 ?? Vc seta ORACLE_HOME ( ***
> E *** também PATH, Por Favor) apontando para aquele produto que vc quer
> usar
> Há um ponto ** CRÍTICO ** porém, que só agora eu vejo já que vc NÃO TINHA
> dito antes : vejo agora que esse client 10g que vc tem é 10.2.0.3 , E o
> banco destino é 11.2..0.1 : cfrme a nota do Suporte Oracle "Client /
> Server Interoperability Support Matrix for Different Oracle Versions" (Doc
> ID 207303.1) bem DIRETAMENTE aponta, o client 10g pra conectar no banco
> 11 DEVERIA estar na versão 10.2.0.3 , E o banco deveria estar em 11.2.0.4 -
> qquer combinação FORA desses valores Não É certificada.
> Então pra mim ESSE é seu problema, vc está caindo nalgum BUG por conta de
> versões de client e de server incompatíveis ou ao menos são suportadas
> entre si,,,
>
> Sendo assim, eu RECOMENDO que vc use o client (e o sqlldr claro) que veio
> com esse banco 11g local que vc tem aí... Pra isso, vc faz nesse prompt de
> comandos onde vc está , logado como usuário admin dessa máquina :
>
> SET ORACLE_HOME=n:\homedessebancooracle11g
> SET PATH=%ORACLE_HOME%\bin
>
> e aí valide que vc TEM o executável do sqlldr no local , digitando :
>
> DIR %ORACLE_HOME%\BIN\sqlldr*.*
>
> e o executável TEM que aparecer Aí SIM, com as DUAS variáveis setadas,
> peça um :
>
> TYPE %ORACLE_HOME%\network\admin\TNSNAMES.ORA
>
> E um :
>
> TYPE %ORACLE_HOME%\network\admin\sqlnet.ora
>
> Confirme que TANTO o TNSNAMES.ORA quanto o SQLNET.ORA estão corretos, E
> QUE vc realmente Não tem (nem no REGISTRY nem no proprio prompt dos) a
> variável TNS_ADMIN setada
>
> Tudo ok, aí SIM peça o tnsping , o sqlplus
> user/senha@hoststringdobancoremoto E então o sqlldr
> usuario/senha@hoststringdobancoremoto . resto do comando .
>
> ABraços,
>
>   Chiappa
>
> Em quarta-feira, 27 de maio de 2020 17:30:26 BRT, Eduardo Perdomo
> panc...@gmail.com [oracle_br]  escreveu:
>
>
>
>
> 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: 

RE: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
Sem dúvida, Étore : só agora que o colega mostrou é que percebi que ele tem 
discrepância de versões E além disso o client 10g é de uma versão SEM SUPORTE 
para conectar em banco 11g, e respondi isso pra ele... Realmente nada como um 
TESTE PRÁTICO pra gente pegar esses detalhes

[]s

  Chiappa

RE: [oracle_br] Insert Via sqlldr

'Schiavini' et...@schiavini.inf.br [oracle_br] Wed, 27 May 2020 13:56:23 -0700

Teu sqlplus é de um oracle_home (10g) e o teu sqlloader é de outro (11g).


 

Étore


Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
 Blz ? Então, principalmente quando vc tem múltiplos produtos Oracle na sua 
máquina , vc SIMPLESMENTE TEM QUE setar diretamente a ORACLE_HOME e o PATH, sob 
penas de confusões as maiores... E ao que parece vc TEM SIM um client Oracle 
10.2.0.3 E um banco 11.2.0.1 , banco esse que OBVIAMENTE já trouxe um client 
11.2.0.1 na mesma ORACLE_HOME : eu DEDUZI isso pelas msgs "Conectado a:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0" E ""SQL*Plus: 
Release 10.2.0.3.0" do sqlplus que vc está usando para conectar nesse 
bancolocal
Sobre qual setar , seguinte : vc quer usar o sqlldr que está nesse client 
10.2.0.3 (ESPERO que seja um client FULL, instalado com TODAS AS FERRAMENTAS, e 
não um Instant Client!!) , OU vc quer usar o sqlldr desse client 11.2.0.1 que 
veio com o banco 11.2.0.1 ?? Vc seta ORACLE_HOME ( *** E *** também PATH, Por 
Favor) apontando para aquele produto que vc quer usarHá um ponto ** 
CRÍTICO ** porém, que só agora eu vejo já que vc NÃO TINHA dito antes : vejo 
agora que esse client 10g que vc tem é 10.2.0.3 , E o banco destino é 11.2.0.1 
: cfrme a nota do Suporte Oracle "Client / Server Interoperability Support 
Matrix for Different Oracle Versions" (Doc ID 207303.1) bem DIRETAMENTE aponta, 
o client 10g pra conectar no banco 11 DEVERIA estar na versão 10.2.0..3 , E o 
banco deveria estar em 11.2.0.4 - qquer combinação FORA desses valores Não É 
certificada.Então pra mim ESSE é seu problema, vc está caindo nalgum BUG 
por conta de versões de client e de server incompatíveis ou ao menos são 
suportadas entre si,,,

Sendo assim, eu RECOMENDO que vc use o client (e o sqlldr claro) que veio com 
esse banco 11g local que vc tem aí... Pra isso, vc faz nesse prompt de comandos 
onde vc está , logado como usuário admin dessa máquina :
SET ORACLE_HOME=n:\homedessebancooracle11gSET PATH=%ORACLE_HOME%\bin
e aí valide que vc TEM o executável do sqlldr no local , digitando :
DIR %ORACLE_HOME%\BIN\sqlldr*.*
e o executável TEM que aparecer Aí SIM, com as DUAS variáveis setadas, peça 
um :
TYPE %ORACLE_HOME%\network\admin\TNSNAMES.ORA
E um :
TYPE %ORACLE_HOME%\network\admin\sqlnet.ora
Confirme que TANTO o TNSNAMES.ORA quanto o SQLNET.ORA estão corretos, E QUE vc 
realmente Não tem (nem no REGISTRY nem no proprio prompt dos) a variável 
TNS_ADMIN setada
Tudo ok, aí SIM peça o tnsping , o sqlplus user/senha@hoststringdobancoremoto E 
então o sqlldr usuario/senha@hoststringdobancoremoto . resto do comando 
.
ABraços,
  Chiappa

Em quarta-feira, 27 de maio de 2020 17:30:26 BRT, Eduardo Perdomo 
panc...@gmail.com [oracle_br]  escreveu:  
 
  

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 

RE: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico 'Schiavini' et...@schiavini.inf.br [oracle_br]
Teu sqlplus é de um oracle_home (10g) e o teu sqlloader é de outro (11g).

 

Étore

 

From: oracle_br@yahoogrupos.com.br  
Sent: quarta-feira, 27 de maio de 2020 17:39
To: oracle_br@yahoogrupos.com.br
Subject: Re: [oracle_br] Insert Via sqlldr

 

  

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 
<mailto:jlchia...@yahoo.com..br>  [oracle_br] mailto: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 'emp

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Eduardo Perdomo panc...@gmail.com [oracle_br]
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]  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 

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
 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]  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 

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
 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]  escreveu:  
 
 #yiv3977279242 #yiv3977279242 -- #yiv3977279242 
.yiv3977279242ygrp-photo-title{clear:both;font-size:smaller;min-height:15px;overflow:hidden;text-align:center;width:75px;}#yiv3977279242
 
div.yiv3977279242ygrp-photo{background-position:center;background-repeat:no-repeat;background-color:white;border:1px
 solid black;min-height:62px;width:62px;}#yiv3977279242 
div.yiv3977279242photo-title a, #yiv3977279242 div.yiv3977279242photo-title 
a:active, #yiv3977279242 div.yiv3977279242photo-title a:hover, #yiv3977279242 
div.yiv3977279242photo-title a:visited {text-decoration:none;}#yiv3977279242 
div.yiv3977279242attach-table div.yiv3977279242attach-row 
{clear:both;}#yiv3977279242 div.yiv3977279242attach-table 
div.yiv3977279242attach-row div {float:left;}#yiv3977279242 p 
{clear:both;padding:15px 0 3px 0;overflow:hidden;}#yiv3977279242 
div.yiv3977279242ygrp-file {width:30px;}#yiv3977279242 
div.yiv3977279242attach-table div.yiv3977279242attach-row div div a 
{text-decoration:none;}#yiv3977279242 div.yiv3977279242attach-table 
div.yiv3977279242attach-row div div span {font-weight:normal;}#yiv3977279242 
div.yiv3977279242ygrp-file-title {font-weight:bold;}#yiv3977279242 
#yiv3977279242 

 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 conceitosMuito 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 

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
 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 conceitosMuito 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 corretoPra 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]  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]  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
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
 |

 |

 |




Em quarta-feira, 27 de maio de 2020 09:23:40 BRT, Jose Laurindo Chiappa 
 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 

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Eduardo Perdomo panc...@gmail.com [oracle_br]
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]  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 
>
> 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
> 
>
>
>
> Em quarta-feira, 27 de maio de 2020 09:23:40 BRT, Jose Laurindo Chiappa <
> 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
> (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


Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
 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
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
 |

 |

 |




Em quarta-feira, 27 de maio de 2020 09:23:40 BRT, Jose Laurindo Chiappa 
 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
(21) 96845-8592
panc...@gmail.com
eduardo.perd...@totvs.com.br

  

Re: [oracle_br] Insert Via sqlldr

2020-05-27 Por tôpico Jose Laurindo Chiappa jlchia...@yahoo.com.br [oracle_br]
Blz ? Então, vamos por odem 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
(21) 96845-8592
panc...@gmail.com
eduardo.perd...@totvs.com.br