Re: [oracle_br] Re: Store Procedure, procedure ou function

2014-03-13 Por tôpico Milton Bastos Henriquis Jr.
Aí Carlos:

http://www.dbforums.com/oracle/1071499-how-create-procedure-returns-rowtype.html


Em 13 de março de 2014 17:41,  escreveu:

>
>
> Olá Milton,
>
> É bem isso mesmo, teria como depois me passar um exemplo ?
>
> Att,
> Carlos
>
>  
>


Re: [oracle_br] Re: Ajuda com erro na trigger de logon: ORA-00604: ocorr eu um erro no nível 1 SQL recursivo

2014-03-13 Por tôpico Wanderson Barrence
Opa..

Agora funcionou perfeitamente.

Mais uma vez obrigado a todos pela ajuda.

Att,

Wanderson


Em 12 de março de 2014 16:50,  escreveu:

>
>
> Wanderson,
>
> No caso de estar em um ambiente RAC, precisa mudar o código onde vem:
>   FROM v$session
>   WHERE audsid = userenv('sessionid')
>   AND ROWNUM = 1;
>
> Para:
> FROM v$session WHERE SID = sys_context('USERENV','SID');
>
> Ederson Elias
> DBA Oracle
> http://br.linkedin.com/pub/ederson-elias/24/8b/8b0
> 
> Labor improbus omnia vincit
>
>  
>


Re: [oracle_br] Re: Dúvidas - Licenciamento de servidor Standby/Contingência

2014-03-13 Por tôpico Julio Bittencourt
Boa tarde,
Gostaria de reavivar este tópico, pois a empresa está para implementar um site 
de contingência e estou com algumas dúvidas sobre o licenciamento do standby 
database.

Como o banco é Enterprise será usado o Data Guard, no esquema clássico: um 
servidor independente no site de contingência sendo atualizado através de um 
link dedicado. O standby só será aberto quando ocorrer falha no primary.

Dado este contexto, ao ler a resposta abaixo do Chiappa, entendi que não 
haveria necessidade de adquirir licença extra para o standby, já que ele não 
ficará ativo para acesso, nem mesmo de consulta.

No entanto, ao ler o documento referenciado 
"data-recovery-licensing-070587.pdf", fiquei com a impressão de que não é 
assim. Nele são listados 4 métodos:

Backup: O tradicional, para fita ou disco.
Failover: Dois ou mais servidores em "Clusters", sendo um ativo e os outros 
passivos, acessando um mesmo disk array.
Standby: O método que descrevi acima e que provavelmente será usado aqui.
Remote Mirroring: Espelhamento de volumes no nível do storage.

No método "Failover" está descrita essa permissão que o Chiappa fala de poder 
usar o banco secundário por até 10 dias no decorrer de um ano. Não é nosso 
caso, pois haverá um disk array independente no site de contingência.

No método "Standby", me parece, está claro no documento que ambos, primary e 
standby, devem estar devidamente licenciados: ". In this environment, the 
primary and the standby databases must be fully licensed". Lá não diz que se o 
banco não for aberto não precisa licenciar.

Então eu pergunto: alguém aqui implementou recentemente a solução de Data Guard 
conforme eu descrevi? Se sim, como ficou essa questão da licença no standby?

Desde já agradeço a atenção.

Att.
Julio Bittencourt



Em Terça-feira, 16 de Julho de 2013 16:59, J. Laurindo Chiappa 
 escreveu:

 
Colega, seguinte :

1) 11.2.0.1 é a versão ** inicial ** do database, que sofria de DIVERSOS bugs : 
já que não há Custo adicional, ** ABSOLUTAMENTE NÃO SE ENTENDE ** em ambiente 
Produtivo uma nova instalação com essa versão antiga e bugada - mire na 
11.2.0.4, que está para sair muito brevemente

2) sobre Licenciamento de databases não-ativos, a palavra OFICIAL da Oracle 
está no paper dela mesma, online em 
http://www.oracle.com/us/corporate/pricing/data-recovery-licensing-070587.pdf e 
com conceitos confirmados em 
http://www.oracle.com/us/corporate/pricing/olsadef-ire-v122304-070549.pdf : o 
fato é, SE o database secundário for apenas e tão somente para failover (ie, 
NÃO estiver NUNCA aberto/online/disponível enquanto o principal estiver sendo 
usado E só seja aberto quando o principal falha), esse database de failover 
pode ser usado sem licença por até 10 dias no ano, yes ??

3) desconsiderando o ACTIVE DATA GUARD (que permite que o banco standby esteja 
Ativo para consultas, portanto EXIGINDO Licenciamento do banco em si) , o 
DataGuard pode ser pensado como um AUTOMATIZADOR para o procedimento de 
standby, e realmente DG exige Enterprise Edition, além dessa automação em si 
ser cobrada : o procedimento de standby, porém, PODE SIM ser feito manualmente, 
caso em que vc não paga pelo DG e, como o banco standby NUNCA está em 
open-mode, vc cairia na licença de failover

4) sim, STREAMS e várias outras opções de replicação lógica de dados (tais como 
views materializadas/snapshots, triggers com dblink, etc) não exigem 
Licenciamento extra e podem ser usadas em Standard Edition, não demandam 
Enterprise

5) sim, a volta de um backup com servidor principal falhado/offline (INCLUSIVE 
backup com banco em archive mode archivando para um storage acessível tanto ao 
server prod quanto ao server contingência, que permitiria perda de dados 
minúscula) não demanda Licenciamento e nem exige Enterprise Edition

6) não deixe de considerar a opção de RAC One Node, via de regra seus custos 
são acessíveis : as refs estão em 
http://www.oracle.com/technetwork/products/clustering/overview/ds-rac-one-node-11gr2-185089.pdf

7) última observação : se o seu Cliente tem restrições de orçamento para pagar 
por soluções de standby dentro do database, não deixe de considerar a opção de 
Active/Passive Cluster , ie : o database em si (os datafiles e etc) está num 
storage acessível a ambos os servidores, as duas máquinas estão ligadas por 
rede E possuem algum software de cluster instalado (pode ser o próprio 
clusterware cfrme 
https://blogs.oracle.com/xpsoluxdb/entry/clusterware_11gr2_setting_up_an_activepassive_failover_configuration
 ou pode ser de terceiros), as duas máquinas tem o software Oracle instalado ** 
MAS ** ele está sendo executado APENAS no server principal : vc tem um script 
para ativar a instância no secundário...

[]s

Chiappa

--- Em oracle_br@yahoogrupos.com.br, "julianomartinez"  escreveu
>
> Pessoal, preciso apresentar um orçamento para um futuro cliente.
> Nesse orçamento tenho a solução ERP da empresa onde trabalho e também a 
> infraestrutura de servidores e Banco de Dad

Re: [oracle_br] Dúvidas - Licenciamento de servidor Standby/Contingência

2014-03-13 Por tôpico Julio Bittencourt
Boa tarde,
Gostaria de reavivar este tópico, pois a empresa está para implementar um site 
de contingência e estou com algumas dúvidas sobre o licenciamento do standby 
database.

Como o banco é Enterprise será usado o Data Guard, no esquema clássico: um 
servidor independente no site de contingência sendo atualizado através de um 
link dedicado. O standby só será aberto quando ocorrer falha no primary.

Dado este contexto, ao ler a resposta abaixo do Chiappa, entendi que não 
haveria necessidade de adquirir licença extra para o standby, já que ele não 
ficará ativo para acesso, nem mesmo de consulta.

No entanto, ao ler o documento referenciado 
"data-recovery-licensing-070587.pdf", fiquei com a impressão de que não é 
assim. Nele são listados 4 métodos:

Backup: O tradicional, para fita ou disco.
Failover: Dois ou mais servidores em "Clusters", sendo um ativo e os outros 
passivos, acessando um mesmo disk array.
Standby: O método que descrevi acima e que provavelmente será usado aqui.
Remote Mirroring: Espelhamento de volumes no nível do storage.

No método "Failover" está descrita essa permissão que o Chiappa fala de poder 
usar o banco secundário por até 10 dias no decorrer de um ano. Não é nosso 
caso, pois haverá um disk array independente no site de contingência.

No método "Standby", me parece, está claro no documento que ambos, primary e 
standby, devem estar devidamente licenciados: ". In this environment, the 
primary and the standby databases must be fully licensed". Lá não diz que se o 
banco não for aberto não precisa licenciar.

Então eu pergunto: alguém aqui implementou recentemente a solução de Data Guard 
conforme eu descrevi? Se sim, como ficou essa questão da licença no standby?

Desde já agradeço a atenção.

Att.
Julio Bittencourt



Em Terça-feira, 16 de Julho de 2013 17:00, angelo  
escreveu:

Julio,

Acho melhor vc ligar pra eles, pra ter uma maior certeza, comente tudo que
o Milton comentou abaixo e já obtém até propostas e valores para negociar
com o seu cliente..
Essa questao de licenciamento é sempre uma coisa complicada.  Eu tenho o
cartao de visita de um cara que me atendeu no inicio do ano, em uma compra
da empresa, segue abaixo.

*Lucas Jacoby* | Sales Representative - RJ/ES
Phone: 55 11 5184 4473 | Mobile: 55 11 99707-8668

Email : lucas.jac...@oracle.com
*Oracle Indirect Coverage*
ORACLE Brasil | Av. Alfredo Egídio de Souza Aranha, 100 | Bloco B - 9° andar
Cep 04726-170 | São Paulo - SP - Brazil


2013/7/16 Milton Bastos Henriquis Jr. 

> Olá Julio! Vou ver se consigo te ajudar respondendo abaixo
>
> 1 – Caso opte por manter a disponibilidade com o Oracle Data Guard (versão
> Enterprise Editon), faz-se necessário também licenciar o servidor STANDBY
> ?? É licenciado com os mesmos valores do PRIMÁRIO ou tem algum custo
> diferenciado para um STANDBY que só será usado em caso de falha do
> primário?
>
> Julio, aqui eu não tenho certeza absoluta se é necessário licenciar, mas
> tenho quase certeza que sim.
> Se for o Active Data Guard eu tenho CERTEZA que sim, precisa licenciar com
> o mesmo valor do primário.
>
>
> 2 – Caso meu cliente opte pela versão STANDARD EDITION ONE ou a STANDARD
> EDITION, em ambas consigo implementar o uso de STREAMS e /ou GOLDEN GATE??
> Não são como o Data Guard que só funciona na Enterprise Edition?
>
> STREAMS eu nunca trabalhei mas ACHO (me corrijam se eu estiver errado por
> favor) que já é incluso com a versão Standard - ou seja, pode trabalhar com
> a Standard + Streams sim, e nem é preciso licenciar a parte.
> Já o Golden Gate é um produto a parte, e por isso tem que ser licenciada a
> parte.
>
> 3 – Caso meu cliente decida apenas por manter o outro servidor para um
> possível RESTORE, assumindo o risco de que ocorrendo um incêndio no prédio
> onde encontra-se o servidor de produção, teremos a base apenas do momento
> do último backup, como funciona a questão de licenciamento desse servidor
> secundário. Também faz-se necessário licenciá-lo?
>
> No meu entendimento não é necessário licenciar não. Mas já ouvi papos
> colocando essa discussão de forma contraditória.
> A questão é: vc vai deixar o Oracle INSTALADO nessa máquina?
> Eu entendo que se vc não deixar o Oracle instalado - ou seja, instalar
> somente quando acontecer um crash no principal, que vc não precisa pagar
> uma segunda licença.
> MAS... esse é um assunto que sempre causa polêmica, e se perguntar pra
> várias pessoas a gente sempre ouve várias respostas diferentes... rs...
> Já vi até funcionários da Oracle discutindo entre si, com opiniões
> diferentes.
>
>
> Pra vc ter CERTEZA desses dados eu sugiro que vc procure o setor de
> pré-vendas de algum parceiro Oracle da sua cidade/região!
>
> Abraço
>
> Miltão
> http://certificacaobd.com.br
>
>
>
>
>
> 2013/7/16 julianomartinez 
>
> > **
> >
> >
> > Pessoal, preciso apresentar um orçamento para um futuro cliente.
> > Nesse orçamento tenho a solução ERP da empresa onde trabalho e também a
> > infraestrutura de servidores e Ba

Re: [oracle_br] Re: Store Procedure, procedure ou function

2014-03-13 Por tôpico carlosjunior1983
Olá Milton,  

 É bem isso mesmo, teria como depois me passar um exemplo ?
 

 Att, 
 Carlos


[oracle_br] Re: Oracle 11g e iSCSI

2014-03-13 Por tôpico jlchiappa
Pelo que entendi, em um único LUN vc vai enfiar os datafiles, os redo log files 
e os archives, só mudando o sub-diretório, mas fisicamente o dispositivo é o 
mesmo pra todo mundo, é isso ?? Sendo isso, para a administração rigorosamente 
Não vejo diferença de vc ter um subdiretório ../archives ou não Eu só me 
preocuparia é em termos de performance : lembre-se que o RDBMS Oracle faz I/O 
(leitura E gravação) constantemente E de modo simultâneo nos seus arquivos 
(nada impede que a mesmo tempo que o lgwr tá gravando um log o dbwr tá 
atualizando um datafile, digamos) então vc ** tem ** que se Assegurar que não 
vai haver contenção em essa única LUn atendendo todo mundo...

 Sobre uma eventual falha de iSCSI, é assim : tudo depende do teu ambiente *** 
não perder *** nenhum byte do que estava sendo gravado e *** não corromper *** 
nada quando os disk devices voltarem a ficar onlines, EM ESPECIAL os archives e 
os datafiles Basta que vc perca uns poucos bytes duma eventual gravação dum 
datafile, que vc perca um só vetor de alteração de um log, que vc pode acabar 
com corrupção na mão, sim ??? Então ALGUÉM/ALGO (alguma opção de journaling, 
sei lá) tem que te GARANTIR que tudo que estava nos buffers de gravação FOI 
efetivamente flusheado para disco, que vc não perca nenhum I/O, aí vc consegue 
recuperar o database depois do CRASH... 
 
  []s
  
Chiappa

Re: [oracle_br] Re: Store Procedure, procedure ou function

2014-03-13 Por tôpico jlchiappa
 Na verdade eu entendi que ele quer um ** resultset ** , e que inclusive seria 
** indefinido ** em tempo de desenvolvimento já que o SQL vai ser dinãmico : 
sendo isso, para retornar um RESULTSET, composto de um número indeterminado de 
linhas e colunas, e que não seja limitado pelas restrições de memória do 
PL/SQL, REF CURSOR é a resposta...
 vamos ver se a pessoa lá confirma ou não a suposição do que é que ela 
quer/precisa
 
  []s
  
Chiappa

Re: [oracle_br] Re: Store Procedure, procedure ou function

2014-03-13 Por tôpico Milton Bastos Henriquis Jr.
Chiappa, na primeira vez que li o e-mail eu entendi outra coisa
completamente diferente

Pelo que entendi, ele quer que uma Stored Procedure por exemplo retorne
(numa váriavel de output) uma estrutura com várias linhas.

Pois todo SELECT dentro de um bloco PL/SQL só pode retornar uma linha
(armazenando o resultado em váriaveis com o INTO).

Pelo que entendi ele quer rodar um SELECT no PL/SQL, que retorna várias
linhas, armazenar numa váriavel e retornar via parâmetro de saída.

Já fiz isso muitas vezes num projeto que trabalhei em 2006 - lembro que eu
declarava um TYPE na package, essa type do tipo "record" ou "record of",
sinceramente não lembro da sintaxe!
E depois criava uma variável que era do tipo Array daquele Type, alguma
coisa do tipo!

Infelizmente estou sem tempo pra pesquisar agora, senão já passava a
resposta pronta, mas realmente não lembro a sintaxe de cabeça!


Em 13 de março de 2014 14:35,  escreveu:

>
>
> Bem, antes de responder só um Aviso - NEM DE LONGE coisas genéricas assim
> são recomendadas no RDBMS Oracle, pois podem levar aos mais diversos
> problemas tais como :
>
> - controladoria : como os programadores e/ou usuários finais podem à
> volonté mandar o texto de SQL que quiserem (SEM validação prévia, SEM
> estudo de performance, SEM controle de versão), e na hora que quiserem (SEM
> respeitar nenhum tipo de scheduling), só imagino a bagunça pra controlar
> esse tipo de ambiente
>
> - performance : SQL dinâmico ** necessariamente ** implica sempre em PARSE
> extra, mais gasto de CPU e recursos de modo geral, Além de não aproveitar
> plenamente os caches internos do RDBMS
>
> - segurança : google por DYNAMIC SQL INJECTION e veja o tamanho da encrenca
>
> - complexidade : SQl dinâmico ** necessariamente ** implica que vc vai
> escrever mais, não importa a API usada - pode ser um pouco mais só no caso
> de optar por REF CURSOR, pode ser muito mais no caso de vc ter que apelar
> para DBMS_SQL ou EXECUTE IMMEDIATE, mas que vc vai escrever mais, vai ter
> mais código para manter, é de ´praxe com SQL dinâmico...
>
> isso posto : se REALMENTE vc quiser mesmo ir para esse caminho, veja refs
> e exemplos em
> http://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:479021456587,
> http://asktom.oracle.com/pls/asktom/f?p=100:11:P11_QUESTION_ID:1288401763279e
> http://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:1669972300346534908-
>  se ancaixar na sua necessidade, vá de REF CURSOR dinâmico, aonde vc passa
> o SQL numa string e abre o REF CURSOR , caso não der aí vc usa as outras
> técnicas citadas nos links (ie, DBMS_SQL e EXECUTE IMMEDIATE ... O problema
> com essas outras técnicas é que elas não retornam um resultset per se, com
> elas vc teria que ter algum objeto temporário para conter os registros
> retornados
>
>  []s
>
>Chiappa
>
>


Re: [oracle_br] Oracle 11g e iSCSI

2014-03-13 Por tôpico gust.goulart
Angelo,

Concordo com vc, e tenho sim um mpio configurado. Essa minha dúvida é pelo 
seguinte. Esse meu server Oracle é uma VM em um XenServer. Estou colocando 
outro servidor físico para contruir um pool, tenho um workload balance no pool, 
quando uma VM migra de um server para outro, essas conexões são resetadas por 
segundos. Será que a base continuaria no ar?

Re: [oracle_br] Oracle 11g e iSCSI

2014-03-13 Por tôpico angelo
Gustavo,

Se a conexão iscsi em algum momento falhar, o efeito será como se não
tivesse um HD na maquina. O banco com certeza vai cair por nao encontrar
mais o disco e nao vai subir mais,  até que se resolva a conexão e o disco
volte a ficar visivel no SO.

Aliás, conexão com storage, normalmente, não é para falhar nunca, costuma
ter redundância dobrada. Daí pergunto, como está sendo definido isso?  Você
só tem um portal de acesso, não configuraram redundancia, noramlemtne
chamado de mpio (multipath) ?




2014-03-13 14:04 GMT-03:00 Gustavo Goulart :

>
>
> Prezados, bom dia!
>
> Fiz recentemente uma instalação do Oracle aqui na empresa.
>
>  /u01/app/oracle - instalação - ORACLE_BASE
>
> Quando fui criar o banco com a ferramenta dbca, direcionei os arquivos de
> dados para meu storage. Esse storage tem uma LUN, que esta mapeada via
> iscsi para o server onde instalei o Oracle. Esta LUN ficou mapeada assim:
>
> /u02/oracle/oradata
>
> Dentro desse diretório oradata, estão os arquivos de redo, undo,
> controlfile, sysaux, system  Então criei um diretório datafile e meus
> datafiles estão dentro. Ficando assim:
>
> /u02/oracle/oradata/datafile - APP_DADOS.dbf e APP_INDEX.dbf
>
> Qual a recomendação para os archivelog, onde devo colocalos? Estou
> pensando em habilita-los no
> /u02/oracle/archive/. Estou correto em minha decisão?
>
> Outra dúvida.
>
> Se minha conexão iscsi falhar e eu perder o /u02, quando eu restabelecer a
> mesma consigo levantar o DB e aplicar as útimas transações ?
>
> Agradeço ajudas.
>
>
>
>  
>


[oracle_br] Re: Store Procedure, procedure ou function

2014-03-13 Por tôpico jlchiappa
Bem, antes de responder só um Aviso - NEM DE LONGE coisas genéricas assim são 
recomendadas no RDBMS Oracle, pois podem levar aos mais diversos problemas tais 
como :

- controladoria : como os programadores e/ou usuários finais podem à volonté 
mandar o texto de SQL que quiserem (SEM validação prévia, SEM estudo de 
performance, SEM controle de versão), e na hora que quiserem (SEM respeitar 
nenhum tipo de scheduling), só imagino a bagunça pra controlar esse tipo de 
ambiente

- performance : SQL dinâmico ** necessariamente ** implica sempre em PARSE 
extra, mais gasto de CPU e recursos de modo geral, Além de não aproveitar 
plenamente os caches internos do RDBMS

- segurança : google por DYNAMIC SQL INJECTION e veja o tamanho da encrenca

- complexidade : SQl dinâmico ** necessariamente ** implica que vc vai escrever 
mais, não importa a API usada - pode ser um pouco mais só no caso de optar por 
REF CURSOR, pode ser muito mais no caso de vc ter que apelar para DBMS_SQL ou 
EXECUTE IMMEDIATE, mas que vc vai escrever mais, vai ter mais código para 
manter, é de ´praxe com SQL dinâmico...

isso posto : se REALMENTE vc quiser mesmo ir para esse caminho, veja refs e 
exemplos em 
http://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:479021456587 
, 
http://asktom.oracle.com/pls/asktom/f?p=100:11:P11_QUESTION_ID:1288401763279
 e 
http://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:1669972300346534908
 - se ancaixar na sua necessidade, vá de REF CURSOR dinâmico, aonde vc passa o 
SQL numa string e abre o REF CURSOR , caso não der aí vc usa as outras técnicas 
citadas nos links (ie, DBMS_SQL e EXECUTE IMMEDIATE ... O problema com essas 
outras técnicas é que elas não retornam um resultset per se, com elas vc teria 
que ter algum objeto temporário para conter os registros retornados

 []s
 
   Chiappa

[oracle_br] Oracle 11g e iSCSI

2014-03-13 Por tôpico Gustavo Goulart
Prezados, bom dia!

Fiz recentemente uma instalação do Oracle aqui na empresa.


 /u01/app/oracle - instalação - ORACLE_BASE


Quando fui criar o banco com a ferramenta dbca, direcionei os arquivos de dados 
para meu storage. Esse storage tem uma LUN, que esta mapeada via iscsi para o 
server onde instalei o Oracle. Esta LUN ficou mapeada assim:

/u02/oracle/oradata 

Dentro desse diretório oradata, estão os arquivos de redo, undo, controlfile, 
sysaux, system  Então criei um diretório datafile e meus datafiles estão 
dentro. Ficando assim:

/u02/oracle/oradata/datafile - APP_DADOS.dbf e APP_INDEX.dbf

Qual a recomendação para os archivelog, onde devo colocalos? Estou pensando em 
habilita-los no
/u02/oracle/archive/. Estou correto em minha decisão?

Outra dúvida. 


Se minha conexão iscsi falhar e eu perder o /u02, quando eu restabelecer a 
mesma consigo levantar o DB e aplicar as útimas transações ?

Agradeço ajudas.

[oracle_br] Store Procedure, procedure ou function

2014-03-13 Por tôpico carlosjunior1983
Srs blz, sou novo na área de banco e eu estou com uma necessidade e eu não 
estou conseguindo fazer, preciso fazer uma estrutura no banco para rodar um sql 
que irei passar para que seja executado no banco e retorna a consulta (mais de 
um registro) alguém tem algum exemplo que eu possa atender esta necessidade ? 
Desde já obrigado.
 Carlos


[oracle_br] Re: identificar crescimento de CLOB

2014-03-13 Por tôpico jlchiappa
 Tranquilo ? Então, a informação instantânea de quanto um segmento (seja LOB 
segment, data segment, index segment, qquer um) está consumindo no momento vc 
obtém na DBA_SEGMENTS (e na DBA_EXTENTS vc obtém uns detalhes mais finos, como 
tamanho e qtdade dos extents alocados) - no seu caso que interessam LOB, 
provavelmente fazendo join delas com a DBA_LOBS...
  Assim , para vc monitorar o crescimento vc precisa de informação Histórica 
das views em questão, yes ?? CASO vc tenha Licenciado o uso do AWR, na 10g vc 
pode ober esse tipo de informação nas DBA_HIST_xx correspondentes , tal como 
DBA_HIST_SEG_STAT... Já SE vc não tiver AWR ativo e/ou não tiver Licença para o 
uso, aí é voc~e que vai ter que criar uma tabela sua aonde x vezes por dia vc 
armazena o consumo em disco copiando da DBA_SEGMENTS
  
  Uma vez obtida a informação, para vc analisar as causas, primeiro vc tem que 
conhecer tecnicamente como o RDBMS trabalha com LOBs : goto manual "Oracle 
Database Application Developer's Guide - Large Objects", e algumas refs 
auxiliares interessantes são http://asktom.oracle.com (pesquise por LOB que vc 
acha diversos artigos) e 
http://jonathanlewis.wordpress.com/category/oracle/infrastructure/lobs/ (aqui 
vc acha diversos estudos de casos de issues relacionadas com LOBs)... Não deixe 
de levantar a situação física dos seus LOBs (ie, se estão na mesma tablespace 
que os dados escalares ou não, se a tablespace é LMT ou não, como estão os 
parâmetros de chunking e controle de espaço nos LOBs, etc, etc)
  
  E falando de best practices, duas das principais no que se refere à LOBs (ie, 
usar SECURE FILES e aplicar Compressão de dados) no 10g vc não tem , então não 
se aplicam... A nota metalink  "Master Note - RDBMS Large Objects (LOBs)"  
[Article ID 1268771.1] lista algumas das outras, e também linka outros artigos 
que podem ser úteis...
  
  Uma vez identificada a causa (e corrigida se possível) , é cuidar do passivo 
histórico , ie, os LOBs que vc já tem : vc pode tentar ver se há espaço 
não-usado nos seus LOB segments maiores : pode se tentar um shrink, um rebuild 
dos lob índices, uma movimentação do lob segment Veja 
http://myoracle4u.blogspot.com.br/2011/06/how-to-reorganize-reclaim-space-used-by.html
 para exemplos...
  
  []s
  
Chiappa

[oracle_br] identificar crescimento de CLOB

2014-03-13 Por tôpico Grupos
Bom dia!

 

Tenho um schema, que em algumas tabelas tenho campos CLOBs que contém XMLs
de NF-es. O crescimento diário da tablespace de LOB está em torno de
1.3GB/dia, em contato com o fornecedor ele disse que não deveria crescer
esse tanto pelo volume de nota diário.

 

Consultei a dba_segments e alguns segmentos de lob tem tamanhos muito
grandes e outros pequenos. Como eu consigo identificar qul segmento está
crescendo, ou fazer uma análise mais neste segmento para saber o que está
acontecendo para que ele cresça tanto assim?

 

Oracle 10.2.0.5

 

Márcio.