RES: [oracle_br] diminuir tablespace?

2010-06-23 Por tôpico Welvis Douglas
Márcio, de uma procurada sobre o SHRINK no forum. A um tempo atras disconti
bastante sobre isso com o Chiappa. No fim das contas cheguei a uma brilhante
conclusão. No ambiente que tenho não iria ajudar em nada.
 
Mas os rebuilds é bom fazer sim. Estou fazendo em alguns indices aqui na
empresa.
 
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.

  _  

De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
nome de Márcio Ricardo Alves da Silva
Enviada em: quarta-feira, 23 de junho de 2010 11:49
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] diminuir tablespace?


  

Raul, hoje pelo EM, eu faço todo mês um SHRINK nas tablespace de dados e 
índices que são recomendadas pelo EM.

O que acha, continuo dessa maneira ou cada vez que deletar informações faço 
o SHRINK?

Márcio.
- Original Message - 
From: Raul Francisco Costa F. de Andrade, DBA raulf...@gmail.com
mailto:raulfdba%40gmail.com 
To: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
Sent: Wednesday, June 23, 2010 11:45 AM
Subject: Re: [oracle_br] diminuir tablespace?

Olá meu amigo!

faça um shrink nas tabelas e índices:

ALTER TABLE TABLE_NAME SHRINK SPACE

ALTER INDEX INDEX_NAME SHRINK SPACE [COMPACT]

Ou faça um move da tabela de um tablespace para outro:

ALTER TABLE TABLE_NAME MOVE NOME_TABLESPACE;
Depois volte para o mesmo se for o caso.

Para mover a tabela faça antes:

ALTER TABLE TABLE_NAME enable row movement.

Att.

Raul

Em 23 de junho de 2010 11:05, Márcio Ricardo Alves da Silva 
marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br  escreveu:



 Boas.

 Hoje tenho no meu banco algumas tabelas que são deletadas informações de 
 um
 determinado período, posso considerar que todo mês essas informações são
 deletadas.

 Nessa tabela tenho um campo CLOB e são inseridas muitas informações, com a
 deleção minha tablespace ficam fragmentada, certo?

 É aconselhável desfragmentar essa tablespace? Como posso fazer para que o
 Oracle possa reutilizar esses extents que ficaram sem informação?

 Da maneira que está, eu mesmo deletando as informações, só estou 
 diminuindo
 a quantidade de registros, já o espaçamento no meu disco continua do mesmo
 jeito.

 HP-UX 11.23
 Oracle 10.2.0.1

 Márcio.

 [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 mailto:raulfdba%40gmail.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






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



Re: RES: [oracle_br] diminuir tablespace?

2010-06-23 Por tôpico José Laurindo
Welvis, xo tentar dar umas dicas pro Márcio : primeiro de tudo, vamos usar a 
nomenclatura mais correta - FRAGMENTAÇÃO propriamente dita ocorre quando o 
espaço liberado não mais pode ser usado de forma alguma (normalmente por causa 
de tamnhos de extent), o que Não É o caso quando vc faz delete, o espaço 
liberado por DELETEs (mas que o bd mantém reservado pra atbela/índice deletado) 
VAI SER SIM re-usado nos futuros INSERTs, isso é WHITE SPACE, não espaço 
fragmentadoper se.
  Sendo assim, a minha recomendação, antes de sair fazendo SHRINKs e REBUILDs, 
que sempre implicam em trabalho e dependendo do caso alguma indisponibilidade 
pro usuário, é simples : SE o que vc tem é white-space (e não fragmentação!) e 
SE vc sabe que em muito breve novos INSERTs vão chegar ocupando esse espaço 
reservado, não vale a pena mexer... Só se Realmente vc tem Total certeza que 
esse espaço não vai mesmo ser usado, não vão chegar em breve novos INSERTs , aí 
sim vc pode fazer shrink/rebuild/o que for pra liberar esse espaço...

 []s

  Chiappa

--- Em oracle_br@yahoogrupos.com.br, Welvis Douglas wel...@... escreveu

 Márcio, de uma procurada sobre o SHRINK no forum. A um tempo atras disconti
 bastante sobre isso com o Chiappa. No fim das contas cheguei a uma brilhante
 conclusão. No ambiente que tenho não iria ajudar em nada.
  
 Mas os rebuilds é bom fazer sim. Estou fazendo em alguns indices aqui na
 empresa.
  
 Att,
  
 Welvis Douglas da Silva Moretto
 DBA - Oracle Certified (1ZO-042)
 Fone:  (41) 9997-6297  
 E-mail:welvis_doug...@..., wel...@...
 Messenger: welvis_doug...@...
  
 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.
 
   _  
 
 De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
 nome de Márcio Ricardo Alves da Silva
 Enviada em: quarta-feira, 23 de junho de 2010 11:49
 Para: oracle_br@yahoogrupos.com.br
 Assunto: Re: [oracle_br] diminuir tablespace?
 
 
   
 
 Raul, hoje pelo EM, eu faço todo mês um SHRINK nas tablespace de dados e 
 índices que são recomendadas pelo EM.
 
 O que acha, continuo dessa maneira ou cada vez que deletar informações faço 
 o SHRINK?
 
 Márcio.
 - Original Message - 
 From: Raul Francisco Costa F. de Andrade, DBA raulf...@...
 mailto:raulfdba%40gmail.com 
 To: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
 Sent: Wednesday, June 23, 2010 11:45 AM
 Subject: Re: [oracle_br] diminuir tablespace?
 
 Olá meu amigo!
 
 faça um shrink nas tabelas e índices:
 
 ALTER TABLE TABLE_NAME SHRINK SPACE
 
 ALTER INDEX INDEX_NAME SHRINK SPACE [COMPACT]
 
 Ou faça um move da tabela de um tablespace para outro:
 
 ALTER TABLE TABLE_NAME MOVE NOME_TABLESPACE;
 Depois volte para o mesmo se for o caso.
 
 Para mover a tabela faça antes:
 
 ALTER TABLE TABLE_NAME enable row movement.
 
 Att.
 
 Raul
 
 Em 23 de junho de 2010 11:05, Márcio Ricardo Alves da Silva 
 marcio_...@... mailto:marcio_cbj%40yahoo.com.br  escreveu:
 
 
 
  Boas.
 
  Hoje tenho no meu banco algumas tabelas que são deletadas informações de 
  um
  determinado período, posso considerar que todo mês essas informações são
  deletadas.
 
  Nessa tabela tenho um campo CLOB e são inseridas muitas informações, com a
  deleção minha tablespace ficam fragmentada, certo?
 
  É aconselhável desfragmentar essa tablespace? Como posso fazer para que o
  Oracle possa reutilizar esses extents que ficaram sem informação?
 
  Da maneira que está, eu mesmo deletando as informações, só estou 
  diminuindo
  a quantidade de registros, já o espaçamento no meu disco continua do mesmo
  jeito.
 
  HP-UX 11.23
  Oracle 10.2.0.1
 
  Márcio.
 
  [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...@... mailto:raulfdba%40gmail.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
 
 
 
 
 
 
 [As partes desta mensagem que não continham texto foram removidas]





Re: RES: [oracle_br] diminuir tablespace?

2010-06-23 Por tôpico Márcio Ricardo Alves da Silva
Chiappa, é exatamente a situação da minha tabela que sofre DELETE. 

 Se eu deleto 1 milhão de registros, outros 1 milhão irão ser inseridos, com 
isso não precisarei fazer o SHRINK.

O que eu não entendi foi o não fazer REBUILD. Eu não teria que reindexar os 
índices? Poderia me esclarecer esse ponto, por favor?

Márcio.
  - Original Message - 
  From: José Laurindo 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Wednesday, June 23, 2010 1:30 PM
  Subject: Re: RES: [oracle_br] diminuir tablespace?



  Welvis, xo tentar dar umas dicas pro Márcio : primeiro de tudo, vamos usar a 
nomenclatura mais correta - FRAGMENTAÇÃO propriamente dita ocorre quando o 
espaço liberado não mais pode ser usado de forma alguma (normalmente por causa 
de tamnhos de extent), o que Não É o caso quando vc faz delete, o espaço 
liberado por DELETEs (mas que o bd mantém reservado pra atbela/índice deletado) 
VAI SER SIM re-usado nos futuros INSERTs, isso é WHITE SPACE, não espaço 
fragmentadoper se.
  Sendo assim, a minha recomendação, antes de sair fazendo SHRINKs e REBUILDs, 
que sempre implicam em trabalho e dependendo do caso alguma indisponibilidade 
pro usuário, é simples : SE o que vc tem é white-space (e não fragmentação!) e 
SE vc sabe que em muito breve novos INSERTs vão chegar ocupando esse espaço 
reservado, não vale a pena mexer... Só se Realmente vc tem Total certeza que 
esse espaço não vai mesmo ser usado, não vão chegar em breve novos INSERTs , aí 
sim vc pode fazer shrink/rebuild/o que for pra liberar esse espaço...

  []s

  Chiappa

  --- Em oracle_br@yahoogrupos.com.br, Welvis Douglas wel...@... escreveu
  
   Márcio, de uma procurada sobre o SHRINK no forum. A um tempo atras disconti
   bastante sobre isso com o Chiappa. No fim das contas cheguei a uma brilhante
   conclusão. No ambiente que tenho não iria ajudar em nada.
   
   Mas os rebuilds é bom fazer sim. Estou fazendo em alguns indices aqui na
   empresa.
   
   Att,
   
   Welvis Douglas da Silva Moretto
   DBA - Oracle Certified (1ZO-042)
   Fone: (41) 9997-6297 
   E-mail: welvis_doug...@..., wel...@...
   Messenger: welvis_doug...@...
   
   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.
   
   _ 
   
   De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
   nome de Márcio Ricardo Alves da Silva
   Enviada em: quarta-feira, 23 de junho de 2010 11:49
   Para: oracle_br@yahoogrupos.com.br
   Assunto: Re: [oracle_br] diminuir tablespace?
   
   
   
   
   Raul, hoje pelo EM, eu faço todo mês um SHRINK nas tablespace de dados e 
   índices que são recomendadas pelo EM.
   
   O que acha, continuo dessa maneira ou cada vez que deletar informações faço 
   o SHRINK?
   
   Márcio.
   - Original Message - 
   From: Raul Francisco Costa F. de Andrade, DBA raulf...@...
   mailto:raulfdba%40gmail.com 
   To: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br 
   Sent: Wednesday, June 23, 2010 11:45 AM
   Subject: Re: [oracle_br] diminuir tablespace?
   
   Olá meu amigo!
   
   faça um shrink nas tabelas e índices:
   
   ALTER TABLE TABLE_NAME SHRINK SPACE
   
   ALTER INDEX INDEX_NAME SHRINK SPACE [COMPACT]
   
   Ou faça um move da tabela de um tablespace para outro:
   
   ALTER TABLE TABLE_NAME MOVE NOME_TABLESPACE;
   Depois volte para o mesmo se for o caso.
   
   Para mover a tabela faça antes:
   
   ALTER TABLE TABLE_NAME enable row movement.
   
   Att.
   
   Raul
   
   Em 23 de junho de 2010 11:05, Márcio Ricardo Alves da Silva 
   marcio_...@... mailto:marcio_cbj%40yahoo.com.br  escreveu:
   
   
   
Boas.
   
Hoje tenho no meu banco algumas tabelas que são deletadas informações de 
um
determinado período, posso considerar que todo mês essas informações são
deletadas.
   
Nessa tabela tenho um campo CLOB e são inseridas muitas informações, com a
deleção minha tablespace ficam fragmentada, certo?
   
É aconselhável desfragmentar essa tablespace? Como posso fazer para que o
Oracle possa reutilizar esses extents que ficaram sem informação?
   
Da maneira que está, eu mesmo deletando as informações, só estou 
diminuindo
a quantidade de registros, já o espaçamento no meu disco continua do mesmo
jeito.
   
HP-UX 11.23
Oracle 10.2.0.1
   
Márcio.
   
[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...@... mailto:raulfdba%40gmail.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

Re: RES: [oracle_br] diminuir tablespace?

2010-06-23 Por tôpico José Laurindo
Oi : antes de mais nada, fique claro que estou me referindo a índices b*tree, 
bitmaps são totalmente outro animal... 

 Bom entâo, na verdade a obs que deve ser feita é que nós não estamos mais 
usando dBASE, que a cada momento por assim dizer exigia um REBUILD de índices, 
de maneira ABSOLUTAMENTE NATURAL após um DELETE os índices serão atualizados, e 
quando um leaf block for composto apenas por registros deletados também 
NATURALMENTE ele vai pro free list, ok ? O fato é que há um mito comum rolando 
pelaí desde sempre que após uma deleção de grande número de registros 
OBRIGATORIAMENTE vc deveria fazer o REBUILD, porque o índice fica 
desbalanceado, fragmentado, vc escolhe a expressão... O mito é esse 
ORBIGATORIAMENTE, na verdade  apenas em ** RAROS ** casos vc precisa fazer 
isso... E o rebuild pode até mesmo fazer o seu índice ficar MAIOR/fazer mais 
I/O , cfrme 
http://richardfoote.wordpress.com/2009/01/13/how-to-rebuild-and-make-an-index-bigger-not-smaller-carry-that-weight/
  Nesse mesmo site temos muitíssimas outras demonstrações, como 
http://richardfoote.wordpress.com/2009/10/28/rebuilding-indexes-every-sunday-afternoon/
 , 
http://richardfoote.wordpress.com/2009/05/25/two-excellent-index-related-blog-posts/
 , http://richardfoote.wordpress.com/2009/11/12/1094/ e 
http://richardfoote.wordpress.com/2008/07/01/deleted-index-entries-part-v-trouble/
 (este vc deve ler a série toda), ok ? 
 
  Em resumo o meu conselho foi : ** Não ** faça o rebuild por fazer, faça 
apenas DEPOIS de estudar o assunto, testar e Comprovar que vc está mesmo caindo 
num dos ** raros ** casos aonde aonde vc ganha algo - digamos, uma chave 
sequencial aonde não é feito um delete tipo deletar chaves de 01 a 10 
mas sim em valores intermediários, não removendo totalmente as linhas dos leaf 
blocks, algo assim... Dá uma estudada nestas refs que te passei, TESTA 
direitinho no seu ambiente e veja se vc está no caso de rebuild ou não , 
desconfio que não, já que vc diz que a tabela é quase completamente limpa e 
logo será re-usada, mas isso é 'a verificar...
 
 []s
 
   Chiappa

--- Em oracle_br@yahoogrupos.com.br, Márcio Ricardo Alves da Silva 
marcio_...@... escreveu

 Chiappa, é exatamente a situação da minha tabela que sofre DELETE. 
 
  Se eu deleto 1 milhão de registros, outros 1 milhão irão ser inseridos, com 
 isso não precisarei fazer o SHRINK.
 
 O que eu não entendi foi o não fazer REBUILD. Eu não teria que reindexar os 
 índices? Poderia me esclarecer esse ponto, por favor?
 
 Márcio.
   - Original Message - 
   From: José Laurindo 
   To: oracle_br@yahoogrupos.com.br 
   Sent: Wednesday, June 23, 2010 1:30 PM
   Subject: Re: RES: [oracle_br] diminuir tablespace?
 
 
 
   Welvis, xo tentar dar umas dicas pro Márcio : primeiro de tudo, vamos usar 
 a nomenclatura mais correta - FRAGMENTAÇÃO propriamente dita ocorre quando o 
 espaço liberado não mais pode ser usado de forma alguma (normalmente por 
 causa de tamnhos de extent), o que Não É o caso quando vc faz delete, o 
 espaço liberado por DELETEs (mas que o bd mantém reservado pra atbela/índice 
 deletado) VAI SER SIM re-usado nos futuros INSERTs, isso é WHITE SPACE, não 
 espaço fragmentadoper se.
   Sendo assim, a minha recomendação, antes de sair fazendo SHRINKs e 
 REBUILDs, que sempre implicam em trabalho e dependendo do caso alguma 
 indisponibilidade pro usuário, é simples : SE o que vc tem é white-space (e 
 não fragmentação!) e SE vc sabe que em muito breve novos INSERTs vão chegar 
 ocupando esse espaço reservado, não vale a pena mexer... Só se Realmente vc 
 tem Total certeza que esse espaço não vai mesmo ser usado, não vão chegar em 
 breve novos INSERTs , aí sim vc pode fazer shrink/rebuild/o que for pra 
 liberar esse espaço...
 
   []s
 
   Chiappa
 
   --- Em oracle_br@yahoogrupos.com.br, Welvis Douglas welvis@ escreveu
   
Márcio, de uma procurada sobre o SHRINK no forum. A um tempo atras 
 disconti
bastante sobre isso com o Chiappa. No fim das contas cheguei a uma 
 brilhante
conclusão. No ambiente que tenho não iria ajudar em nada.

Mas os rebuilds é bom fazer sim. Estou fazendo em alguns indices aqui na
empresa.

Att,

Welvis Douglas da Silva Moretto
DBA - Oracle Certified (1ZO-042)
Fone: (41) 9997-6297 
E-mail: welvis_douglas@, welvis@
Messenger: welvis_douglas@

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.

_ 

De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em
nome de Márcio Ricardo Alves da Silva
Enviada em: quarta-feira, 23 de junho de 2010 11:49
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] diminuir tablespace?




Raul, hoje pelo EM, eu faço todo mês um SHRINK nas tablespace de dados e 
índices que