Re: [oracle_br] Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico Willian Fernando Frasson
Boa Noite, 

Monte tudo dentro de apenas um script, via shell, chamando todos
comandos dentro dele de switch etc, faça a copia dos archives dentro
dele.. e criei um arquivo look para ter certeza que o mesmo não está em
execução, faça o recover automatic database using backup controlfile
until cancel; de tempos em tempos

Em Qui, 2009-05-21 às 16:08 -0300, Carlos Alfredo M. de Menezes
escreveu:
> 
> 
> Colega,
> Existem várias formas de fazer isso, eu gosto de usar jobs agendados
> via 
> SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar
> o 
> comando "alter system switch logfile;" e usará o rsync para
> sincronizar 
> as pastas do destino do archivelog para outra pasta no servidor de
> standby.
> 
> Att,
> 
> candiurudba escreveu:
> >
> >
> > Boa tarde colegas, tudo bom ?
> >
> > Durante algum tempo, iniciei os estudos para implementar uma
> política 
> > de disaster recovery visando o uso de um Stand By Database e como
> faço 
> > uso do standard edition, não sou contemplado com o DG, por isso,
> tenho 
> > algumas dúvidas...
> >
> > Pelo que andei lendo, o ideal seria o desenvolvimento de um
> primeiro 
> > script para efetuar um switch logfile de tempos em tempos (talvez
> de 
> > 20 em 20 minutos). Não existe no banco, nenhum parametro onde
> possamos 
> > setar estes switchs automaticos, conforme nossa necessidade ? Algum 
> > parametro no spfile talvez..algum alter system set... ?
> >
> > Quanto a cópia dos archives para o outro servidor. não posso 
> > configurar algum parametro ARCHIVE_LOG_DEST_2='??' para que estes 
> > archives sejam gerados no mesmo servidor e tambem enviados para o
> outro ?
> >
> > Nesta semana ja devo começar alguns testes...estu querendo
> implementar 
> > aqui na empresa na proxima semana
> >
> > agradeço a ajuda
> >
> > 
> 
> 
> 
> 

__
Fa�a liga��es para outros computadores com o novo Yahoo! Messenger 
http://br.beta.messenger.yahoo.com/ 


RES: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico Carlos Alfredo Martins Menezes
Nelson,
Eu uso a versão Standard também, mas confesso que nunca testei com o segundo 
destination, me parece que não rola, de qq forma eu uso um job para fazer uma 
cópia para outro servidor, que não é um standby database. Eu uso RAC e meus 
archives estão dentro do ASM, então eu faço um backup dos archived logs via 
rman para uma pasta no disco em alguns momentos do dia para depois sincronizar 
com outro servidor, aí fico com uma cópia no storage, no disco interno do 
servidor, para poder subir para fita, e no servidor externo.
 
Att,
Carlos Alfredo



De: oracle_br@yahoogrupos.com.br em nome de Nelson Cartaxo
Enviada: qui 21/5/2009 17:23
Para: oracle_br@yahoogrupos.com.br
Assunto: Res: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition





Carlos, tira uma dúvida. Não seria melhor colocar o log_archive_dest_2 e o 
serviço para copiar para outra máquina? Ou nessa versão isso não é possivel? 
Aqui uso o Enterprise e a cópia funciona perfeitamente colocando o 2.

Abs


De: Carlos Alfredo M. de Menezes mailto:carlos.menezes%40usinacoruripe.com.br> >
Para: oracle_br@yahoogrupos.com.br  
Enviadas: Quinta-feira, 21 de Maio de 2009 17:05:18
Assunto: Re: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition

Colega,
Não é muito difícil não, mas é preciso conhecer algumas ferramentas: 
cron, executar comandos sql dentro de jobs, rsync e transporte de 
credenciais entre hosts. Não tenho um material único, mas vou tentar te 
passar um job exemplo, a parte de credenciais automáticas entre hosts, 
vc aprende no manual de instalação de Oracle RAC, é a mesma coisa.

Crie o arquivo copia_archive. sh no home directory da conta oracle, 
geralmente /home/oracle, com o seguinte conteúdo:

#Inicio do arquivo copia_archive. sh
#OBS: AINDA NÃO TESTADO, FEITO AGORA
#
# Seta variaveis de ambiente
export ORACLE_HOME= 
export ORACLE_SID=< coloque aqui o nome da instância>
export ARCH_ORIGEM= 
export HOST_DESTINO= 
export ARCH_DESTINO= 

#Executa o switch do logfile
$ORACLE_HOME/ bin/sqlplus "/ as sysdba" << !
alter system switch logfile;
exit;
!

#Vamos esperar alguns segundos para o processo ARCH completar a copia
sleep 20

#Vamos sincronizar as pastas
rsync -t $ARCH_ORIGEM/ * $HOST_DESTINO: $ARCH_DESTINO

#Fim do arquivo copia_archive. sh

Depois de criado o arquivo ,fiz ele agora, favor corrigir possível bug 
:-) rode o comando:
chmod +x copia_archive. sh

Antes de agendar via cron, veja se o mesmo executa normalmente, veja se 
faz o swith do logfile corrente e veja se ele faz a sincronização das 
pastas, lembrando que do jeito que fiz, o rsync usa as mesma conta entre 
os servidores de origem e destino, como disse, tem que dá uma lida no 
manual de instalação do Oracle RAC, lá tem uma parte que fala como ter 
essas credenciais automáticas entre hosts.

Se tudo funcionar bem, só falta agendar via cron, vamos supor que vc 
queira agendar para rodar a cada 20 minutos, faça assim:
1- execute crontab -e
2- insira a seguinte linha: 00,20,40 * * * * 
/home/oracle/ copia_archive. sh
3- salve o arquivo e saia (:wq)

Faça as customizações e correções que precisar e teste.

Espero ter ajudado.

Att,
Carlos Alfredo

candiurudba escreveu:
>
>
> Vc tem alguma documentação ? Ou sabe posso encontrar uma documentação 
> sobre esta forma de replicação ?
>
> Tambem trabalho com Linux (Suse 10)...
>
> Pensei em fazer backup da base de dados, coloca-la em um outro 
> servidor..deixar a base montada e ir aplicando os archives...mas o 
> transporte para o outro servidor é que me deixa meio encucado...
>
> --- Em oracle...@yahoogrup os.com.br 
> , "Carlos Alfredo M. de 
> Menezes"  escreveu
> >
> > Colega,
> > Existem várias formas de fazer isso, eu gosto de usar jobs agendados 
> via
> > SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o
> > comando "alter system switch logfile;" e usará o rsync para sincronizar
> > as pastas do destino do archivelog para outra pasta no servidor de 
> standby.
> >
> > Att,
> >
> >
> >
> > candiurudba escreveu:
> > >
> > >
> > > Boa tarde colegas, tudo bom ?
> > >
> > > Durante algum tempo, iniciei os estudos para implementar uma política
> > > de disaster recovery visando o uso de um Stand By Database e como 
> faço
> > > uso do standard edition, não sou contemplado com o DG, por isso, 
> tenho
> > > algumas dúvidas...
> > >
> > > Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro
> > > script para efetuar um switch logfile de tempos em tempos (talvez de
> > > 20 em 20 minutos). Não existe no banco, nenhum parametro onde 
> possamos
> > > setar estes switchs automaticos, conforme nossa necessidade ? Algum
> > > parametro no spfile talvez..algum alter system set... ?
> > >
> > > Quanto a cópia dos archives para o outro servidor. não posso
> > > configurar algum parametro ARCHIVE_LOG_ DEST_2='? ?' para que este

Res: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico Nelson Cartaxo
Carlos, tira uma dúvida. Não seria melhor colocar o log_archive_dest_2 e o 
serviço para copiar para outra máquina? Ou nessa versão isso não é possivel? 
Aqui uso o Enterprise e a cópia funciona perfeitamente colocando o 2.

Abs





De: Carlos Alfredo M. de Menezes 
Para: oracle_br@yahoogrupos.com.br
Enviadas: Quinta-feira, 21 de Maio de 2009 17:05:18
Assunto: Re: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition





Colega,
Não é muito difícil não, mas é preciso conhecer algumas ferramentas: 
cron, executar comandos sql dentro de jobs, rsync e transporte de 
credenciais entre hosts. Não tenho um material único, mas vou tentar te 
passar um job exemplo, a parte de credenciais automáticas entre hosts, 
vc aprende no manual de instalação de Oracle RAC, é a mesma coisa.

Crie o arquivo copia_archive. sh no home directory da conta oracle, 
geralmente /home/oracle, com o seguinte conteúdo:

#Inicio do arquivo copia_archive. sh
#OBS: AINDA NÃO TESTADO, FEITO AGORA
#
# Seta variaveis de ambiente
export ORACLE_HOME= 
export ORACLE_SID=< coloque aqui o nome da instância>
export ARCH_ORIGEM= 
export HOST_DESTINO= 
export ARCH_DESTINO= 

#Executa o switch do logfile
$ORACLE_HOME/ bin/sqlplus "/ as sysdba" << !
alter system switch logfile;
exit;
!

#Vamos esperar alguns segundos para o processo ARCH completar a copia
sleep 20

#Vamos sincronizar as pastas
rsync -t $ARCH_ORIGEM/ * $HOST_DESTINO: $ARCH_DESTINO

#Fim do arquivo copia_archive. sh

Depois de criado o arquivo ,fiz ele agora, favor corrigir possível bug 
:-) rode o comando:
chmod +x copia_archive. sh

Antes de agendar via cron, veja se o mesmo executa normalmente, veja se 
faz o swith do logfile corrente e veja se ele faz a sincronização das 
pastas, lembrando que do jeito que fiz, o rsync usa as mesma conta entre 
os servidores de origem e destino, como disse, tem que dá uma lida no 
manual de instalação do Oracle RAC, lá tem uma parte que fala como ter 
essas credenciais automáticas entre hosts.

Se tudo funcionar bem, só falta agendar via cron, vamos supor que vc 
queira agendar para rodar a cada 20 minutos, faça assim:
1- execute crontab -e
2- insira a seguinte linha: 00,20,40 * * * * 
/home/oracle/ copia_archive. sh
3- salve o arquivo e saia (:wq)

Faça as customizações e correções que precisar e teste.

Espero ter ajudado.

Att,
Carlos Alfredo

candiurudba escreveu:
>
>
> Vc tem alguma documentação ? Ou sabe posso encontrar uma documentação 
> sobre esta forma de replicação ?
>
> Tambem trabalho com Linux (Suse 10)...
>
> Pensei em fazer backup da base de dados, coloca-la em um outro 
> servidor..deixar a base montada e ir aplicando os archives...mas o 
> transporte para o outro servidor é que me deixa meio encucado...
>
> --- Em oracle...@yahoogrup os.com.br 
> , "Carlos Alfredo M. de 
> Menezes"  escreveu
> >
> > Colega,
> > Existem várias formas de fazer isso, eu gosto de usar jobs agendados 
> via
> > SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o
> > comando "alter system switch logfile;" e usará o rsync para sincronizar
> > as pastas do destino do archivelog para outra pasta no servidor de 
> standby.
> >
> > Att,
> >
> >
> >
> > candiurudba escreveu:
> > >
> > >
> > > Boa tarde colegas, tudo bom ?
> > >
> > > Durante algum tempo, iniciei os estudos para implementar uma política
> > > de disaster recovery visando o uso de um Stand By Database e como 
> faço
> > > uso do standard edition, não sou contemplado com o DG, por isso, 
> tenho
> > > algumas dúvidas...
> > >
> > > Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro
> > > script para efetuar um switch logfile de tempos em tempos (talvez de
> > > 20 em 20 minutos). Não existe no banco, nenhum parametro onde 
> possamos
> > > setar estes switchs automaticos, conforme nossa necessidade ? Algum
> > > parametro no spfile talvez..algum alter system set... ?
> > >
> > > Quanto a cópia dos archives para o outro servidor. não posso
> > > configurar algum parametro ARCHIVE_LOG_ DEST_2='? ?' para que estes
> > > archives sejam gerados no mesmo servidor e tambem enviados para o 
> outro ?
> > >
> > > Nesta semana ja devo começar alguns testes...estu querendo 
> implementar
> > > aqui na empresa na proxima semana
> > >
> > > agradeço a ajuda
> > >
> > >
> >
>
> 




  Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]



Res: [oracle_br] Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico antonio galery
Tente o parâmetro *.archive_lag_target, ele é implementado no init.ora do 
primary database e, dependendo do tempo em segundos, é gerado um archivelog que 
permitrá que vc garanta um mínimo de perda, na ocorrência de perda do bd 
primário (5 minutos por exemplo).
Galery.





De: Carlos Alfredo M. de Menezes 
Para: oracle_br@yahoogrupos.com.br
Enviadas: Quinta-feira, 21 de Maio de 2009 16:08:33
Assunto: Re: [oracle_br] Planejamento - StandBy Database - Standard Edition





Colega,
Existem várias formas de fazer isso, eu gosto de usar jobs agendados via 
SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o 
comando "alter system switch logfile;" e usará o rsync para sincronizar 
as pastas do destino do archivelog para outra pasta no servidor de standby.

Att,

candiurudba escreveu:
>
>
> Boa tarde colegas, tudo bom ?
>
> Durante algum tempo, iniciei os estudos para implementar uma política 
> de disaster recovery visando o uso de um Stand By Database e como faço 
> uso do standard edition, não sou contemplado com o DG, por isso, tenho 
> algumas dúvidas...
>
> Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro 
> script para efetuar um switch logfile de tempos em tempos (talvez de 
> 20 em 20 minutos). Não existe no banco, nenhum parametro onde possamos 
> setar estes switchs automaticos, conforme nossa necessidade ? Algum 
> parametro no spfile talvez..algum alter system set... ?
>
> Quanto a cópia dos archives para o outro servidor. não posso 
> configurar algum parametro ARCHIVE_LOG_ DEST_2='? ?' para que estes 
> archives sejam gerados no mesmo servidor e tambem enviados para o outro ?
>
> Nesta semana ja devo começar alguns testes...estu querendo implementar 
> aqui na empresa na proxima semana
>
> agradeço a ajuda
>
> 




  Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Re: Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico Carlos Alfredo M. de Menezes
Colega,
Não é muito difícil não, mas é preciso conhecer algumas ferramentas: 
cron, executar comandos sql dentro de jobs, rsync e transporte de 
credenciais entre hosts. Não tenho um material único, mas vou tentar te 
passar um job exemplo, a parte de credenciais automáticas entre hosts, 
vc aprende no manual de instalação de Oracle RAC, é a mesma coisa.


Crie o arquivo copia_archive.sh no home directory da conta oracle, 
geralmente /home/oracle, com o seguinte conteúdo:

#Inicio do arquivo copia_archive.sh
#OBS: AINDA NÃO TESTADO, FEITO AGORA
#
# Seta variaveis de ambiente
export ORACLE_HOME=
export ORACLE_SID=
export ARCH_ORIGEM=
export HOST_DESTINO=
export ARCH_DESTINO=

#Executa o switch do logfile
$ORACLE_HOME/bin/sqlplus "/ as sysdba" << !
alter system switch logfile;
exit;
!

#Vamos esperar alguns segundos para o processo ARCH completar a copia
sleep 20

#Vamos sincronizar as pastas
rsync -t $ARCH_ORIGEM/*  $HOST_DESTINO:$ARCH_DESTINO

#Fim do arquivo copia_archive.sh

Depois de criado o arquivo ,fiz ele agora, favor corrigir possível bug 
:-) rode o comando:
chmod +x copia_archive.sh

Antes de agendar via cron, veja se o mesmo executa normalmente, veja se 
faz o swith do logfile corrente e veja se ele faz a sincronização das 
pastas, lembrando que do jeito que fiz, o rsync usa as mesma conta entre 
os servidores de origem e destino, como disse, tem que dá uma lida no 
manual de instalação do Oracle RAC, lá tem uma parte que fala como ter 
essas credenciais automáticas entre hosts.

Se tudo funcionar bem, só falta agendar via cron, vamos supor que vc 
queira agendar para rodar a cada 20 minutos, faça assim:
1- execute crontab -e
2- insira a seguinte linha: 00,20,40 * * * * 
/home/oracle/copia_archive.sh
3- salve o arquivo e saia (:wq)

Faça as customizações e correções que precisar e teste.

Espero ter ajudado.

Att,
Carlos Alfredo



candiurudba escreveu:
>
>
> Vc tem alguma documentação ? Ou sabe posso encontrar uma documentação 
> sobre esta forma de replicação ?
>
> Tambem trabalho com Linux (Suse 10)...
>
> Pensei em fazer backup da base de dados, coloca-la em um outro 
> servidor..deixar a base montada e ir aplicando os archives...mas o 
> transporte para o outro servidor é que me deixa meio encucado...
>
> --- Em oracle_br@yahoogrupos.com.br 
> , "Carlos Alfredo M. de 
> Menezes"  escreveu
> >
> > Colega,
> > Existem várias formas de fazer isso, eu gosto de usar jobs agendados 
> via
> > SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o
> > comando "alter system switch logfile;" e usará o rsync para sincronizar
> > as pastas do destino do archivelog para outra pasta no servidor de 
> standby.
> >
> > Att,
> >
> >
> >
> > candiurudba escreveu:
> > >
> > >
> > > Boa tarde colegas, tudo bom ?
> > >
> > > Durante algum tempo, iniciei os estudos para implementar uma política
> > > de disaster recovery visando o uso de um Stand By Database e como 
> faço
> > > uso do standard edition, não sou contemplado com o DG, por isso, 
> tenho
> > > algumas dúvidas...
> > >
> > > Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro
> > > script para efetuar um switch logfile de tempos em tempos (talvez de
> > > 20 em 20 minutos). Não existe no banco, nenhum parametro onde 
> possamos
> > > setar estes switchs automaticos, conforme nossa necessidade ? Algum
> > > parametro no spfile talvez..algum alter system set... ?
> > >
> > > Quanto a cópia dos archives para o outro servidor. não posso
> > > configurar algum parametro ARCHIVE_LOG_DEST_2='??' para que estes
> > > archives sejam gerados no mesmo servidor e tambem enviados para o 
> outro ?
> > >
> > > Nesta semana ja devo começar alguns testes...estu querendo 
> implementar
> > > aqui na empresa na proxima semana
> > >
> > > agradeço a ajuda
> > >
> > >
> >
>
> 


[oracle_br] Re: Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico candiurudba
Vc tem alguma documentação ? Ou sabe posso encontrar uma documentação sobre 
esta forma de replicação ?

Tambem trabalho com Linux (Suse 10)...

Pensei em fazer backup da base de dados, coloca-la em um outro servidor..deixar 
a base montada e ir aplicando os archives...mas o transporte para o outro 
servidor é que me deixa meio encucado...


--- Em oracle_br@yahoogrupos.com.br, "Carlos Alfredo M. de Menezes" 
 escreveu
>
> Colega,
> Existem várias formas de fazer isso, eu gosto de usar jobs agendados via 
> SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o 
> comando  "alter system switch logfile;" e usará o rsync para sincronizar 
> as pastas do  destino do archivelog para outra pasta no servidor de standby.
> 
> Att,
> 
> 
> 
> candiurudba escreveu:
> >
> >
> > Boa tarde colegas, tudo bom ?
> >
> > Durante algum tempo, iniciei os estudos para implementar uma política 
> > de disaster recovery visando o uso de um Stand By Database e como faço 
> > uso do standard edition, não sou contemplado com o DG, por isso, tenho 
> > algumas dúvidas...
> >
> > Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro 
> > script para efetuar um switch logfile de tempos em tempos (talvez de 
> > 20 em 20 minutos). Não existe no banco, nenhum parametro onde possamos 
> > setar estes switchs automaticos, conforme nossa necessidade ? Algum 
> > parametro no spfile talvez..algum alter system set... ?
> >
> > Quanto a cópia dos archives para o outro servidor. não posso 
> > configurar algum parametro ARCHIVE_LOG_DEST_2='??' para que estes 
> > archives sejam gerados no mesmo servidor e tambem enviados para o outro ?
> >
> > Nesta semana ja devo começar alguns testes...estu querendo implementar 
> > aqui na empresa na proxima semana
> >
> > agradeço a ajuda
> >
> >
>




Re: [oracle_br] Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico Carlos Alfredo M. de Menezes
Colega,
Existem várias formas de fazer isso, eu gosto de usar jobs agendados via 
SO, no meu caso, Linux. Nesse job vc chamará o sqlplus para executar o 
comando  "alter system switch logfile;" e usará o rsync para sincronizar 
as pastas do  destino do archivelog para outra pasta no servidor de standby.

Att,



candiurudba escreveu:
>
>
> Boa tarde colegas, tudo bom ?
>
> Durante algum tempo, iniciei os estudos para implementar uma política 
> de disaster recovery visando o uso de um Stand By Database e como faço 
> uso do standard edition, não sou contemplado com o DG, por isso, tenho 
> algumas dúvidas...
>
> Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro 
> script para efetuar um switch logfile de tempos em tempos (talvez de 
> 20 em 20 minutos). Não existe no banco, nenhum parametro onde possamos 
> setar estes switchs automaticos, conforme nossa necessidade ? Algum 
> parametro no spfile talvez..algum alter system set... ?
>
> Quanto a cópia dos archives para o outro servidor. não posso 
> configurar algum parametro ARCHIVE_LOG_DEST_2='??' para que estes 
> archives sejam gerados no mesmo servidor e tambem enviados para o outro ?
>
> Nesta semana ja devo começar alguns testes...estu querendo implementar 
> aqui na empresa na proxima semana
>
> agradeço a ajuda
>
> 


[oracle_br] Planejamento - StandBy Database - Standard Edition

2009-05-21 Por tôpico candiurudba
Boa tarde colegas, tudo bom ?

Durante algum tempo, iniciei os estudos para implementar uma política de 
disaster recovery visando o uso de um Stand By Database e como faço uso do 
standard edition, não sou contemplado com o DG, por isso, tenho algumas 
dúvidas...

Pelo que andei lendo, o ideal seria o desenvolvimento de um primeiro script 
para efetuar um switch logfile de tempos em tempos (talvez de 20 em  20 
minutos). Não existe no banco, nenhum parametro onde possamos setar estes 
switchs automaticos, conforme nossa necessidade ? Algum parametro no spfile 
talvez..algum alter system set... ?

Quanto a cópia dos archives para o outro servidor. não posso configurar algum 
parametro ARCHIVE_LOG_DEST_2='??' para que estes archives sejam gerados no 
mesmo servidor e tambem enviados para o outro ?

Nesta semana ja devo começar alguns testes...estu querendo implementar aqui na 
empresa na proxima semana

agradeço a ajuda



[oracle_br] Re: SQLPLUSW - Bug

2009-05-21 Por tôpico jlchiappa
Sim, com certeza o sqlplus.exe (modo texto) está aqui pra ficar, ele é usado 
até internamente pela Oracle (como em alguns one-off patches, , é usado na 
própria Criação do banco (pelo dbca ,quando vc não cria o banco online), e por 
vários outros assistentes, não tem como MESMO a Oracle querer descontinuar...
 Isso posto : tanto em casa quanto em clientes tenho várias máquinas com XP e 
uso nelas o sqlplusw.exe normalmente , APENAS (óbvio) eu *** não *** uso o 
client 10.2.0.1 , ele é pré-historicamente ANTIGO, tinha os seus tantos quantos 
bugs Com client 10.2.0.4 uso normalmente o recurso , o procedimento que 
sigo é :
  menu Opções, Ambiente, em Buffer de tela (*** não em Arraysize nem nada) eu 
coloco largura do buffer no máximo permitido (2000 iirc), comprimento 2000 ou 
algo similar (que é razoável), click em OK, OK no warning, LINESIZE IDÊNTICA à 
largura do buffer (esse valor 1 que vc cita é anormalmente alto, é BEM 
capaz de te dar problemas mil), e maximizo a tela , é isso.  .
   Num cliente 10.2.0.4 com o sqlplusw 10.2.0.4 faça o teste que deve 
funcionar,sim...
   
   []s
   
 Chiappa
 
--- Em oracle_br@yahoogrupos.com.br, Ricardo Portilho Proni  
escreveu
>
> Oi Regis.
> 
> Não sei qual é o problema.
> Só estou escrevendo para te desincentivar mais ainda a usar o SQLPLUSW.
> 
> Ele foi descontinuado pela Oracle e você não o verá nas próximas
> versões. O isqlplus também (foi tarde).
> 
> No 11g já vem o SQL Developer.
> Eu prefiro o sqlplus. Ele não será descontinuado tão cedo, tenho
> certeza.
> 
> -  
> Ricardo Portilho Proni
> http://portilho.profissionaloracle.com.br
> 
> 
> 
> Em Qui, 2009-05-21 às 16:30 +, Regis Bavaresco escreveu:
> > 
> > 
> > Pessoal,
> > 
> > Tinha uma instalação de Oracle Client 10g em meu computador e o mesmo
> > funcionava muito bem, troquei de maquina mas mantive o sistema
> > operacional e fui fazer a mesma instalação (idêntica) inclusive com o
> > mesmo cd, mesmas opçoes e o sqlplus apresentou aquele maldito bug de
> > tela ele não corre a tela para o lado direito, mesmo definindo
> > linesize maior ex: 1 e arraysize 1. Para fazer isso funcionar é
> > necessário acessar, environment, arraysize 1, confirmar e depois
> > minimizar e maximizar o programa novamente, mas quando ele faz uma
> > leitura de muitos objetos, por exemplo da dba_objects, aparece o erro
> > de referencia a memória e aborta o programa. 
> > 
> > Alguém achou algum conserto milagroso para esse bug? Já procurei no
> > metalink e inclusive aqui no fórum mas todas as soluções são
> > paleativas. Que probleminha mais chato, chega a desincentivar o uso do
> > SQLPLUS no Windows, que é uma das melhores ferramentas da Oracle.
> > 
> > Dados técnicos: 
> > oracle client 10g - 10.2.0.1
> > windows xp sp3 - atualizado pelos ultimos patchs de maio da Microsoft.
> > 
> > 
> > 
> > 
> >
>




Re: [oracle_br] Re: Detectar quebra de linha

2009-05-21 Por tôpico francisco porfirio
Chiapa eu tinha feito da forma **franciscana** que você falou.


Fiz uma lógica bem simples, sei que não é a melhor, porém como eu estava com
uma certa urgência, desenvolvi dessa forma.
No meu caso ele pega cada linha de um campo string e posteriormente insere
em uma tabela.


DECLARE
   var_qtd_caracter PLS_INTEGER;
   var_posicao_anterior PLS_INTEGER;
   var_posicao_atual PLS_INTEGER;
BEGIN

   var_posicao_anterior:=0;
   var_posicao_atual := 0;
   FOR varre IN(SELECT translate(nome_do_campo,chr(10)||chr(13),'|')||'|'
nome_do_campo,
   length(translate(nome_do_campo,chr(10)||chr(13),'|'))
- length(replace(translate(nome_do_campo,chr(10)||chr(13),'|'),'|',''))+1
qtd_enter
  FROM noe_da_tabela
 WHERE instr(nome_do_campo,chr(10)) >0)
   LOOP

  FOR enter IN 1..varre.qtd_enter
  LOOP
 IF(enter = 1)THEN

INSERT
  INTO enter_teste
VALUES
(replace(substr(varre.nome_do_campo,1,instr(varre.nome_do_campo,'|',1,1)),'|','')
   );
  COMMIT;
ELSE

var_posicao_anterior :=
instr(varre.nome_do_campo,'|',1,enter-1);
var_posicao_atual :=
instr(varre.nome_do_campo,'|',1,enter)-instr(varre.nome_do_campo,'|',1,enter-1);


INSERT
  INTO enter_teste
VALUES (varre.bad_codigo_beneficio,

replace(substr(varre.nome_do_campo,var_posicao_anterior,var_posicao_atual),'|',''));

 COMMIT;
 END IF;
  END LOOP;
   END LOOP;
END;


-- 
Atenciosamente
Francisco Porfirio Ribeiro Neto


[As partes desta mensagem que não continham texto foram removidas]



Re: [oracle_br] Re: Detectar quebra de linha

2009-05-21 Por tôpico Marcos Braga
Oi Francisco,

Adaptando a solução do Chiappa, dá uma olhada nesse exemplo...

--
SQL> create table t1 (c1 varchar2(50));

Tabela criada.

SQL> insert into t1 values ('primeiralinha
  2  segundalinha
  3  terceiralinha');

1 linha criada.

SQL> insert into t1 values ('primeiralinha'||chr(10)||'segundalinha');

1 linha criada.

SQL> insert into t1 values ('unica linha');

1 linha criada.

SQL> commit;

Commit concluido.

SQL> select * from t1;

C1
--
primeiralinha
segundalinha
terceiralinha

primeiralinha
segundalinha

unica linha

3 linhas selecionadas.

SQL> select c1 from t1 where regexp_like(c1, chr(10));

C1
--
primeiralinha
segundalinha
terceiralinha

primeiralinha
segundalinha


2 linhas selecionadas.

SQL> select
  2  c1,
  3  (length(c1) -
nvl(length(replace(c1,chr(10),'')),0))/length(chr(10)) cnt
  4  from t1 where regexp_like(c1, chr(10));

C1CNT
-- --
primeiralinha   2
segundalinha
terceiralinha

primeiralinha   1
segundalinha

2 linhas selecionadas.

SQL>
--

Funciona para contar ENTER's que é uma maravilha

[]s
Braga

2009/5/21 jlchiappa 

>
>
> Bom, primeiro contagem de ocorrências de um dado caracter numa string : até
> existem algumas funções que se poderia usar , dependendo ** fundamentalmente
> ** da versão de banco, que pra variar vc não diz, mas a contagem só com
> funções genéricas é franciscanamente SIMPLES, vc tira do comprimento da
> string original o comprimento dela SEM o caracter desejado, kapluft , tipo +
> ou - :
>
> select (length(:main_str) -
> nvl(length(replace(:main_str,:srch_str,'')),0))/
> length(:srch_str) cnt
> from dual;
>
> Isso em qquer versão, mas já se for banco 10g vc pode usar as funções de
> regexp, há uma count lá...
>
> Já pra retornar cada posição de cada ocorrência vc terá, afaik, que ter uma
> lógica de loop, ie : vc tem várias funções que retornam a posição de uma
> dada ocorrência dum caracter (como a INSTR , ou algumas do pacote regexp no
> 10g), vc teria que executar a função escolhida n vezes, uma pra cada
> ocorrência - isso poderia ser um loop PL/SQL (a opção mais simples, afaik)
> ou se exigido que seja em SQL apenas aí provavelmente vc teria que escrever
> um SQL mais complexo, repetindo n vezes um select instr da string from dual,
> já seria algo BEM mais complexo, mas possível, certamente.
>
> []s
>
> Chiappa
> --- Em oracle_br@yahoogrupos.com.br ,
> francisco porfirio  escreveu
>
> >
> > Caros,
> >
> > Gostaria de um axulio de vocês.
> >
> > Estou precisando detectar as quebras de linhas da minha string.
> >
> > Consegui detecar apenas a primeira debra de linha atavés do instr.
> >
> > Alguem sabe informar se tem alguma função que me retorne a posição de
> todos
> > os caracter do tipo quebra de linha "chr(10)", ou que ao menos me informe
> > quantas vezes esse caracter se repete na minha tring ?
> >
> > obrigado;
> >
> > --
> > Atenciosamente
> > Francisco Porfirio Ribeiro Neto
>


[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Re: Detectar quebra de linha

2009-05-21 Por tôpico jlchiappa
Bom, primeiro contagem de ocorrências de um dado caracter numa string : até 
existem algumas funções que se poderia usar , dependendo ** fundamentalmente ** 
da versão de banco, que pra variar vc não diz, mas a contagem só com funções 
genéricas é franciscanamente SIMPLES, vc tira do comprimento da string original 
o comprimento dela SEM o caracter desejado, kapluft , tipo + ou - :

select (length(:main_str) - nvl(length(replace(:main_str,:srch_str,'')),0))/
  length(:srch_str) cnt
from dual;

Isso em qquer versão, mas já se for banco 10g vc pode usar as funções de 
regexp, há uma count lá...

Já pra retornar cada posição de cada ocorrência vc terá, afaik, que ter uma 
lógica de loop, ie : vc tem várias funções que retornam a posição de uma dada 
ocorrência dum caracter (como a INSTR , ou algumas do pacote regexp no 10g), vc 
teria que executar a função escolhida n vezes, uma pra cada ocorrência - isso 
poderia ser um loop PL/SQL (a opção mais simples, afaik) ou se exigido que seja 
em SQL apenas aí provavelmente vc teria que escrever um SQL mais complexo, 
repetindo n vezes um select instr da string from dual, já seria algo BEM mais 
complexo, mas possível, certamente.

[]s

  Chiappa
--- Em oracle_br@yahoogrupos.com.br, francisco porfirio 
 escreveu
>
> Caros,
> 
> Gostaria de um axulio de vocês.
> 
> Estou precisando detectar as quebras de linhas da minha string.
> 
> Consegui detecar apenas a primeira debra de linha atavés do instr.
> 
> Alguem sabe informar se tem alguma função que me retorne a posição de todos
> os caracter do tipo quebra de linha "chr(10)", ou que ao menos me informe
> quantas vezes esse caracter se repete na minha tring ?
> 
> obrigado;
> 
> -- 
> Atenciosamente
> Francisco Porfirio Ribeiro Neto
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




Re: [oracle_br] SQLPLUSW - Bug

2009-05-21 Por tôpico Ricardo Portilho Proni
Oi Regis.

Não sei qual é o problema.
Só estou escrevendo para te desincentivar mais ainda a usar o SQLPLUSW.

Ele foi descontinuado pela Oracle e você não o verá nas próximas
versões. O isqlplus também (foi tarde).

No 11g já vem o SQL Developer.
Eu prefiro o sqlplus. Ele não será descontinuado tão cedo, tenho
certeza.

-  
Ricardo Portilho Proni
http://portilho.profissionaloracle.com.br



Em Qui, 2009-05-21 às 16:30 +, Regis Bavaresco escreveu:
> 
> 
> Pessoal,
> 
> Tinha uma instalação de Oracle Client 10g em meu computador e o mesmo
> funcionava muito bem, troquei de maquina mas mantive o sistema
> operacional e fui fazer a mesma instalação (idêntica) inclusive com o
> mesmo cd, mesmas opçoes e o sqlplus apresentou aquele maldito bug de
> tela ele não corre a tela para o lado direito, mesmo definindo
> linesize maior ex: 1 e arraysize 1. Para fazer isso funcionar é
> necessário acessar, environment, arraysize 1, confirmar e depois
> minimizar e maximizar o programa novamente, mas quando ele faz uma
> leitura de muitos objetos, por exemplo da dba_objects, aparece o erro
> de referencia a memória e aborta o programa. 
> 
> Alguém achou algum conserto milagroso para esse bug? Já procurei no
> metalink e inclusive aqui no fórum mas todas as soluções são
> paleativas. Que probleminha mais chato, chega a desincentivar o uso do
> SQLPLUS no Windows, que é uma das melhores ferramentas da Oracle.
> 
> Dados técnicos: 
> oracle client 10g - 10.2.0.1
> windows xp sp3 - atualizado pelos ultimos patchs de maio da Microsoft.
> 
> 
> 
> 
> 



[oracle_br] SQLPLUSW - Bug

2009-05-21 Por tôpico Regis Bavaresco
Pessoal,

Tinha uma instalação de Oracle Client 10g em meu computador e o mesmo 
funcionava muito bem, troquei de maquina mas mantive o sistema operacional e 
fui fazer a mesma instalação (idêntica) inclusive com o mesmo cd, mesmas opçoes 
e o sqlplus apresentou aquele maldito bug de tela ele não corre a tela para o 
lado direito, mesmo definindo linesize maior ex: 1 e arraysize 1. Para 
fazer isso funcionar é necessário acessar, environment, arraysize 1, confirmar 
e depois minimizar e maximizar o programa novamente, mas quando ele faz uma 
leitura de muitos objetos, por exemplo da dba_objects, aparece o erro de 
referencia a memória e aborta o programa. 

Alguém achou algum conserto milagroso para esse bug? Já procurei no metalink e 
inclusive aqui no fórum mas todas as soluções são paleativas. Que probleminha 
mais chato, chega a desincentivar o uso do SQLPLUS no Windows, que é uma das 
melhores ferramentas da Oracle.

Dados técnicos: 
oracle client 10g - 10.2.0.1
windows xp sp3 - atualizado pelos ultimos patchs de maio da Microsoft.



[oracle_br] Detectar quebra de linha

2009-05-21 Por tôpico francisco porfirio
Caros,

Gostaria de um axulio de vocês.

Estou precisando detectar as quebras de linhas da minha string.

Consegui detecar apenas a primeira debra de linha atavés do instr.

Alguem sabe informar se tem alguma função que me retorne a posição de todos
os caracter do tipo quebra de linha "chr(10)", ou que ao menos me informe
quantas vezes esse caracter se repete na minha tring ?

obrigado;

-- 
Atenciosamente
Francisco Porfirio Ribeiro Neto


[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] problema com ora-03113 ora-03114

2009-05-21 Por tôpico Aroldo Marcos
 

Pessoal

 

Acesso normalmente na empresa duas bases oracle 

 

Base A

BANNER



Oracle9i Enterprise Edition Release 9.2.0.5.0 - 64bit Production

PL/SQL Release 9.2.0.5.0 - Production

CORE9.2.0.6.0   Production

TNS for HPUX: Version 9.2.0.5.0 - Production

NLSRTL Version 9.2.0.5.0 – Production

 

Base B

BANNER



Oracle9i Enterprise Edition Release 9.2.0.5.0 - 64bit Production

PL/SQL Release 9.2.0.5.0 - Production

CORE9.2.0.6.0   Production

TNS for Solaris: Version 9.2.0.5.0 - Production

NLSRTL Version 9.2.0.5.0 – Production

 

Utilizo normalmente o SQLPLUS 10.1.0.4.2, mas para o problema que estou
tendo é irrelevante, pois a desconexão tambem ocorre se eu utilizar o
PL/SQLDeveloper ou outra versao de SQLPLUS. Me conecto com um Usuario que é
usado por outros analistas em outras maquinas sem problemas .

 

O Problema é que na Base B após alguns minutos ( 3 a 5 mais ou menos ) estou
sendo desconectado. Isto comecou após aplicarem Patches na Base B uns 10
dias atraz . Outros terminais não estao tendo problemas e não fizeram
qualquer alteração do lado client.  Não tenho qualquer problema para acessar
a Base A e as duas são locais na empresa.

 

Tenho o TNSNAMES centralizado em apenas um lugar com a variavel de ambiente
tns_admin, já tentei mudar a porta de conexao para a Base B, conferi o
SQLNET.ORA com outros terminais , caracteristicas da Rede , e tudo esta OK ,
mas o problema persiste. Alguem tem alguma dica

 

Obrigado

Aroldo

 

 

 



[As partes desta mensagem que não continham texto foram removidas]



[oracle_br] Recuperação de Dados

2009-05-21 Por tôpico Genivaldo P. Silva
Pessoal, Bom dia.   Tenho um note onde possuia o banco de dados Oracle 10g XE 
instalado para fins de estudo. Seu HD estava particionado em 3 partes, e onde 
estava o10g eu tinha o Windows XP rodando (drive C:). Aconteceu de dar 
problemas nessa partição do XP e não consegui mais iniciar o note. O que eu 
fiz: instalei outro sistema operacional (Windows 7) numa partição livre (drive 
D:). Após isso instalei novamente o Oracle 10g e até agora está tudo certo, 
inclusive consigo ver o drive C: com todos os arquivos, e o diretório do banco 
está lá (oraclexe). A pergunta é: Eu consigo nessa nova instação no Windows 7 
recuperar a base de dados que eu tenho no drive C: ??? Eu já tentei algumas 
cópias de diretório mais não deu certo. Uma hora o serviço não sobe, outra hora 
o sobe mais dá erra na conexão com o banco. Então voltei tudo para o orginal da 
instalação. Há algum meio de recuperar todas as minhas tabelas e dados que eu 
criei???Grato, Genivaldo Silva  


[As partes desta mensagem que não continham texto foram removidas]