Re: [oracle_br] Importação de Usário

2010-06-18 Thread David Ricardo
Welvis,
Esses 300 e tantos usuários são SCHEMAS com Objetos e tudo mais abaixo
deles, ou apenas alguns são e o resto são usuários de conexão nomeados???

Ats.

Em 18 de junho de 2010 09:28, Welvis Douglas escreveu:

>
>
> Pessoal, tenho um banco para importar e lá tem mais de 300 usuários.
>
> Eu fiz um export full desta base de dados. Para fazer o import tenho que
> fazer um a um ou tem alguma forma para importar tudos estes usuários de uma
> única vez?
>
> A base de dados de origem é oracle 8i e a destino é oracle 9i.
> O SO é ruWindows.
>
> abraço>!
>
> Att,
>
> Welvis Douglas da Silva Moretto
> DBA - Oracle Certified (1ZO-042)
> Fone: (41) 9997-6297
> E-mail: welvis_doug...@hotmail.com ,
> wel...@stcruz.com.br 
> Messenger: welvis_doug...@hotmail.com 
>
> Mestre em Engenharia de Produção e Sistemas - PUC/PR;
> Especializando em Banco de Dados - UNOPAR;
> Especialista Engenharia de Software - UNOPAR;
> Tecnólogo em Processamento de Dados - FACCAR.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"


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



RES: [oracle_br] Importação de Usário

2010-06-18 Thread Welvis Douglas
Varão, a maioria deles são usuários de conexão!!!
 
abraço!

  _  

De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
nome de David Ricardo
Enviada em: sexta-feira, 18 de junho de 2010 09:50
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Importação de Usário


  

Welvis,
Esses 300 e tantos usuários são SCHEMAS com Objetos e tudo mais abaixo
deles, ou apenas alguns são e o resto são usuários de conexão nomeados???

Ats.

Em 18 de junho de 2010 09:28, Welvis Douglas mailto:welvis%40stcruz.com.br> >escreveu:

>
>
> Pessoal, tenho um banco para importar e lá tem mais de 300 usuários.
>
> Eu fiz um export full desta base de dados. Para fazer o import tenho que
> fazer um a um ou tem alguma forma para importar tudos estes usuários de
uma
> única vez?
>
> A base de dados de origem é oracle 8i e a destino é oracle 9i.
> O SO é ruWindows.
>
> abraço>!
>
> Att,
>
> Welvis Douglas da Silva Moretto
> DBA - Oracle Certified (1ZO-042)
> Fone: (41) 9997-6297
> E-mail: welvis_doug...@hotmail.com 
,
> wel...@stcruz.com.br 

> Messenger: welvis_doug...@hotmail.com
  
>
> Mestre em Engenharia de Produção e Sistemas - PUC/PR;
> Especializando em Banco de Dados - UNOPAR;
> Especialista Engenharia de Software - UNOPAR;
> Tecnólogo em Processamento de Dados - FACCAR.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>

-- 
"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"

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






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



Re: [oracle_br] Importação de Usário

2010-06-18 Thread David Ricardo
Então acredito que ficaria mais fácil pra ti exportar apenas os usuários que
são de SISTEMAS mesmo, e esses que são apenas de conexão, você pode fazer um
Script pra extrai-los , assim você já adianta e cria esses usuários de
conexão no seu BD destino, pois na hora da importação ele tentara localizar
estes owners para poder dar as devidas permissões a cada um.
Eu costumo fazer isso aqui nos planos de migração que temos, o script para
extrair os usuários é mais ou menos assim :

spool 06_usuarios.sql

select 'create user ' || username || '
   identified by values ''' || password || '''
   default tablespace USERS
   temporary tablespace TEMP
   account unlock
   profile ;'
from dba_users
where username not in ()
order by username;

spool off;

Este script vai ignorar os usuários SYS, SYSTEM, DBSNMP, e outros de outros
aplicativos que você possa estar utilizando ai na sua base, você só tem que
colocar a lista deles ali onde mencionei "Lista de usuários de sistema e
owners de aplicativos oracle", você vai notar que o output será uma linha de
comando já para criar os usuários do seu BD.
Teste e me fale se obteve sucesso.

Abraço!!!



Em 18 de junho de 2010 10:02, Welvis Douglas escreveu:

>
>
> Varão, a maioria deles são usuários de conexão!!!
>
> abraço!
>
> _
>
> De: oracle_br@yahoogrupos.com.br  [mailto:
> oracle_br@yahoogrupos.com.br ] Em
> nome de David Ricardo
> Enviada em: sexta-feira, 18 de junho de 2010 09:50
> Para: oracle_br@yahoogrupos.com.br 
> Assunto: Re: [oracle_br] Importação de Usário
>
>
> Welvis,
> Esses 300 e tantos usuários são SCHEMAS com Objetos e tudo mais abaixo
> deles, ou apenas alguns são e o resto são usuários de conexão nomeados???
>
> Ats.
>
> Em 18 de junho de 2010 09:28, Welvis Douglas 
> 
>  >escreveu:
>
>
> >
> >
> > Pessoal, tenho um banco para importar e lá tem mais de 300 usuários.
> >
> > Eu fiz um export full desta base de dados. Para fazer o import tenho que
> > fazer um a um ou tem alguma forma para importar tudos estes usuários de
> uma
> > única vez?
> >
> > A base de dados de origem é oracle 8i e a destino é oracle 9i.
> > O SO é ruWindows.
> >
> > abraço>!
> >
> > Att,
> >
> > Welvis Douglas da Silva Moretto
> > DBA - Oracle Certified (1ZO-042)
> > Fone: (41) 9997-6297
> > E-mail: welvis_doug...@hotmail.com  welvis_douglas%40hotmail.com >
> ,
> > wel...@stcruz.com.br   welvis%40stcruz.com.br >
> 
>
> > Messenger: welvis_doug...@hotmail.com 
> 
> 
>
> >
> > Mestre em Engenharia de Produção e Sistemas - PUC/PR;
> > Especializando em Banco de Dados - UNOPAR;
> > Especialista Engenharia de Software - UNOPAR;
> > Tecnólogo em Processamento de Dados - FACCAR.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> "O mistério da vida me causa a mais forte emoção. É o sentimento que
> suscita
> a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
> sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo
> e
> seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"


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



RES: [oracle_br] Importação de Usário

2010-06-18 Thread Welvis Douglas
Acho que é mais fásil fazer um export full.
 
pois para fazer isso é uma naba. Fiz um script ontem para controlar estas
coisas... tenho que tertar o mesmo para ver se funciona. Ontem deu erro de
characterset, vou ter que criar outra instancia no banco de dados.
 
att,

  _  

De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
nome de David Ricardo
Enviada em: sexta-feira, 18 de junho de 2010 10:23
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Importação de Usário


  

Então acredito que ficaria mais fácil pra ti exportar apenas os usuários que
são de SISTEMAS mesmo, e esses que são apenas de conexão, você pode fazer um
Script pra extrai-los , assim você já adianta e cria esses usuários de
conexão no seu BD destino, pois na hora da importação ele tentara localizar
estes owners para poder dar as devidas permissões a cada um.
Eu costumo fazer isso aqui nos planos de migração que temos, o script para
extrair os usuários é mais ou menos assim :

spool 06_usuarios.sql

select 'create user ' || username || '
identified by values ''' || password || '''
default tablespace USERS
temporary tablespace TEMP
account unlock
profile ;'
from dba_users
where username not in ()
order by username;

spool off;

Este script vai ignorar os usuários SYS, SYSTEM, DBSNMP, e outros de outros
aplicativos que você possa estar utilizando ai na sua base, você só tem que
colocar a lista deles ali onde mencionei "Lista de usuários de sistema e
owners de aplicativos oracle", você vai notar que o output será uma linha de
comando já para criar os usuários do seu BD.
Teste e me fale se obteve sucesso.

Abraço!!!

Em 18 de junho de 2010 10:02, Welvis Douglas mailto:welvis%40stcruz.com.br> >escreveu:

>
>
> Varão, a maioria deles são usuários de conexão!!!
>
> abraço!
>
> _
>
> De: oracle_br@yahoogrupos.com.br 
 [mailto:
> oracle_br@yahoogrupos.com.br 
] Em
> nome de David Ricardo
> Enviada em: sexta-feira, 18 de junho de 2010 09:50
> Para: oracle_br@yahoogrupos.com.br 

> Assunto: Re: [oracle_br] Importação de Usário
>
>
> Welvis,
> Esses 300 e tantos usuários são SCHEMAS com Objetos e tudo mais abaixo
> deles, ou apenas alguns são e o resto são usuários de conexão nomeados???
>
> Ats.
>
> Em 18 de junho de 2010 09:28, Welvis Douglas mailto:welvis%40stcruz.com.br> 
>  >escreveu:
>
>
> >
> >
> > Pessoal, tenho um banco para importar e lá tem mais de 300 usuários.
> >
> > Eu fiz um export full desta base de dados. Para fazer o import tenho que
> > fazer um a um ou tem alguma forma para importar tudos estes usuários de
> uma
> > única vez?
> >
> > A base de dados de origem é oracle 8i e a destino é oracle 9i.
> > O SO é ruWindows.
> >
> > abraço>!
> >
> > Att,
> >
> > Welvis Douglas da Silva Moretto
> > DBA - Oracle Certified (1ZO-042)
> > Fone: (41) 9997-6297
> > E-mail: welvis_doug...@hotmail.com 
 welvis_douglas%40hotmail.com >
> ,
> > wel...@stcruz.com.br 
  welvis%40stcruz.com.br >
> 
>
> > Messenger: welvis_doug...@hotmail.com
  
> 
> 
>
> >
> > Mestre em Engenharia de Produção e Sistemas - PUC/PR;
> > Especializando em Banco de Dados - UNOPAR;
> > Especialista Engenharia de Software - UNOPAR;
> > Tecnólogo em Processamento de Dados - FACCAR.
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> "O mistério da vida me causa a mais forte emoção. É o sentimento que
> suscita
> a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
> sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo
> e
> seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>

-- 
"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"

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






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



Re: [oracle_br] Importação de Usário

2010-06-18 Thread David Ricardo
Dá um pouco de trabalho mais pelo menos fica mais redondo ao meu ver.
Porém é claro que um FULL direto é sempre menos trabalhoso ..

Bos sorte.
Abraço
Sucesso Sempre

Em 18 de junho de 2010 10:31, Welvis Douglas escreveu:

>
>
> Acho que é mais fásil fazer um export full.
>
> pois para fazer isso é uma naba. Fiz um script ontem para controlar estas
> coisas... tenho que tertar o mesmo para ver se funciona. Ontem deu erro de
> characterset, vou ter que criar outra instancia no banco de dados.
>
> att,
>
>
> _
>
> De: oracle_br@yahoogrupos.com.br  [mailto:
> oracle_br@yahoogrupos.com.br ] Em
> nome de David Ricardo
> Enviada em: sexta-feira, 18 de junho de 2010 10:23
>
> Para: oracle_br@yahoogrupos.com.br 
> Assunto: Re: [oracle_br] Importação de Usário
>
> Então acredito que ficaria mais fácil pra ti exportar apenas os usuários
> que
> são de SISTEMAS mesmo, e esses que são apenas de conexão, você pode fazer
> um
> Script pra extrai-los , assim você já adianta e cria esses usuários de
> conexão no seu BD destino, pois na hora da importação ele tentara localizar
> estes owners para poder dar as devidas permissões a cada um.
> Eu costumo fazer isso aqui nos planos de migração que temos, o script para
> extrair os usuários é mais ou menos assim :
>
> spool 06_usuarios.sql
>
> select 'create user ' || username || '
> identified by values ''' || password || '''
> default tablespace USERS
> temporary tablespace TEMP
> account unlock
> profile ;'
> from dba_users
> where username not in ( aplicativos
> oracle>)
> order by username;
>
> spool off;
>
> Este script vai ignorar os usuários SYS, SYSTEM, DBSNMP, e outros de outros
> aplicativos que você possa estar utilizando ai na sua base, você só tem que
> colocar a lista deles ali onde mencionei "Lista de usuários de sistema e
> owners de aplicativos oracle", você vai notar que o output será uma linha
> de
> comando já para criar os usuários do seu BD.
> Teste e me fale se obteve sucesso.
>
> Abraço!!!
>
> Em 18 de junho de 2010 10:02, Welvis Douglas 
> 
>  >escreveu:
>
> >
> >
> > Varão, a maioria deles são usuários de conexão!!!
> >
> > abraço!
> >
> > _
> >
> > De: oracle_br@yahoogrupos.com.br  oracle_br%40yahoogrupos.com.br >
>  [mailto:
> > oracle_br@yahoogrupos.com.br   oracle_br%40yahoogrupos.com.br >
> ] Em
>
> > nome de David Ricardo
> > Enviada em: sexta-feira, 18 de junho de 2010 09:50
> > Para: oracle_br@yahoogrupos.com.br  oracle_br%40yahoogrupos.com.br >
> 
>
> > Assunto: Re: [oracle_br] Importação de Usário
> >
> >
> > Welvis,
> > Esses 300 e tantos usuários são SCHEMAS com Objetos e tudo mais abaixo
> > deles, ou apenas alguns são e o resto são usuários de conexão nomeados???
> >
> > Ats.
> >
> > Em 18 de junho de 2010 09:28, Welvis Douglas 
> > 
>   40stcruz.com.br>
> > > >escreveu:
>
> >
> >
> > >
> > >
> > > Pessoal, tenho um banco para importar e lá tem mais de 300 usuários.
> > >
> > > Eu fiz um export full desta base de dados. Para fazer o import tenho
> que
> > > fazer um a um ou tem alguma forma para importar tudos estes usuários de
> > uma
> > > única vez?
> > >
> > > A base de dados de origem é oracle 8i e a destino é oracle 9i.
> > > O SO é ruWindows.
> > >
> > > abraço>!
> > >
> > > Att,
> > >
> > > Welvis Douglas da Silva Moretto
> > > DBA - Oracle Certified (1ZO-042)
> > > Fone: (41) 9997-6297
> > > E-mail: welvis_doug...@hotmail.com  welvis_douglas%40hotmail.com >
>  > welvis_douglas%40hotmail.com >
>
> > ,
> > > wel...@stcruz.com.br   welvis%40stcruz.com.br >
>   > welvis%40stcruz.com.br >
>
> > 
> >
> > > Messenger: welvis_doug...@hotmail.com 
> 
> 
> >  >  2540hotmail.com>>
>
> > 
> >
> > >
> > > Mestre em Engenharia de Produção e Sistemas - PUC/PR;
> > > Especializando em Banco de Dados - UNOPAR;
> > > Especialista Engenharia de Software - UNOPAR;
> > > Tecnólogo em Processamento de Dados - FACCAR.
> > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > --
> > "O mistério da vida me causa a mais forte emoção. É o sentimento que
> > suscita
> > a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
> > sensação ou não pode mais exprimir espanto ou surpresa, já é um
> morto-vivo
> > e
> > seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
> --
> "O mistério da vida me causa a mais forte emoção. É o sentimento que
> suscita
> a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
> sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo
> e
> seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"
>
> [As partes desta mensagem que não continham texto foram 

Re: [oracle_br] Lentidão após expurgo

2010-06-18 Thread David Ricardo
Além de coletar as estatisticas você fez um SHRINK nas tabelas e indices
expurgadas para eliminar a possivel fragmentação que possa ter ficado??

Abraço

Em 18 de junho de 2010 10:52, Welvis Douglas escreveu:

>
>
> Varão, tu coletou a estatistica depois do exporgo?
>
> att,
>
>
>
> _
>
> De: oracle_br@yahoogrupos.com.br  [mailto:
> oracle_br@yahoogrupos.com.br ] Em
> nome de Sergio Lucchini
> Enviada em: sexta-feira, 18 de junho de 2010 10:46
> Para: oracle_br@yahoogrupos.com.br 
> Assunto: [oracle_br] Lentidão após expurgo
>
>
> Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> algumas tabelas o banco ter ficado muito mais lento do que era antes ???
>
> Obrigado
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 

David Ricardo B. de Siqueira
IT Brazil - Database Administrator
Discover Technology

"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"


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



RES: [oracle_br] Lentidão após expurgo

2010-06-18 Thread Sergio Lucchini
Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou esse 
trabalho.
Não me foi passado detalhes, mas acredito que tenham apenas deletado os 
registros das tabelas e após isso o sistema ficou mais lento do que era antes.
Não deve ter sido coletado estatísticas nem antes e nem depois do expurgo.




Obrigado,


De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em nome 
de Welvis Douglas
Enviada em: sexta-feira, 18 de junho de 2010 10:52
Para: oracle_br@yahoogrupos.com.br
Assunto: RES: [oracle_br] Lentidão após expurgo



Varão, tu coletou a estatistica depois do exporgo?

att,



_

De: oracle_br@yahoogrupos.com.br 
[mailto:oracle_br@yahoogrupos.com.br] Em
nome de Sergio Lucchini
Enviada em: sexta-feira, 18 de junho de 2010 10:46
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Lentidão após expurgo

Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
algumas tabelas o banco ter ficado muito mais lento do que era antes ???

Obrigado

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

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


No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date: 06/17/10 
18:35:00


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



Re: [oracle_br] Lentidão após expurgo

2010-06-18 Thread David Ricardo
Expurgo de dados é sempre muito importante, para assegurar que apenas o
suficiente e utilizado esteja em disco , visto que ha dados que nem são
acessados e muitas vezes ficam na tabela ocupando espaço, salvo quando ha
necessidade por razões juridicas de se manter estes dados online por
determinado tempo, porém isso pode ser facilmente contornado criando um
banco de dados para Historicos, disponivel para acesso normal. Mas voltando
ao assunto dos expurgos, a lentidão com certeza melhorará após a atualização
do CBO , porém sugiro que antes da coleta seu amigo acerte os HWM das
tabelas, utilizando o SHRINK SPACE e COMPACT com opção CASCADE, isso vai
eliminar a fragmentação, e quando ele for passar a coleta de estatisticas se
possivel peça para ele atualizar os Histogramas também, usando o method
SKEWONLY ( acho que é assim que se escreve), depois é só acompanhar as
métricas e ver os ganhos, certamente serão visivéis.

Ats.

Em 18 de junho de 2010 10:57, Sergio Lucchini escreveu:

>
>
> Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou esse
> trabalho.
> Não me foi passado detalhes, mas acredito que tenham apenas deletado os
> registros das tabelas e após isso o sistema ficou mais lento do que era
> antes.
> Não deve ter sido coletado estatísticas nem antes e nem depois do expurgo.
>
> Obrigado,
>
> 
> De: oracle_br@yahoogrupos.com.br  [mailto:
> oracle_br@yahoogrupos.com.br ] Em nome de
> Welvis Douglas
> Enviada em: sexta-feira, 18 de junho de 2010 10:52
>
> Para: oracle_br@yahoogrupos.com.br 
> Assunto: RES: [oracle_br] Lentidão após expurgo
>
>
> Varão, tu coletou a estatistica depois do exporgo?
>
> att,
>
> _
>
> De: oracle_br@yahoogrupos.com.br  oracle_br%40yahoogrupos.com.br >
> [mailto:oracle_br@yahoogrupos.com.br 
> ]
> Em
>
> nome de Sergio Lucchini
> Enviada em: sexta-feira, 18 de junho de 2010 10:46
> Para: oracle_br@yahoogrupos.com.br 
> 
>
> Assunto: [oracle_br] Lentidão após expurgo
>
> Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> algumas tabelas o banco ter ficado muito mais lento do que era antes ???
>
> Obrigado
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date: 06/17/10
> 18:35:00
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 

David Ricardo B. de Siqueira
IT Brazil - Database Administrator
Discover Technology

"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"


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



RES: [oracle_br] Lentidão após expurgo

2010-06-18 Thread Welvis Douglas
Devid, isso é mais ou menos.
 
Exemplo, dependendo do tamanho da tabela uma forma de coleta de estatistica
vai bem, mas dependendo de tamanho não. Tem que ver.. eu sempre faço um
range.
 
forma 01 - tabpequenas
forma 02 - tabmédias
forma 03 - tabgrandes
 
Mudando a forma de coleta e histogramas.

  _  

De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
nome de David Ricardo
Enviada em: sexta-feira, 18 de junho de 2010 11:03
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Lentidão após expurgo


  

Expurgo de dados é sempre muito importante, para assegurar que apenas o
suficiente e utilizado esteja em disco , visto que ha dados que nem são
acessados e muitas vezes ficam na tabela ocupando espaço, salvo quando ha
necessidade por razões juridicas de se manter estes dados online por
determinado tempo, porém isso pode ser facilmente contornado criando um
banco de dados para Historicos, disponivel para acesso normal. Mas voltando
ao assunto dos expurgos, a lentidão com certeza melhorará após a atualização
do CBO , porém sugiro que antes da coleta seu amigo acerte os HWM das
tabelas, utilizando o SHRINK SPACE e COMPACT com opção CASCADE, isso vai
eliminar a fragmentação, e quando ele for passar a coleta de estatisticas se
possivel peça para ele atualizar os Histogramas também, usando o method
SKEWONLY ( acho que é assim que se escreve), depois é só acompanhar as
métricas e ver os ganhos, certamente serão visivéis.

Ats.

Em 18 de junho de 2010 10:57, Sergio Lucchini mailto:sergio%40mercanet.com.br> >escreveu:

>
>
> Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou
esse
> trabalho.
> Não me foi passado detalhes, mas acredito que tenham apenas deletado os
> registros das tabelas e após isso o sistema ficou mais lento do que era
> antes.
> Não deve ter sido coletado estatísticas nem antes e nem depois do expurgo.
>
> Obrigado,
>
> 
> De: oracle_br@yahoogrupos.com.br 
 [mailto:
> oracle_br@yahoogrupos.com.br 
] Em nome de
> Welvis Douglas
> Enviada em: sexta-feira, 18 de junho de 2010 10:52
>
> Para: oracle_br@yahoogrupos.com.br 

> Assunto: RES: [oracle_br] Lentidão após expurgo
>
>
> Varão, tu coletou a estatistica depois do exporgo?
>
> att,
>
> _
>
> De: oracle_br@yahoogrupos.com.br 
 oracle_br%40yahoogrupos.com.br >
> [mailto:oracle_br@yahoogrupos.com.br
  
> ]
> Em
>
> nome de Sergio Lucchini
> Enviada em: sexta-feira, 18 de junho de 2010 10:46
> Para: oracle_br@yahoogrupos.com.br 

> 
>
> Assunto: [oracle_br] Lentidão após expurgo
>
> Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> algumas tabelas o banco ter ficado muito mais lento do que era antes ???
>
> Obrigado
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date: 06/17/10
> 18:35:00
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
>

-- 
--
David Ricardo B. de Siqueira
IT Brazil - Database Administrator
Discover Technology

"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"

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






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



Re: [oracle_br] Lentidão após expurgo

2010-06-18 Thread Raul Francisco Costa F. de Andrade, DBA
Colete estatísticas assim:

execute dbms_stats.gather_table_stats (ownname => 'NOME_OWNER', tabname =>
'NOME_TABELA', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt
=> 'for all columns size skewonly', cascade => true);

Att.

Raul

Em 18 de junho de 2010 10:57, Sergio Lucchini escreveu:

>
>
> Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou esse
> trabalho.
> Não me foi passado detalhes, mas acredito que tenham apenas deletado os
> registros das tabelas e após isso o sistema ficou mais lento do que era
> antes.
> Não deve ter sido coletado estatísticas nem antes e nem depois do expurgo.
>
> Obrigado,
>
> 
> De: oracle_br@yahoogrupos.com.br  [mailto:
> oracle_br@yahoogrupos.com.br ] Em nome de
> Welvis Douglas
> Enviada em: sexta-feira, 18 de junho de 2010 10:52
> Para: oracle_br@yahoogrupos.com.br 
> Assunto: RES: [oracle_br] Lentidão após expurgo
>
> Varão, tu coletou a estatistica depois do exporgo?
>
> att,
>
> _
>
> De: oracle_br@yahoogrupos.com.br  oracle_br%40yahoogrupos.com.br >
> [mailto:oracle_br@yahoogrupos.com.br 
> ]
> Em
> nome de Sergio Lucchini
> Enviada em: sexta-feira, 18 de junho de 2010 10:46
> Para: oracle_br@yahoogrupos.com.br 
> 
> Assunto: [oracle_br] Lentidão após expurgo
>
> Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> algumas tabelas o banco ter ficado muito mais lento do que era antes ???
>
> Obrigado
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date: 06/17/10
> 18:35:00
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
--
Raul Francisco da Costa Ferreira de Andrade
DBA - OCA - Oracle Certified Associate
COBIT Foundation 4.1
Fone: (41)8855-8874 Brt
email: raulf...@gmail.com
Skype: raul.andrade
www.clickdba.com

"A adversidade leva alguns a serem vencidos
e outros a baterem recordes."
William Arthur Ward


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





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Lentidão após expurgo

2010-06-18 Thread David Ricardo
Fantastico Raul, é isso ai mesmo.
Eu só não lembrava a sintax completa.

Mas também concordo com o seu ponto de vista Welvis a cerca de dividir as
formas de como coletar, mas no final quem vai fazer a escolha de melhor
acesso é o CBO e pra isso essas formas de coleta que você usa tem que
estarem bem coesas.

Se você tiver curiosidade no livro ORACLE SILVER BULLETS da RAMPANT -
Donnald K. Burleson da Famosa Burleson Texas , tem um capitulo falando só de
DBMS_STATS utilizando alguns metodos especificos e também este com o
algoritmo SKEWONLY.

Abraço.
Sucesso Sempre!!!

Em 18 de junho de 2010 11:27, Raul Francisco Costa F. de Andrade, DBA <
raulf...@gmail.com> escreveu:

> Colete estatísticas assim:
>
> execute dbms_stats.gather_table_stats (ownname => 'NOME_OWNER', tabname =>
> 'NOME_TABELA', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, method_opt
> => 'for all columns size skewonly', cascade => true);
>
> Att.
>
> Raul
>
> Em 18 de junho de 2010 10:57, Sergio Lucchini  >escreveu:
>
> >
> >
> > Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou
> esse
> > trabalho.
> > Não me foi passado detalhes, mas acredito que tenham apenas deletado os
> > registros das tabelas e após isso o sistema ficou mais lento do que era
> > antes.
> > Não deve ter sido coletado estatísticas nem antes e nem depois do
> expurgo.
> >
> > Obrigado,
> >
> > 
> > De: oracle_br@yahoogrupos.com.br 
> [mailto:
> > oracle_br@yahoogrupos.com.br ] Em nome
> de
> > Welvis Douglas
> > Enviada em: sexta-feira, 18 de junho de 2010 10:52
> > Para: oracle_br@yahoogrupos.com.br 
> > Assunto: RES: [oracle_br] Lentidão após expurgo
> >
> > Varão, tu coletou a estatistica depois do exporgo?
> >
> > att,
> >
> > _
> >
> > De: oracle_br@yahoogrupos.com.br  > > oracle_br%40yahoogrupos.com.br >
> > [mailto:oracle_br@yahoogrupos.com.br 
> > >]
> > Em
> > nome de Sergio Lucchini
> > Enviada em: sexta-feira, 18 de junho de 2010 10:46
> > Para: oracle_br@yahoogrupos.com.br 
> > >
> > Assunto: [oracle_br] Lentidão após expurgo
> >
> > Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> > algumas tabelas o banco ter ficado muito mais lento do que era antes ???
> >
> > Obrigado
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> > No virus found in this incoming message.
> > Checked by AVG - www.avg.com
> > Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date: 06/17/10
> > 18:35:00
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
>
>
>
> --
> --
> Raul Francisco da Costa Ferreira de Andrade
> DBA - OCA - Oracle Certified Associate
> COBIT Foundation 4.1
> Fone: (41)8855-8874 Brt
> email: raulf...@gmail.com
> Skype: raul.andrade
> www.clickdba.com
>
> "A adversidade leva alguns a serem vencidos
> e outros a baterem recordes."
> William Arthur Ward
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> 
>
>
> --
> >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> inteira responsabilidade de seus remetentes.
> Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
>
> --
> >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure
> » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE:
> http://www.oraclebr.com.br/
> 
> Links do Yahoo! Grupos
>
>
>


-- 

David Ricardo B. de Siqueira
IT Brazil - Database Administrator
Discover Technology

"O mistério da vida me causa a mais forte emoção. É o sentimento que suscita
a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa
sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e
seus olhos se cegaram.".(Albert Einstein - 1879 - 1955)"


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



Re: [oracle_br] Lentidão após expurgo

2010-06-18 Thread David Ricardo
Dá um visu Marcio, espero que te ajude :

http://www.dba-oracle.com/oracle_tips_histograms.htm

Abraço
Sucesso Sempre

Em 18 de junho de 2010 11:56, Márcio Ricardo Alves da Silva <
marcio_...@yahoo.com.br> escreveu:

>
>
> Pessoal, pegando o gancho sobre coleta de estatíticas. Hoje o meu processo
> de coleta de estatísticas tem a coleta de tabelas pequenas e a coleta de
> tabelas grandes.
>
> As tabelas pequenas, eu coleto todos os dias, já as tabelas grandes faço a
> coleta dia sim e dia não.
>
> Eu quero saber a diferença em coletar usando
> FOR ALL INDEXED COLUMNS SIZE AUTO
>
> ao invés de usar
>
> FOR ALL COLUMNS SIZE SKEWONLY
>
> Márcio.
>
>
> - Original Message -
> From: David Ricardo
> To: oracle_br@yahoogrupos.com.br 
> Sent: Friday, June 18, 2010 11:31 AM
> Subject: Re: [oracle_br] Lentidão após expurgo
>
> Fantastico Raul, é isso ai mesmo.
> Eu só não lembrava a sintax completa.
>
> Mas também concordo com o seu ponto de vista Welvis a cerca de dividir as
> formas de como coletar, mas no final quem vai fazer a escolha de melhor
> acesso é o CBO e pra isso essas formas de coleta que você usa tem que
> estarem bem coesas.
>
> Se você tiver curiosidade no livro ORACLE SILVER BULLETS da RAMPANT -
> Donnald K. Burleson da Famosa Burleson Texas , tem um capitulo falando só
> de
> DBMS_STATS utilizando alguns metodos especificos e também este com o
> algoritmo SKEWONLY.
>
> Abraço.
> Sucesso Sempre!!!
>
> Em 18 de junho de 2010 11:27, Raul Francisco Costa F. de Andrade, DBA <
> raulf...@gmail.com > escreveu:
>
> > Colete estatísticas assim:
> >
> > execute dbms_stats.gather_table_stats (ownname => 'NOME_OWNER', tabname
> =>
> > 'NOME_TABELA', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
> method_opt
> > => 'for all columns size skewonly', cascade => true);
> >
> > Att.
> >
> > Raul
> >
> > Em 18 de junho de 2010 10:57, Sergio Lucchini 
> > 
> > >escreveu:
> >
> > >
> > >
> > > Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou
> > esse
> > > trabalho.
> > > Não me foi passado detalhes, mas acredito que tenham apenas deletado os
> > > registros das tabelas e após isso o sistema ficou mais lento do que era
> > > antes.
> > > Não deve ter sido coletado estatísticas nem antes e nem depois do
> > expurgo.
> > >
> > > Obrigado,
> > >
> > > 
> > > De: oracle_br@yahoogrupos.com.br 
> > >  40yahoogrupos.com.br>
> > [mailto:
> > > oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>] Em nome
> > de
> > > Welvis Douglas
> > > Enviada em: sexta-feira, 18 de junho de 2010 10:52
> > > Para: oracle_br@yahoogrupos.com.br 
> > >  40yahoogrupos.com.br>
> > > Assunto: RES: [oracle_br] Lentidão após expurgo
> > >
> > > Varão, tu coletou a estatistica depois do exporgo?
> > >
> > > att,
> > >
> > > _
> > >
> > > De: oracle_br@yahoogrupos.com.br 
> > >  40yahoogrupos.com.br
> > > > > oracle_br%40yahoogrupos.com.br >
> > > [mailto:oracle_br@yahoogrupos.com.br 
> > >  40yahoogrupos.com.br>
> > >  
> > 2540yahoogrupos.com.br>>]
> > > Em
> > > nome de Sergio Lucchini
> > > Enviada em: sexta-feira, 18 de junho de 2010 10:46
> > > Para: oracle_br@yahoogrupos.com.br 
> > >  40yahoogrupos.com.br>
> > >  
> > 2540yahoogrupos.com.br>>
> > > Assunto: [oracle_br] Lentidão após expurgo
> > >
> > > Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
> > > algumas tabelas o banco ter ficado muito mais lento do que era antes
> ???
> > >
> > > Obrigado
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > > No virus found in this incoming message.
> > > Checked by AVG - www.avg.com
> > > Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date:
> 06/17/10
> > > 18:35:00
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> >
> >
> > --
> > --
> > Raul Francisco da Costa Ferreira de Andrade
> > DBA - OCA - Oracle Certified Associate
> > COBIT Foundation 4.1
> > Fone: (41)8855-8874 Brt
> > email: raulf...@gmail.com 
> > Skype: raul.andrade
> > www.clickdba.com
> >
> > "A adversidade leva alguns a serem vencidos
> > e outros a baterem recordes."
> > William Arthur Ward
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> > 
> >
> >
> > --
> > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de
> > inteira responsabilidade de seus remetentes.
> > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/
> >
> > --
> > >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package »
> Procedure
> > » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PR

Re: [oracle_br] Lentidão após ex purgo

2010-06-18 Thread Márcio Ricardo Alves da Silva
Valeu David.


  - Original Message - 
  From: David Ricardo 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Friday, June 18, 2010 12:04 PM
  Subject: Re: [oracle_br] Lentidão após expurgo



  Dá um visu Marcio, espero que te ajude :

  http://www.dba-oracle.com/oracle_tips_histograms.htm

  Abraço
  Sucesso Sempre

  Em 18 de junho de 2010 11:56, Márcio Ricardo Alves da Silva <
  marcio_...@yahoo.com.br> escreveu:

  >
  >
  > Pessoal, pegando o gancho sobre coleta de estatíticas. Hoje o meu processo
  > de coleta de estatísticas tem a coleta de tabelas pequenas e a coleta de
  > tabelas grandes.
  >
  > As tabelas pequenas, eu coleto todos os dias, já as tabelas grandes faço a
  > coleta dia sim e dia não.
  >
  > Eu quero saber a diferença em coletar usando
  > FOR ALL INDEXED COLUMNS SIZE AUTO
  >
  > ao invés de usar
  >
  > FOR ALL COLUMNS SIZE SKEWONLY
  >
  > Márcio.
  >
  >
  > - Original Message -
  > From: David Ricardo
  > To: oracle_br@yahoogrupos.com.br 
  > Sent: Friday, June 18, 2010 11:31 AM
  > Subject: Re: [oracle_br] Lentidão após expurgo
  >
  > Fantastico Raul, é isso ai mesmo.
  > Eu só não lembrava a sintax completa.
  >
  > Mas também concordo com o seu ponto de vista Welvis a cerca de dividir as
  > formas de como coletar, mas no final quem vai fazer a escolha de melhor
  > acesso é o CBO e pra isso essas formas de coleta que você usa tem que
  > estarem bem coesas.
  >
  > Se você tiver curiosidade no livro ORACLE SILVER BULLETS da RAMPANT -
  > Donnald K. Burleson da Famosa Burleson Texas , tem um capitulo falando só
  > de
  > DBMS_STATS utilizando alguns metodos especificos e também este com o
  > algoritmo SKEWONLY.
  >
  > Abraço.
  > Sucesso Sempre!!!
  >
  > Em 18 de junho de 2010 11:27, Raul Francisco Costa F. de Andrade, DBA <
  > raulf...@gmail.com > escreveu:
  >
  > > Colete estatísticas assim:
  > >
  > > execute dbms_stats.gather_table_stats (ownname => 'NOME_OWNER', tabname
  > =>
  > > 'NOME_TABELA', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
  > method_opt
  > > => 'for all columns size skewonly', cascade => true);
  > >
  > > Att.
  > >
  > > Raul
  > >
  > > Em 18 de junho de 2010 10:57, Sergio Lucchini 

  > > >escreveu:
  > >
  > > >
  > > >
  > > > Na verdade, eu estou tentando dar uma ajuda para um amigo que realizou
  > > esse
  > > > trabalho.
  > > > Não me foi passado detalhes, mas acredito que tenham apenas deletado os
  > > > registros das tabelas e após isso o sistema ficou mais lento do que era
  > > > antes.
  > > > Não deve ter sido coletado estatísticas nem antes e nem depois do
  > > expurgo.
  > > >
  > > > Obrigado,
  > > >
  > > > 
  > > > De: oracle_br@yahoogrupos.com.br 
 40yahoogrupos.com.br>
  > > [mailto:
  > > > oracle_br@yahoogrupos.com.br  40yahoogrupos.com.br>] Em nome
  > > de
  > > > Welvis Douglas
  > > > Enviada em: sexta-feira, 18 de junho de 2010 10:52
  > > > Para: oracle_br@yahoogrupos.com.br 
 40yahoogrupos.com.br>
  > > > Assunto: RES: [oracle_br] Lentidão após expurgo
  > > >
  > > > Varão, tu coletou a estatistica depois do exporgo?
  > > >
  > > > att,
  > > >
  > > > _
  > > >
  > > > De: oracle_br@yahoogrupos.com.br 
 40yahoogrupos.com.br
  > > > > > oracle_br%40yahoogrupos.com.br >
  > > > [mailto:oracle_br@yahoogrupos.com.br 
 40yahoogrupos.com.br>
  > > >  
  > > 2540yahoogrupos.com.br>>]
  > > > Em
  > > > nome de Sergio Lucchini
  > > > Enviada em: sexta-feira, 18 de junho de 2010 10:46
  > > > Para: oracle_br@yahoogrupos.com.br 
 40yahoogrupos.com.br>
  > > >  
  > > 2540yahoogrupos.com.br>>
  > > > Assunto: [oracle_br] Lentidão após expurgo
  > > >
  > > > Pessoal, alguém sabe o motivo de após ter sido realizado o expurgo de
  > > > algumas tabelas o banco ter ficado muito mais lento do que era antes
  > ???
  > > >
  > > > Obrigado
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > No virus found in this incoming message.
  > > > Checked by AVG - www.avg.com
  > > > Version: 8.5.435 / Virus Database: 271.1.1/2945 - Release Date:
  > 06/17/10
  > > > 18:35:00
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > >
  > > >
  > >
  > >
  > >
  > > --
  > > --
  > > Raul Francisco da Costa Ferreira de Andrade
  > > DBA - OCA - Oracle Certified Associate
  > > COBIT Foundation 4.1
  > > Fone: (41)8855-8874 Brt
  > > email: raulf...@gmail.com 
  > > Skype: raul.andrade
  > > www.clickdba.com
  > >
  > > "A adversidade leva alguns a serem vencidos
  > > e outros a baterem recordes."
  > > William Arthur Ward
  > >
  > >
  > > [As partes desta mensagem que não continham texto foram removidas]
  > >
  > >
  > >
  > > 

[oracle_br] Procedure X Java Procedure

2010-06-18 Thread Lo Bello
Bom Dia,

Estamos desenvolvendo uma comunicação com um WebService da Receita Federal,
gostaria de saber o que seria melhor e mais produtivo, desenvolver a
comunicação em Procedure normal ou uma Java Procedure?

Rogério


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



[oracle_br] Re: Procedure X Java Procedure

2010-06-18 Thread José Laurindo
Bom, primeiro temos que citar que AMBAS as soluções rodam a partir do database 
server, exigindo que o database server tenha Acesso á internet, Nem Sempre (por 
questões de Segurança e/ou acesso físico mesmo) isso é condição existente   
SE for possível, aí passa a ser uma questão de escolha pessoal, de conhecimento 
em cada linguagem, com qquer uma das duas vc pode consumir web services 
tranquilamente... Talvez um ponto a favor do java é que via de regra a 
esmagadora maioria do pessoal que desenvolve um web service o faz em Java, 
então via de regra o método preferido vai ser java, os exemplos eventualmente 
constando no Suporte deles vão ser java provavelmente, então programar em java 
te "aproxima" desse pessoal, eu penso...

[]s

  Chiappa
--- Em oracle_br@yahoogrupos.com.br, Lo Bello  escreveu
>
> Bom Dia,
> 
> Estamos desenvolvendo uma comunicação com um WebService da Receita Federal,
> gostaria de saber o que seria melhor e mais produtivo, desenvolver a
> comunicação em Procedure normal ou uma Java Procedure?
> 
> Rogério
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




[oracle_br] Ajuda Com Procedure

2010-06-18 Thread rodrigo
Olá, sou iniciante em Oracle, estou tentando aprender a usar o Oracle 10xe, 
tenho a seguinte procedure abaixo, deve ter algum erro de sintaxe, executando 
somente o sql no oracle retorna os valores certos, mas não consegui fazer a 
procedure funcionar:

CREATE OR REPLACE PROCEDURE PROC_TOTAL_CTRC_CONTABILIDADE 
(
  CODIGO IN NUMBER  
, SETE OUT NUMBER  
, DOZE OUT NUMBER  
, TOTAL OUT NUMBER  
, ICMS OUT NUMBER  
) AS 
BEGIN
for
 select sum(cd.icms) as sete, cast(null as number) as doze, cast(null as 
number)as total, cast(null as number) as ICMS
 from sis_ctrc_contabilidade_detail cd
 where cd.aliquota=7 and cd.idctrcpai=10 group by cast(null as number), 
cast(null as number), cast(null as number)
 union all
 select cast(null as number) as sete, sum(cd.icms) as doze, cast(null as 
number)as total, cast(null as number)as ICMS
 from sis_ctrc_contabilidade_detail cd
 where cd.aliquota=12 and cd.idctrcpai=10
 union all
 select cast(null as number) as sete, cast(null as number)as doze, 
sum(cd.valor) as total, cast(null as number)as ICMS
 from sis_ctrc_contabilidade_detail cd
 where cd.idctrcpai=10
 union all
 select cast(null as number) as sete, cast(null as number)as doze, cast(null as 
number) as total, sum(cd.icms) as ICMS
 from sis_ctrc_contabilidade_detail cd
 where cd.idctrcpai=10
 into sete, doze, total, icms;
 
END PROC_TOTAL_CTRC_CONTABILIDADE;

Poderiam me dizer onde estou errando? o erro que o compilador aponta é o 
seguinte: 
Erro(10,2): PL/SQL: SQL Statement ignored
Erro(25,2): PL/SQL: ORA-00933: comando SQL não encerrado adequadamente 



Re: [oracle_br] Ajuda Com Procedure

2010-06-18 Thread Eduardo Schurtz
Boa tarde.

Você não pode jogar o "INTO" desse jeito, ele tem que ficar sempre depois do
SELECT e antes do FROM.

Como você está usando UNION, tenta fazer assim (Joguei toda a sua query no
FROM, como se fosse uma tabela:

select sete
  ,doze
  ,total
  ,icms
from   (select sum(cd.icms) as sete
  ,cast(null as number) as doze
  ,cast(null as number) as total
  ,cast(null as number) as ICMS
from   sis_ctrc_contabilidade_detail cd
where  cd.aliquota = 7
andcd.idctrcpai = 10
group  by cast(null as number)
 ,cast(null as number)
 ,cast(null as number)
union all
select cast(null as number) as sete
  ,sum(cd.icms) as doze
  ,cast(null as number) as total
  ,cast(null as number) as ICMS
from   sis_ctrc_contabilidade_detail cd
where  cd.aliquota = 12
andcd.idctrcpai = 10
union all
select cast(null as number) as sete
  ,cast(null as number) as doze
  ,sum(cd.valor) as total
  ,cast(null as number) as ICMS
from   sis_ctrc_contabilidade_detail cd
where  cd.idctrcpai = 10
union all
select cast(null as number) as sete
  ,cast(null as number) as doze
  ,cast(null as number) as total
  ,sum(cd.icms) as ICMS
from   sis_ctrc_contabilidade_detail cd
where  cd.idctrcpai = 10 into sete, doze, total, icms)
into   sete
  ,doze
  ,total
  ,icms
from   dual;

Veja se funciona.

Entendeu? Isso que importa.

Att,

__
*Eduardo Schurtz*
Oracle E-Business Consultant
eduardo.schu...@gmail.com
[image: LinkedIn] [image:
Twitter]


2010/6/18 rodrigo 

>
>
> Olá, sou iniciante em Oracle, estou tentando aprender a usar o Oracle 10xe,
> tenho a seguinte procedure abaixo, deve ter algum erro de sintaxe,
> executando somente o sql no oracle retorna os valores certos, mas não
> consegui fazer a procedure funcionar:
>
> CREATE OR REPLACE PROCEDURE PROC_TOTAL_CTRC_CONTABILIDADE
> (
> CODIGO IN NUMBER
> , SETE OUT NUMBER
> , DOZE OUT NUMBER
> , TOTAL OUT NUMBER
> , ICMS OUT NUMBER
> ) AS
> BEGIN
> for
> select sum(cd.icms) as sete, cast(null as number) as doze, cast(null as
> number)as total, cast(null as number) as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.aliquota=7 and cd.idctrcpai=10 group by cast(null as number),
> cast(null as number), cast(null as number)
> union all
> select cast(null as number) as sete, sum(cd.icms) as doze, cast(null as
> number)as total, cast(null as number)as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.aliquota=12 and cd.idctrcpai=10
> union all
> select cast(null as number) as sete, cast(null as number)as doze,
> sum(cd.valor) as total, cast(null as number)as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.idctrcpai=10
> union all
> select cast(null as number) as sete, cast(null as number)as doze, cast(null
> as number) as total, sum(cd.icms) as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.idctrcpai=10
> into sete, doze, total, icms;
>
> END PROC_TOTAL_CTRC_CONTABILIDADE;
>
> Poderiam me dizer onde estou errando? o erro que o compilador aponta é o
> seguinte:
> Erro(10,2): PL/SQL: SQL Statement ignored
> Erro(25,2): PL/SQL: ORA-00933: comando SQL não encerrado adequadamente
>
>  
>


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





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [oracle_br] Ajuda Com Procedure

2010-06-18 Thread Eduardo Schurtz
Outra coisa Rodrigo, vi agora que tem um FOR ali no começo, o que você
precisa exatamente?

Att,

__
*Eduardo Schurtz*
Oracle E-Business Consultant
eduardo.schu...@gmail.com
[image: LinkedIn] [image:
Twitter]


2010/6/18 rodrigo 

>
>
> Olá, sou iniciante em Oracle, estou tentando aprender a usar o Oracle 10xe,
> tenho a seguinte procedure abaixo, deve ter algum erro de sintaxe,
> executando somente o sql no oracle retorna os valores certos, mas não
> consegui fazer a procedure funcionar:
>
> CREATE OR REPLACE PROCEDURE PROC_TOTAL_CTRC_CONTABILIDADE
> (
> CODIGO IN NUMBER
> , SETE OUT NUMBER
> , DOZE OUT NUMBER
> , TOTAL OUT NUMBER
> , ICMS OUT NUMBER
> ) AS
> BEGIN
> for
> select sum(cd.icms) as sete, cast(null as number) as doze, cast(null as
> number)as total, cast(null as number) as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.aliquota=7 and cd.idctrcpai=10 group by cast(null as number),
> cast(null as number), cast(null as number)
> union all
> select cast(null as number) as sete, sum(cd.icms) as doze, cast(null as
> number)as total, cast(null as number)as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.aliquota=12 and cd.idctrcpai=10
> union all
> select cast(null as number) as sete, cast(null as number)as doze,
> sum(cd.valor) as total, cast(null as number)as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.idctrcpai=10
> union all
> select cast(null as number) as sete, cast(null as number)as doze, cast(null
> as number) as total, sum(cd.icms) as ICMS
> from sis_ctrc_contabilidade_detail cd
> where cd.idctrcpai=10
> into sete, doze, total, icms;
>
> END PROC_TOTAL_CTRC_CONTABILIDADE;
>
> Poderiam me dizer onde estou errando? o erro que o compilador aponta é o
> seguinte:
> Erro(10,2): PL/SQL: SQL Statement ignored
> Erro(25,2): PL/SQL: ORA-00933: comando SQL não encerrado adequadamente
>
>  
>


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





--
>Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira 
>responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--
>Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » 
>Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: 
>http://www.oraclebr.com.br/  

 Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
oracle_br-unsubscr...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




[oracle_br] Re: Ajuda Com Procedure

2010-06-18 Thread rodrigo
O For ficou ali por erro de digitação, é o seguinte, tenho uma tabela com os 
campos:
"IDCTRCDETALHE" NUMBER NOT NULL ENABLE,
"IDCTRCPAI" NUMBER NOT NULL ENABLE,
"CTRC"  NUMBER,
"VALOR" NUMBER,
"ALIQUOTA"  NUMBER,
"ICMS"  NUMBER,

preciso que esta procedure me traga o somatorio total dos quatro campos de 
acordo com o códido selecionado, sendo que deve somar separado o icms de acordo 
com as aliquotas lançadas, 7 ou 12.
exe: codigo 10
valor: 50,00
icms: 30,00
icms 7% 12,00
icms 12% 18,00




[oracle_br] Re: Ajuda Com Procedure

2010-06-18 Thread José Laurindo
Eduardo, penso que há um equívoco Fundamental por parte lá do outro colega, um 
que a query no FROM ** não vai ** solucionar: ocorre que o INTO ,por DEFINIÇÃO, 
traz apenas UMA LINHA DE RESULTADO, e um UNION , óbvio, vai trazer uma linha ao 
menos da query 1, OUTRA linha ao menos da query2, outra ao menos da query 3 
sendo unida... Percebeu o problema ? Ele está tentando usar um construto que só 
aceita UMA linha (o INTO) com uma sintaxe que traz unidas VÁRIAS linhas, há uma 
DISPARIDADE óbvia aí...
  Por isso o correto é abrir CURSOR...

 []s

   Chiappa 

--- Em oracle_br@yahoogrupos.com.br, Eduardo Schurtz  
escreveu
>
> Boa tarde.
> 
> Você não pode jogar o "INTO" desse jeito, ele tem que ficar sempre depois do
> SELECT e antes do FROM.
> 
> Como você está usando UNION, tenta fazer assim (Joguei toda a sua query no
> FROM, como se fosse uma tabela:
> 
> select sete
>   ,doze
>   ,total
>   ,icms
> from   (select sum(cd.icms) as sete
>   ,cast(null as number) as doze
>   ,cast(null as number) as total
>   ,cast(null as number) as ICMS
> from   sis_ctrc_contabilidade_detail cd
> where  cd.aliquota = 7
> andcd.idctrcpai = 10
> group  by cast(null as number)
>  ,cast(null as number)
>  ,cast(null as number)
> union all
> select cast(null as number) as sete
>   ,sum(cd.icms) as doze
>   ,cast(null as number) as total
>   ,cast(null as number) as ICMS
> from   sis_ctrc_contabilidade_detail cd
> where  cd.aliquota = 12
> andcd.idctrcpai = 10
> union all
> select cast(null as number) as sete
>   ,cast(null as number) as doze
>   ,sum(cd.valor) as total
>   ,cast(null as number) as ICMS
> from   sis_ctrc_contabilidade_detail cd
> where  cd.idctrcpai = 10
> union all
> select cast(null as number) as sete
>   ,cast(null as number) as doze
>   ,cast(null as number) as total
>   ,sum(cd.icms) as ICMS
> from   sis_ctrc_contabilidade_detail cd
> where  cd.idctrcpai = 10 into sete, doze, total, icms)
> into   sete
>   ,doze
>   ,total
>   ,icms
> from   dual;
> 
> Veja se funciona.
> 
> Entendeu? Isso que importa.
> 
> Att,
> 
> __
> *Eduardo Schurtz*
> Oracle E-Business Consultant
> eduardo.schu...@...
> [image: LinkedIn] [image:
> Twitter]
> 
> 
> 2010/6/18 rodrigo 
> 
> >
> >
> > Olá, sou iniciante em Oracle, estou tentando aprender a usar o Oracle 10xe,
> > tenho a seguinte procedure abaixo, deve ter algum erro de sintaxe,
> > executando somente o sql no oracle retorna os valores certos, mas não
> > consegui fazer a procedure funcionar:
> >
> > CREATE OR REPLACE PROCEDURE PROC_TOTAL_CTRC_CONTABILIDADE
> > (
> > CODIGO IN NUMBER
> > , SETE OUT NUMBER
> > , DOZE OUT NUMBER
> > , TOTAL OUT NUMBER
> > , ICMS OUT NUMBER
> > ) AS
> > BEGIN
> > for
> > select sum(cd.icms) as sete, cast(null as number) as doze, cast(null as
> > number)as total, cast(null as number) as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.aliquota=7 and cd.idctrcpai=10 group by cast(null as number),
> > cast(null as number), cast(null as number)
> > union all
> > select cast(null as number) as sete, sum(cd.icms) as doze, cast(null as
> > number)as total, cast(null as number)as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.aliquota=12 and cd.idctrcpai=10
> > union all
> > select cast(null as number) as sete, cast(null as number)as doze,
> > sum(cd.valor) as total, cast(null as number)as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.idctrcpai=10
> > union all
> > select cast(null as number) as sete, cast(null as number)as doze, cast(null
> > as number) as total, sum(cd.icms) as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.idctrcpai=10
> > into sete, doze, total, icms;
> >
> > END PROC_TOTAL_CTRC_CONTABILIDADE;
> >
> > Poderiam me dizer onde estou errando? o erro que o compilador aponta é o
> > seguinte:
> > Erro(10,2): PL/SQL: SQL Statement ignored
> > Erro(25,2): PL/SQL: ORA-00933: comando SQL não encerrado adequadamente
> >
> >  
> >
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




Re: [oracle_br] Re: Ajuda Com Procedure

2010-06-18 Thread Evandro Giachetto
Opa, como Vai Eduardo.

Bem... aprecio o fato de estar estudando Oracle e fico muito satisfeito por
poder te ajudar com essa dúvida.

Vamos lá.

Imagino, após ler sua procedure, que está tentando fazer com que essa te
retorne nos parâmetros do tipo OUT as linhas retornadas pelo select,
correto?

Pelo que li também no que o Chiappa Escreveu, essa sua query retorna mais de
uma Linha. (ATÉ PORQUE EXISTEM UNIONS em sua query).

Bom, vou tentar explicar de uma forma simples (o que é obvio.. deeer... pois
do q adiantaria eu complicar mais.. rss).

Primeiro.
Declaranto parâmetros OUT de tipos primitivos em procedures faz com que a
procedure retorne somente UM valor para cada parâmetro.

Pense em Tipo de Dado Primitivo como tipo de dado Original.
Ou seja:
Numérico, Literal, Data, etc.

(Antes que alguém diga que isso não é tipo de dado primitivo, eu digo: Usei
o termo "Primitivo" apenas para tentar deixar mais fácil a explicação... e
não estou me referenciando a tipos de dados primitivos como visto em Java ou
C++, ok?)

Ou seja.
Cada parâmetro de tipo primitivo da procedure pode-se retornar somente UM
valor primitivo.

Exemplo:

Um parâmetro do tipo Number, pode receber UM e somente UM valor numérico, ou
seja:
0 ou 1 ou 2 ou 3.
Nunca
0 e 1 e 2 e 3.

Compreende?


Obs: Para retornar mais de um valor por parâmetro é preciso trabalhar com
tipos de dados complexos, como Arrays (Vetores).
Array no Oracle é tratado/conhecido como conjunto (ou tabela) de dados.
São criados dessa forma:
 IS TABLE OF ;

Exemplo.
num_array IS TABLE OF NUMBER(6);

Dessa forma criamos um array do tipo de dados NUMBER.
Cada elemento do array é manipulado através de um indice ou ponteiro. Dessa
forma:

num_array[1] := 38;
num_array[2] := 29;

Dê uma pesquisada mais a fundo sobre isso caso queira saber mais.


Segundo ponto que vejo errado em sua procedure.

Você tentou iniciar um laço de repetição (FOR) mas não disse onde esse laço
termina.

Para um laço de repetição em PL/SQL é preciso que diga ao interpretador onde
ele começa e onde ele termina.

A sintaxe mais simples desse tipo de for que vc tentou usar é a seguinte:

...
FOR  IN (instrução select) LOOP
[procedimento que deve ser repetido]
END LOOP;
...

Veja em sua procedure a difereça.

Compreende?

Um exemplo simples é o seguinte:

Suponhamos que temos a seguinte tabela de nome EMP, que pertence ao usuário
SCOTT.

Tabela: SCOTT.EMP
EMPNO NUMBER(6)
ENAME VARCHAR2(40)
MGR NUMBER(6)

temos os seguintes valores para essa tabela:

EMPNO   ENAME  MGR
1  King
2  Ane1
3  Tylor   1
4  Jill  2

Agora, considere o seguinte bloco PL/SQL anonimo.

DECLARE
BEGIN

FOR rec IN (select ENAME as nome_empregado from SCOTT.EMP) LOOP

dbms_output.print_line('Nome: ' || rec.nome_empregado);

END LOOP;

END;

O Resultado em tela desse bloco pl/sql deve ser o seguinte:

Nome: King
Nome: Ane
Nome: Tylor
Nome: Jill


Consegue compreender como funciona um laço FOR?

Bom, espero que com isso eu tenha te ajudado o mínimo que seja.

Forte abraço e continue com os estudos.

Evandro Giachetto
Oracle SQL Expert
Oracle Certified Associate
evan...@clickinterativa.com.br


Em 18 de junho de 2010 20:19, José Laurindo escreveu:

>
>
> Eduardo, penso que há um equívoco Fundamental por parte lá do outro colega,
> um que a query no FROM ** não vai ** solucionar: ocorre que o INTO ,por
> DEFINIÇÃO, traz apenas UMA LINHA DE RESULTADO, e um UNION , óbvio, vai
> trazer uma linha ao menos da query 1, OUTRA linha ao menos da query2, outra
> ao menos da query 3 sendo unida... Percebeu o problema ? Ele está tentando
> usar um construto que só aceita UMA linha (o INTO) com uma sintaxe que traz
> unidas VÁRIAS linhas, há uma DISPARIDADE óbvia aí...
> Por isso o correto é abrir CURSOR...
>
> []s
>
> Chiappa
>
> --- Em oracle_br@yahoogrupos.com.br ,
> Eduardo Schurtz  escreveu
> >
> > Boa tarde.
> >
> > Você não pode jogar o "INTO" desse jeito, ele tem que ficar sempre depois
> do
> > SELECT e antes do FROM.
> >
> > Como você está usando UNION, tenta fazer assim (Joguei toda a sua query
> no
> > FROM, como se fosse uma tabela:
> >
> > select sete
> > ,doze
> > ,total
> > ,icms
> > from (select sum(cd.icms) as sete
> > ,cast(null as number) as doze
> > ,cast(null as number) as total
> > ,cast(null as number) as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.aliquota = 7
> > and cd.idctrcpai = 10
> > group by cast(null as number)
> > ,cast(null as number)
> > ,cast(null as number)
> > union all
> > select cast(null as number) as sete
> > ,sum(cd.icms) as doze
> > ,cast(null as number) as total
> > ,cast(null as number) as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.aliquota = 12
> > and cd.idctrcpai = 10
> > union all
> > select cast(null as number) as sete
> > ,cast(null as number) as doze
> > ,sum(cd.valor) as total
> > ,cast(null as number) as ICMS
> > from sis_ctrc_contabilidade_detail cd
> > where cd.idctrcpai