[oracle_br] monitoramento de índice
Boas. Algum dos colegas, faz monitoramento de índices? Estou pensando em monitorar os índices de alguns bancos, e conforme o resultado, excluir os índices que não são utilizados. O que acham desse tipo de monitoração? Deixaria o monitoramento por no mínimo trinta dias, acredito que esse período o sistema possa ter passado por todos os processos e ter utilizado os índices necessários. Oracle 10.20.5 Grato. Márcio [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] forma certa/melhor de fazer
Boas. Oracle 10.2.0.5 HP-UX 11.23 Pessoal, Eu tinha um sistema que alimentava uma tabela com um campo LOB para armazenamento de XMLs, e tenho uma JOB que é executado todo final de semana para deletar informações antigas. Esse sistema foi desativado faz um tempo, e hoje fui efetuar uma manutenção de shrink nessa tablespace, como meu JOB está em execução e essa tabela não está mais sendo alimentada, eu consegui recuperar cerca de 85% de espaço utilizado por essa tablespace. Com essa recuperação, eu fiquei com cerca de 20 datafiles com algumas centenas de MB ocupando espaço em cada um. Dessa forma que está, qual seria a melhor maneira de reorgazinar/reestrurar esses datafiles para que as informações estejam alimentadas somente em um datafile? Criar uma nova tablespace e mover o dados para ela? Grato. [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] ORA-04030: out of process memory
Veja essa nota no metalink: ID 4030.1 De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de victor_raileno Enviada em: Wednesday, 3 de April de 2013 16:20 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] ORA-04030: out of process memory Prezados, não estou conseguindo subir um banco de dados estava funcionando e derrepente parou. ja rodei rotinas de boot, startup force, lnsrctl star(listener) e com isso retornava a mensagem database mouted contudo parava ai (notei que nao retornava database open) ai comecei a me deparar com esse erro quando tentei montar ai ORA-04030: out of process memory when trying to allocate 268418832 bytes (pga heap,KCL disk IO request block array) ALguem ja passou por esse aqui? Sabem como reosolver isso? [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] upgrade para 11g
Boas. Estou tentando faze o upgrade do oracle 10.2.0.5 para 11.2.0.1, pelo DBUA, na tela de sumário quando clico no botão FINISH não acontece nada, fica parado nessa tela. Antes disso, a primeira vez que fui atualizar, recei a mensagem de que o tamanho da SYSAUX estava pequeno, parei a instalação e dei um RESIZE no datafile do SYSAUX. Agora não aparece a mensagem, mas também não sai da tela. Ambiente: HP-UX 11.31 Oracle 10.2.0.5 Estou usando o XMING. Grato. [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] upgrade para 11g
Marcelo, eu estou usando o XMING. Quanto a versão, já solicitei a infra que baixe a mais recente, enquanto não há tenho em mãos, vou adiantando com esta. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Marcelo Procksch Enviada em: Wednesday, 13 de March de 2013 09:51 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] upgrade para 11g Deve estar usando um programa pra exportar tela tipo Xming, moba etc. Execute direto do servidor se for esse o seu caso. So mais uma obs. Se migrar pra versão 11.2.0.1 seu banco de dados continuará desatualizado. Instale o 11.2.0.3 e aplique o ultimo psu 11.2.0.3.5. Abra On Mar 13, 2013 9:43 AM, Márcio - Grupos Oracle marcio_...@yahoo.com.br wrote: ** Boas. Estou tentando faze o upgrade do oracle 10.2.0.5 para 11.2.0.1, pelo DBUA, na tela de sumário quando clico no botão FINISH não acontece nada, fica parado nessa tela. Antes disso, a primeira vez que fui atualizar, recei a mensagem de que o tamanho da SYSAUX estava pequeno, parei a instalação e dei um RESIZE no datafile do SYSAUX. Agora não aparece a mensagem, mas também não sai da tela. Ambiente: HP-UX 11.31 Oracle 10.2.0.5 Estou usando o XMING. Grato. [As partes desta mensagem que não continham texto foram removidas] [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
RES: RES: [oracle_br] upgrade para 11g
Desisti da DBUA, e fiz atualização manual. Obrigado. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Marcelo Procksch Enviada em: Wednesday, 13 de March de 2013 10:09 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] upgrade para 11g Então é isso mesmo bug no Xmimg. Quanto a atualizar pra 11.2.0.1 não estará adiantando pois terá que fazer outro upgrade 11.2.0.3 On Mar 13, 2013 9:53 AM, Márcio - Grupos Oracle marcio_...@yahoo.com.br wrote: ** Marcelo, eu estou usando o XMING. Quanto a versão, já solicitei a infra que baixe a mais recente, enquanto não há tenho em mãos, vou adiantando com esta. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Marcelo Procksch Enviada em: Wednesday, 13 de March de 2013 09:51 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] upgrade para 11g Deve estar usando um programa pra exportar tela tipo Xming, moba etc. Execute direto do servidor se for esse o seu caso. So mais uma obs. Se migrar pra versão 11.2.0.1 seu banco de dados continuará desatualizado. Instale o 11.2.0.3 e aplique o ultimo psu 11.2.0.3.5. Abra On Mar 13, 2013 9:43 AM, Márcio - Grupos Oracle marcio_...@yahoo.com.br wrote: ** Boas. Estou tentando faze o upgrade do oracle 10.2.0.5 para 11.2.0.1, pelo DBUA, na tela de sumário quando clico no botão FINISH não acontece nada, fica parado nessa tela. Antes disso, a primeira vez que fui atualizar, recei a mensagem de que o tamanho da SYSAUX estava pequeno, parei a instalação e dei um RESIZE no datafile do SYSAUX. Agora não aparece a mensagem, mas também não sai da tela. Ambiente: HP-UX 11.31 Oracle 10.2.0.5 Estou usando o XMING. Grato. [As partes desta mensagem que não continham texto foram removidas] [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] -- 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
RES: [oracle_br] Crescimento absurdo do Banco
Emerson, o seu banco está com o Archivelog ativado? Se sim, você tem alguma rotina de backup dos archives e limpeza do disco onde ele está? O que eu vejo um crescimento grande seria o archive, com algum aplicativo executando muitas transações. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Emerson Martins Enviada em: Wednesday, 20 de February de 2013 14:53 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Crescimento absurdo do Banco Pessoal. Estou com um crescimento absurdo de um banco de dados aqui na empresa.Do nada eu fico sem espaço..No momento estou apenas 7 GB de Espaço nesse server..E nos meus calculos..O Banco nao cresceu tanto assim não.. Alguém pode me dar uma luz do que pode ser..? Estou precisando calcular a volumetria..desse banco Ambiente: Windows Server 2008 R2 HD 278 GB Oracle Standard One. Atenciosamente, Emerson Martins DBA Jr [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Crescimento absurdo do Banco
Faça também um acompanhamento detalhado do crescimento das tablespaces. Aqui eu monitoro o crescimento das tablespaces e como já conheço a forma que cada aplicativo trabalho, já sei o quanto cada um cresce e já peço disco para a equipe de infra. Caso cresça algo fora do normal, comunico o fornecedor pra ver o que pode ter ocorrido pra ter esse crescimento fora do normal. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Wednesday, 20 de February de 2013 17:11 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Crescimento absurdo do Banco Emerson, veja o quanto antes qual o tamanho atual da base e fale pra gente. Pelo visto vc não tem o tamanho dos dias anteriores, né? Semana passada, por exemplo. Então, como o que já passou já passou, pegue o tamanho de AGORA, e vai tirando esse tamanho novamente amanhã, depois, semana que vem, etc... Assim vc descobre quanto que tá crescendo por dia. 2013/2/20 Emerson Martins emersonmarti...@gmail.com mailto:emersonmartins8%40gmail.com Marcio! Esse banco não estar em modo archivelog. E essa questão do backup fica em uma partição separada. Emerson Martins DBA Jr Em 20 de fevereiro de 2013 16:06, Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br escreveu: ** Emerson, o seu banco está com o Archivelog ativado? Se sim, você tem alguma rotina de backup dos archives e limpeza do disco onde ele está? O que eu vejo um crescimento grande seria o archive, com algum aplicativo executando muitas transações. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Emerson Martins Enviada em: Wednesday, 20 de February de 2013 14:53 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] Crescimento absurdo do Banco Pessoal. Estou com um crescimento absurdo de um banco de dados aqui na empresa.Do nada eu fico sem espaço..No momento estou apenas 7 GB de Espaço nesse server..E nos meus calculos..O Banco nao cresceu tanto assim não.. Alguém pode me dar uma luz do que pode ser..? Estou precisando calcular a volumetria..desse banco Ambiente: Windows Server 2008 R2 HD 278 GB Oracle Standard One. Atenciosamente, Emerson Martins DBA Jr [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [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] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] tablespace temp
Segue: SELECT d.tablespace_name tablespace_name, d.status tablespace_status, NVL(a.bytes, 0) tablespace_size, NVL(t.bytes, 0) used, TRUNC(NVL(t.bytes / a.bytes * 100, 0)) used_pct, NVL(s.current_users, 0) current_users FROM sys.dba_tablespaces d, (select tablespace_name, sum(bytes) bytes from dba_temp_files group by tablespace_name) a, (select tablespace_name, sum(bytes_cached) bytes from v$temp_extent_pool group by tablespace_name) t, v$sort_segment s WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = t.tablespace_name(+) AND d.tablespace_name = s.tablespace_name -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Thursday, 13 de December de 2012 12:14 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] tablespace temp Seria mais fácil vc colar essa consulta aqui pra gente... rs... 2012/12/13 Márcio - Grupos Oracle marcio_...@yahoo.com.br ** Boas. Adicionei uma tablespace temp para um schema, e os demais estão com a tablespace TEMP default. Nas consultas que tenho para verificar a utilização da tablespace temp, está retornando somente a que está como default e não a nova. Como eu faço para consultar a utilização dessa tablespace temp nova.? 10.2.0.5 [As partes desta mensagem que não continham texto foram removidas] [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
RES: [oracle_br] tablespace temp
Consegui fazer através dessa view. select tablespace_name,sum(bytes_used/1024/1024) USEB_IN_MB,sum(bytes_free/1024/1024) FREE_IN_MB from v$temp_space_header group by tablespace_name; O estranho que vejo, é que a TEMP, que está para os demais schemas está com 2GB em uso, já a TEMP1, que foi criada para somente um schema está com quase nada em uso, ou seja, os 10GB estão livres Na consulta da dba_users, a coluna TEMPORARY_TABLESPACE, mostra que o schema está realmente com a TEMP1 nova. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Márcio - Grupos Oracle Enviada em: Thursday, 13 de December de 2012 12:15 Para: oracle_br@yahoogrupos.com.br Assunto: RES: [oracle_br] tablespace temp Segue: SELECT d.tablespace_name tablespace_name, d.status tablespace_status, NVL(a.bytes, 0) tablespace_size, NVL(t.bytes, 0) used, TRUNC(NVL(t.bytes / a.bytes * 100, 0)) used_pct, NVL(s.current_users, 0) current_users FROM sys.dba_tablespaces d, (select tablespace_name, sum(bytes) bytes from dba_temp_files group by tablespace_name) a, (select tablespace_name, sum(bytes_cached) bytes from v$temp_extent_pool group by tablespace_name) t, v$sort_segment s WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = t.tablespace_name(+) AND d.tablespace_name = s.tablespace_name -Mensagem original- De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Milton Bastos Henriquis Jr. Enviada em: Thursday, 13 de December de 2012 12:14 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] tablespace temp Seria mais fácil vc colar essa consulta aqui pra gente... rs... 2012/12/13 Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br ** Boas. Adicionei uma tablespace temp para um schema, e os demais estão com a tablespace TEMP default. Nas consultas que tenho para verificar a utilização da tablespace temp, está retornando somente a que está como default e não a nova. Como eu faço para consultar a utilização dessa tablespace temp nova.? 10.2.0.5 [As partes desta mensagem que não continham texto foram removidas] [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]
[oracle_br] erro no alert
Boas. ORACLE 10.2..0.5.0 HP-UX Na sexta-feira uma das instâncias que tenho em um servidor, caiu por duas vezes, ontem caiu mais uma. Recebi no meu monitoramento os erros: ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [$cold_kssdch_stage()+320] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-00602: internal programming exception ORA-07445: exception encountered: core dump [$cold_kssdch_stage()+320] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-00600: internal error code, arguments: [17090], [], [], [], [], [], [], [] ORA-00600: internal error code, arguments: [17090], [], [], [], [], [], [], [] Tenho 4 instâncias no servidor, e acontece somente com essa. No metalink, achei uma nota: Applies to: Oracle Server - Enterprise Edition - Version: 10.2.0.5 and later [Release: 10.2 and later ] Information in this document applies to any platform. Symptoms When attempting to cleanup after a SQL*Net connection is terminated, the following error occurs: ORA-07445: exception encountered: core dump [kssdct()+94] [SIGSEGV] [Address not mapped to object] [0x0240E] [] [] and then the instance is terminated, due to PMON reporting the below errors: ORA-00602: internal programming exception ORA-07445: exception encountered: core dump [kssdch()+2188] [SIGSEGV] [Address not mapped to object] [0x0241E] [] [] The call stack for the ORA-7445 [kssdct()] error will resemble the following: kssdct() - kwqbcsecl() - ksuxds() - ksudel() - opidcl() ... Changes An upgrade to 10.2.0.5 has been performed, or a one-off patch containing the fix for https://support.oracle.com/epmos/faces/ui/km/BugDisplay.jspx?id=6887866 bug:6887866 has been applied. Cause This is due to unpublished Bug:9184754, as identified by development in https://support.oracle.com/epmos/faces/ui/km/BugDisplay.jspx?id=10319478 Bug:10319478. This is caused by a regression introduced in 10.2.0.5 by the fix for https://support.oracle.com/epmos/faces/ui/km/BugDisplay.jspx?id=6887866 Bug:6887866. Solution Bug:9184754 are fixed in 10.2.0.5.4 PSU, 11.2.0.2 and 12.1 Download and apply the one-off patch number https://support.oracle.com/epmos/faces/ui/patch/PatchDetail.jspx?patchId=91 84754 Patch:9184754 on top of your version/platform combination if available. There is no Workaround available for the error. References https://support.oracle.com/epmos/faces/ui/km/BugDisplay.jspx?id=10054610 BUG:10054610 - DATABASE CRASH WITH ORA-7445 [KSSDCT] AND ORA-7445 [KSSDCH] https://support.oracle.com/epmos/faces/ui/km/BugDisplay.jspx?id=10319478 BUG:10319478 - ORA-7445 [KSSDCT] THEN INSTANCE CRASH Dúvida? Alguém já pegou esse problema antes? O estranho é que minhas outras instâncias não apresentam o problema, com isso fico na dúvida se é alguma particularidade dos objetos que tem nos schemas criados nessa instância ou os parâmetros da instância que esteja causando esse problema [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Re: erro no alert
Chiappa, não tinha encontrado nada que seja de acordo com a descrição dos meus erros. A aplicação das PSU estão atrasadas, então fui pegar logo a última 10.2.0.5.9, e a minha conta não tem permissão para esse download, no Download acess: EXTENTED SUPPORT... já a versão 10.2.0.5.2 eu tenho acesso para download. Meu suporte é o Standard Premier Support, o pessoal de suprimentos que renovou o suporte, quando cheguei aqui eles já tinham o contrato e apenas renovam quando necessário. O Standard Premier Support, não me daria direito a baixar todos as PSU, de acordo com o site? http://www.oracle.com/us/support/lifetime-support/index.html De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Monday, 26 de November de 2012 11:37 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: erro no alert Colega, atenção : primeiro de tudo, para começo de conversa, pelo que vi no seu alerto, os seus erros são do tipo é : ORA-07445: exception encountered: core dump [funçãointernaemfalha] [SIGBUS] [Invalid address alignment] endereço e argumentos enquanto a nota que vc cita é : ORA-07445: exception encountered: core dump [kssdct()+94] [SIGSEGV] [Address not mapped to object] endereço entenda, uma coisa é [SIGBUS] [Invalid address alignment] (ponteiro apontando para endereço inválido, provavelmente atualização feita em memória não refletida em objetos internos) e Outra é [SIGSEGV] [Address not mapped to object] (tentativa de acessar posição de memória inválida) OU SEJA, vc basicamente Não Estava comparando maçã com maçã, okdoc ?? Segundo,ainda que vc queira checar a nota que encontrou (mesmo ela não sendo Exatamente o mesmo erro que vc achou), vc certamente viu que ela é ESPECÍFICA para databases que foram upgradeados para 10.2.0.5 OU aonde foi aplicado um one-off one-off patch que contenha o fix para o bug 6887866 , Qualquer das duas condições é verdadeira pro seu caso Terceiro : provavelmente vc não usou, pelo jeito, Mas a tool correta para se pesquisar no metalink por erros ORA-600 ou ORA-7445 é a LOOKUP TOOL : em a usando (fornecendo a Sua versão 10.2.0.5 E o seu primeiro argumento, e TANTO para o ORA-600 quanto para o 7445, já que seu alert.log apresenta AMBOS), rapidamente localizei Bug 8928285 - ORA-600 [17090] from scheduler [ID 8928285.8] e a nota ORA-7445 (kssdct) [ID 1288452.1] que aponta para o bug Bug 9184754 - SGA corruption / ORA-600 [ktcccenxt] / dump using Lobs [ID 9184754.8] - nem todas são Exatamente a mesma descrição de erros, mas Veja Lá se os sintomas se adequam... []s Chiappa OBS : veja que algumas dessas issues já foram corrigidas no PSU que atualizou para versão 10.2.0.5.4, e hoje já estamos na versão 10.2.0.5.9 - será que esse database tá Atrasado na aplicação de PSUs ??? Parece que sim, se Realmente for 10.2.0.5.0 como vc diz... --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Boas. ORACLE 10.2..0.5.0 HP-UX Na sexta-feira uma das instâncias que tenho em um servidor, caiu por duas vezes, ontem caiu mais uma. Recebi no meu monitoramento os erros: ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-07445: exception encountered: core dump [kssdct()+176] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [$cold_kssdch_stage()+320] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-07445: exception encountered: core dump [kssdmh()+384] [SIGBUS] [Invalid address alignment] [0x0080D] [] [] ORA-00602: internal programming exception ORA-07445: exception encountered: core dump [$cold_kssdch_stage()+320] [SIGBUS] [Invalid address alignment] [0x00815] [] [] ORA-00600: internal error code, arguments: [17090], [], [], [], [], [], [], [] ORA-00600: internal error code, arguments: [17090], [], [], [], [], [], [], [] Tenho 4 instâncias no servidor, e acontece somente com essa. No metalink, achei uma nota: Applies to: Oracle Server - Enterprise Edition - Version: 10.2.0.5 and later [Release: 10.2 and later ] Information in this document applies to any platform. Symptoms When attempting to cleanup after a SQL*Net connection is terminated, the following error occurs: ORA-07445: exception encountered: core dump [kssdct()+94] [SIGSEGV
RES: [oracle_br] Curso Oracle
Marcelo, em 2002, eu fiz o curso de PL/SQL e Arquitetura 1 do Oracle8i na En-Sof. Como era meu primeiro contato, eu achei bom na época, a estrutura é boa e os professores atenderam as minhas expectativas. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Marcelo da Silva Pranckevicius Enviada em: Wednesday, 14 de November de 2012 12:07 Para: oracle_br@yahoogrupos.com.br Assunto: RES: [oracle_br] Curso Oracle Pessoal, bom dia. Aproveitando sobre este assunto, pois, também estou interessado nos cursos oficiais Oracle. Gostaria de saber se alguém possui alguma informação sobre a En-sof? Agradeço desde já. Atenciosamente, Marcelo da Silva Pranckevicius Oracle - DBA Estagiário -Mensagem original- De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Wanderson Barrence Enviada em: quarta-feira, 14 de novembro de 2012 09:51 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] Curso Oracle Olá André, Em São Paulo tem escolas para escolher: IBTA http://www.ibta.com.br/ Professores: Milton Goya, Darci Leandro e Marcus Vinícius. Kasolution http://www.kasolution.com.br/ Professor: Fábio Prado GPTI/Unitodo http://unitodo.com.br/ Professor: José Laurindo Chiappa NerInformática http://nervinformatica.com.br/ Professor: Ricardo Portilho Não estou fazendo nenhuma propaganda da escola em si, é só em relação aos professores que são muito bons. Att, -- Wanderson Barrence DBA Oracle 10g/11g Analista de Testes - CBTS -- MSN: wbarre...@hotmail.com mailto:wbarrence%40hotmail.com ICQ: 170821994 Linkedin: http://br.linkedin.com/in/wbarrence Em 14 de novembro de 2012 09:54, André Luiz Silva mennuci...@gmail.com mailto:mennuciano%40gmail.com escreveu: ** Milton bom dia obrigado pela aJuda Pode ser em campinas ou são Paulo []'s Em 14/11/2012 09:29, Milton Bastos Henriquis Jr. miltonbas...@gmail.com mailto:miltonbastos%40gmail.com escreveu: Olá André! Considerando cursos oficiais, obviamente que todos os cursos terão o mesmo material e a mesma carga horária. Portanto, o que diferencia um centro de treinamento do outro é o instrutor - com melhor didática, mais conhecimento, etc. Seria melhor se você pelo menos falar em qual cidade vc pretende fazer o treinamento, que se houver alguém da mesma cidade aqui no grupo alguém pode te indicar um bom local. Eu por exemplo moro em Curitiba, e aqui no Paraná inteiro só tem um centro oficial, e portanto não há como escolher. 2012/11/14 André Luiz Silva mennuci...@gmail.com mailto:mennuciano%40gmail.com ** Pessoal bom dia Qual a melhor escola de cursos oficiais de banco de dados oracle deste o módulo para iniciante até o último nível? Sei que depende 110% do aluno []'s [As partes desta mensagem que não continham texto foram removidas] -- Att, [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] [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]
RES: [oracle_br] eliminando linhas com um intervalo de 1.000 linhas
Além do que o Milton postou, analise se é melhor deletar as 7 milhões de linhas, ou criar uma nova tabela e inserir as informações que não serão deletadas, isso se a quantidade de linhas restantes forem menos que as que precisa deletar. O que fazer, depende das informações para análise. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Tuesday, 2 de October de 2012 15:14 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] eliminando linhas com um intervalo de 1.000 linhas Primeiro explique melhor o teu caso. Qual teu critério pra eliminar estas 7M de linhas? Vc consegue fazer isso com um simples DELETE? É uma tabela inteira? É um delete com filtro? Precisa de um PL/SQL? É apenas em uma tabela? Ou várias tabelas diferentes? Enfim... dê mais detalhes do teu caso pra que a gente possa passar a melhor solução! 2012/10/2 Anderson Campelo dba.ander...@gmail.com ** Pessoal, Muito boa tarde. Preciso da ajuda de vocês para criar um script rápido de deleção de linhas. Será necessário eliminar aproximadamente 7.000.000 de linhas. Vi algo a respeito na web de eliminar as linhas em um intervalo de 1.000linhas sempre comitando o processo após esse intervalo. Como eu posso fazer isso? Desde já agradeço. [As partes desta mensagem que não continham texto foram removidas] -- Att, [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
RES: [oracle_br] eliminando linhas com um intervalo de 1.000 linhas
Eu precisei fazer um expurgo de uma tabela também, nela continha 3 milhões de linhas e foi solicitado para deixar somente o último mês com informações. Deu em torno de uns 300 - 400 mil linhas por mês, o que eu utilizei foi deletar as informações com o mês fechado, um DELETE simples. No caso do Anderson, eu tentaria um DELETE simples de dois em dois dias, fazendo um bloco PL colocando um comando após o outro, e o commit antes de iniciar outro DELETE, até chegar os 14 dias que precisam ser deletados. Márcio Ricardo. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Tuesday, 2 de October de 2012 15:43 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] eliminando linhas com um intervalo de 1.000 linhas Qual a versão do teu banco? Nas versões mais recentes não usa-se mais rollback segments... e sim tablespace de UNDO. Eu gostaria de ver a opinião de outros DBA's a respeito! Acho que não precisa de um commit a cada mil registros... 2012/10/2 Anderson Campelo dba.ander...@gmail.com ** A tabela(única) em questão possui quase 32 mi de linhas e preciso deletar apenas as últimas 7mi. Esses 7mi de registros são de duas semanas para cá, de lá para cá a tabela não sofreu atualização. Sobre ser um delete simples ou um PL/SQL, pensei em criar um PL, pois como falei antes estava pensando em ir comitando os processos a cada 1.000 linhas para não sobrecarregar os arquivos de rollback. Obrigado. Em 2 de outubro de 2012 15:14, Milton Bastos Henriquis Jr. miltonbas...@gmail.com escreveu: Primeiro explique melhor o teu caso. Qual teu critério pra eliminar estas 7M de linhas? Vc consegue fazer isso com um simples DELETE? É uma tabela inteira? É um delete com filtro? Precisa de um PL/SQL? É apenas em uma tabela? Ou várias tabelas diferentes? Enfim... dê mais detalhes do teu caso pra que a gente possa passar a melhor solução! 2012/10/2 Anderson Campelo dba.ander...@gmail.com ** Pessoal, Muito boa tarde. Preciso da ajuda de vocês para criar um script rápido de deleção de linhas. Será necessário eliminar aproximadamente 7.000.000 de linhas. Vi algo a respeito na web de eliminar as linhas em um intervalo de 1.000linhas sempre comitando o processo após esse intervalo. Como eu posso fazer isso? Desde já agradeço. [As partes desta mensagem que não continham texto foram removidas] -- Att, [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] -- Att, [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
RES: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?
Se eu entendi, vê se esse select ajuda: SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS FROM TITENS_PEDIDO_VENDA TIPV WHERE TPV.COR_DO_ITEM = VERMELHO) AND TPV.COR_DO_ITEM = AZUL; De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com filtros diferentes para o mesmo campo? Um Exemplo: /*TABELA TPEDIDO_VENDAS: */ *ID* *NUMERO_DO_**PEDIDO * 1 1 2 2 3 3 4 4 5 5 /*TABELA TITENS_PEDIDO_VENDA: */ *ID * *ID_TPEDIDO_VENDAS * *ITEM * *COR_DO_ITEM* 1 1 A AZUL 2 1 B VERMELHO 3 1 A VERDE 4 2 A VERMELHO 5 3 A VERDE 6 3 A VERMELHO 7 4 B VERMELHO 8 4 A AZUL 9 4 A VERMELHO 10 5 A AZUL Agora que temos as tabelas, preciso selecionar nas duas tabelas os pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver somente a cor azul ou se tiver somente a cor vermelho, não preciso selecioná-lo. Como ficaria, então, a resposta da minha seleção, baseada nos dados acima: *ID_PED_VDA * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA * *ITEM * *COR_DO_ITEM* 1 1 1 A AZUL 1 1 2 B VERMELHO 4 4 7 B VERMELHO 4 4 8 A AZUL 4 4 9 A VERMELHO Explicando melhor, preciso selecionar pedidos de vendas que possuem itens com a cor azul e itens com a cor vermelho. Este campo cor é preenchido somente com uma cor, então, serão selecionados somente os pedidos que possuirem itens com a cor azul e também com a cor vermelho. Mas os pedidos que tenham itens com azul e não tenham itens com a cor vermelho, não quero trazer nesta seleção e também não quero trazer nesta seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul, resumindo, terão que ter registros com a cor azul e também registros com a cor vermelha no mesmo pedido. Obrigado a todos! Luiz Junior Depto-ti Jowanel Oracle 10G [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Essa é dificirrrr!!!Como fazer consulta com filtros diferentes para o mesmo campo?
Verdade, se precisar Júnior, inverta a tabela interna com a externa. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Wednesday, 22 de August de 2012 14:42 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Essa é difici!!!Como fazer consulta com filtros diferentes para o mesmo campo? Marcio, a cor do item está na tabela de itens (filha) e não tabela de pedidos (pai). Junior, não é nada dificil fazer essa query. Sabe fazer subselect? Pena que não tenho nenhuma base disponível aqui pra simular o teu caso e montar a query pra vc... mas seria mais ou menos isso: select * from TPEDIDO_VENDAS where ID IN (select ID_TPEDIDO_VENDAS from TITENS_PEDIDO_VENDA where COR_DO_ITEM = 'AZUL') and ID IN (select ID_TPEDIDO_VENDAS from TITENS_PEDIDO_VENDA where COR_DO_ITEM = 'VERMELHO'); Teste aí. 2012/8/22 Márcio - Grupos Oracle marcio_...@yahoo.com.br ** Se eu entendi, vê se esse select ajuda: SELECT TPV.NUMERO_DO_PEDIDO FROM TPEDIDO_VENDAS TPV WHERE TPV.NUMERO_DO_PEDIDO = (SELECT TPIV.ID_TPEDIDO_VENDAS FROM TITENS_PEDIDO_VENDA TIPV WHERE TPV.COR_DO_ITEM = VERMELHO) AND TPV.COR_DO_ITEM = AZUL; De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Junior Enviada em: Wednesday, 22 de August de 2012 14:12 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Essa é difici!!!Como fazer consulta com filtros diferentes para o mesmo campo? Um Exemplo: /*TABELA TPEDIDO_VENDAS: */ *ID* *NUMERO_DO_**PEDIDO * 1 1 2 2 3 3 4 4 5 5 /*TABELA TITENS_PEDIDO_VENDA: */ *ID * *ID_TPEDIDO_VENDAS * *ITEM * *COR_DO_ITEM* 1 1 A AZUL 2 1 B VERMELHO 3 1 A VERDE 4 2 A VERMELHO 5 3 A VERDE 6 3 A VERMELHO 7 4 B VERMELHO 8 4 A AZUL 9 4 A VERMELHO 10 5 A AZUL Agora que temos as tabelas, preciso selecionar nas duas tabelas os pedidos que tenham o item com cor azul e com cor vermelho, mas se tiver somente a cor azul ou se tiver somente a cor vermelho, não preciso selecioná-lo. Como ficaria, então, a resposta da minha seleção, baseada nos dados acima: *ID_PED_VDA * *NUMERO_PED_VENDA* *ID_ITEM_PED_VDA * *ITEM * *COR_DO_ITEM* 1 1 1 A AZUL 1 1 2 B VERMELHO 4 4 7 B VERMELHO 4 4 8 A AZUL 4 4 9 A VERMELHO Explicando melhor, preciso selecionar pedidos de vendas que possuem itens com a cor azul e itens com a cor vermelho. Este campo cor é preenchido somente com uma cor, então, serão selecionados somente os pedidos que possuirem itens com a cor azul e também com a cor vermelho. Mas os pedidos que tenham itens com azul e não tenham itens com a cor vermelho, não quero trazer nesta seleção e também não quero trazer nesta seleção os pedidos que tenham a cor vermelho mas não tenham a cor azul, resumindo, terão que ter registros com a cor azul e também registros com a cor vermelha no mesmo pedido. Obrigado a todos! Luiz Junior Depto-ti Jowanel Oracle 10G [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Att, [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
RES: [oracle_br] Re: dois oracle_home
Chiappa, retomei a esse assunto novamente. As configurações eu já fiz externas eu já fiz. Meu RDBMS é o 10.2.0.5. Oracle Database Gateway 11.2.0.3 Banco NÃO-ORACLE é o Progress 10.2B As configurações externas, estão todas feitas. Criei o database link, o sinônimo e quando vou criar a View dá o erro: ORA-12154: TNS:could not resolve the connect identifier specified Não sei se alguém vai ter conhecimento ou poderá dar alguma luz nesse caso. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Monday, 16 de July de 2012 16:06 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: dois oracle_home Colega, vamos por partes : vc está falando do add-on Oracle Database Gateways, que serve para conectar em databases NÃO-ORACLE a partir de uma instância Oracle de um RDBMS Oracle , correto ??? Se sim, vc me deixou Totalmente confuso : vc está tentando conectar no RDBMS Oracle usando uma ferramenta que serve para conectar em bancos NÃO-ORACLE WTH ??? E outra coisa, Lembre-se que o Database Gateways é uma camada de software EXTERNA ao database, então demanda configuração Externa, também : apenas como exemplo, mas se o seu Database Gateway for, digamos, o genérico Oracle Database Gateway for ODBC, aí primeiro vc Tem que configurar o initdg4odbc.ora (externo), okdoc ? Repito, o gateway NÂO conecta no RDBMS, é sempre o RDBMS que conecta no bd não-Oracle externo, então Não Faz Muito Sentido vc querer conectar no RDBMS via gateway, ok ? No listener.ora vc vc até pode ter a informação do database Oracle (para uso/consumo de OUTRAS fontes) , mas o odbc vc não usa essa informação, o que vc tem que ter lá pra uso/consumo do odbc é Aonde o RDBMS vai procurar o programa externo, ie, tipo : (SID_NAME=siddogateway, que vc vai usar no database link) (PROGRAM=dg4odbc) legal ? No seu caso, já que vc tem o gateway em outra HOME, no arquivo do listener em : (ORACLE_HOME=xxx) imagino que vc deve por em xxx a HOME do Oracle Database Gateways Para mais exemplos de config e teste do ODG, além da já esperada documentação Oracle (manual Oracle® Database Gateway Installation and Configuration Guide para a sua versão), também veja http://talkoracledba.blogspot.com.br/ , http://www.easysoft.com/applications/oracle/database-gateway-dg4odbc.html , http://blog.bigrocksoftware.com/2011/04/29/how-to-setup-oracle-database-gate way-for-sql-server/ , http://www.orafaq.com/wiki/Gateways . Caso vc ainda tenha mais dúvidas , numa outra msg nos diga Exatamente qual é o banco não-Oracle que vc quer acessar (com detalhes como versão) e exatamente qual é o Oracle Database Gateways que vc está usando, que quem tiver o mesmo ambiente pode te ajudar mais []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Efetuar conexão Oracle com banco não Oracle. Oracle RDBMS 10.2.0.5 Oracle gateway 11.2.0.3 - Instalado o Gateway em ORACLE_HOME diferente. Configurei o listener e o tnsnames do ORACLE_HOME do gateway de acordo com as minhas necessidades. Parei o listener do ORACLE_HOME RDBMS, setei a minha variável de ambiente para o ORACLE_HOME ser o 11.2.0.3 e executei o lsnrctl reolad. No status do listener apareceu o serviço da minha instância do RDBMS e mais os serviços do dg4odbc. Quando vou tentar a conexão através do gateways, aparece a seguinte mensagem: ORA-12154: TNS:could not resolve the connect identifier specified E o comando abaixo mostra o seguinte: SQL show parameter service_names NAME TYPE VALUE --- -- service_names string vendas Apesar de os comandos, lsnrctl status e lsnrctl services, os serviços estão no ar, não consigo a conexão com eles. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Re: Monitoração de tabelas....
Aproveitando a thread, gostaria de saber se é necessário/boas práticas acompanhar a cada x meses utilização de índices? Márcio De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Tuesday, 31 de July de 2012 18:59 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: Monitoração de tabelas Colega, que fique CLARO : tal como eu disse em msgs anteriores, as V$ ou representam CACHEs (como a V$SQL) , OU então são populadas de vez em quando pelo sistema, para fins de estatística : sendo assim, é CLARÍSSIMO que isso é uma das soluções não-100% confiáveis, okdoc ? usando as V$ vc CEDO ou TARDE vai sim ter perda de dados e/ou falsos-positivos, é da natureza das V$ o serem preenchidas só de vez em quando, ninguém nem nada assegura que 100% das infos vão estar lá todo o tempo... As V$ são o mesmo que o statspack usa, inclusive, então o que vc está fazendo abaixo é Simular o statspack []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Andre Campos andreccampos@... escreveu Ae pessoal um colega aqui da empresa passou a solução abaixo, disse que testou e funciona...vou ver... De qualquer forma fica ae para quem quiser... create table system.ver_tabela_sem_acesso( table_name varchar2(30), statistic_name varchar2(30), report_date date, table_owner varchar2(30), startup_time_db date) / create index system.ix_ver_tabela_sem_acesso_rd on system.ver_tabela_sem_acesso(report_date); create or replace procedure system.PR_CHECK_UNUSABLE_TABLE is cursor c_checa_tab_sem_uso is select table_name from dba_tables where owner='SYSADM' minus select object_name from v$segment_statistics where statistic_name = 'logical reads' and object_type = 'TABLE' and owner = 'SYSADM'; begin for i in c_checa_tab_sem_uso loop insert into system.ver_tabela_sem_acesso ( TABLE_NAME, STATISTIC_NAME, REPORT_DATE, TABLE_OWNER, STARTUP_TIME_DB ) values ( i.table_name, 'logical reads', sysdate, 'SYSADM', (select STARTUP_TIME from v$instance) ); end loop; commit; end PR_CHECK_UNUSABLE_TABLE; / select table_name from dba_tables where owner='SYSADM' minus select object_name from v$segment_statistics where statistic_name = 'logical reads' and object_type = 'TABLE' and owner = 'SYSADM' / exec PR_CHECK_UNUSABLE_TABLE; Em 31/07/2012 18:20, J. Laurindo Chiappa jlchiappa@... escreveu: Ah, importante : ainda sobre as opções não 100% confiáveis, E SE vc não precisa saber de Queries, vc pode também ativar a funcionalidade de table monitoring no 9i : o que esse cara faz é registrar em tabelas internas mais ou menos o quanto vc teve de alterações nos dados (principalmente via INSERTs) - Óbvio ululante, como o Objetivo desse cara é ter uma idéia se as estatísticas de modo geral estão muito defasadas ou não, É CLARO que esse sujeito só pode ser incluído no grupo das não 100% confiáveis, vc VAI SIM cedo ou tarde ter perdas com esse cara http://www.oracle-base.com/articles/8i/refreshing-stale-statistics-8i.php fala sobre o assunto. []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , J. Laurindo Chiappa escreveu Andre, a sua resposta é bem clara aqui : se a sua necessidade é saber quando a tabela foi usada MAS com 100% de precisão, sem a menor Chance de falso-positivo OU de perda de dados, a tua ÚNICA alternativa é implantar algum tipo de AUDITORIA, ok ? CASO seja aceitável algum risco, porém, aí vc terá as opções que citarei ao final da msg... Falando sobre AUDITORIA, ela pode ser EXTERNA ao database (via tools externas a serem compradas e instaladas/setadas, como o Guardium, o Audit Vault e n outras), OU pode ser interna ao database (via trace de SQL, comando AUDIT, FGA, triggers - que NÂO sejam FOR EACH ROW, pelamor, é Claro -, criação de view materializada com log de alterações, etc)... Há ainda a opção mista de (SE o banco está em modo archive) vc ** MINERAR ** os redo logs - eu a chamei de mista porque em princípio vc tanto pode fazer a mineração no próprio banco-origem QUANTO PODE fazer isso num outro servidor, fora do database original, para onde vc enviaria os redo logs Lembro apenas que : - nem todos os métodos acima funcionam em todas as versões, com todos os SQLs (alguns só auditam DMLs, não queries), com todos os datatypes... vc DEVE consultar na sua Documentação (se for método interno) ou no Suporte do fornecedor (se for método externo) a Aplicabilidade - a vantagem da Auditoria externa é que o Overhead no database em si é nulo (pode haver algum overhead para o Servidor, se o método externo for instalado no mesmo servidor , ou então na Rede se o método externo for instalado em outro servidor), e a Desvantagem principal é que ela tem Custo extra (em Licenças, em homens/hora para instalação e setup, etc)
RES: [oracle_br] coleta de estatisticas.
Milton, e porque com o comando: execute dbms_stats.gather_table_stats(ownname='XXX',tabname='CLIENTE_ENT',granular ity='ALL',method_opt='FOR ALL INDEXED COLUMNS SIZE AUTO', estimate_percent=NULL,cascade=TRUE, DEGREE=6); funciona? A diferença é que estou executando fora da procedure e utilizando o execute. Márcio. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Milton Bastos Henriquis Jr. Enviada em: Tuesday, 31 de July de 2012 12:04 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] coleta de estatisticas. Bom dia Marcio! O erro aí é muito óbvio! Vc criou uma procedure que realiza a coleta de estatísticas dentro do schema marcio, e o user marcio não tem privilégios para realizar essa tarefa em OUTROS schemas. Não importa se vc executou como SYS, pois o owner da procedure é o MARCIO. Então vc precisa definir como vc quer executar... ou vc executa o comando diretamente pelo SYS, ou pelo SYSTEM, ou então dê privilégios para algum outro usuário para poder rodar a coleta. 2012/7/31 Márcio - Grupos Oracle marcio_...@yahoo.com.br ** Boas. Estou tomando um erro quando vou coletar as estatísticas de uma nova instância através de um JOB que criei. A primeira execução ocorreu hoje, e com erro, coloquei uns put_line na procedure e executei ela pelo SQL*PLUS para debugar, ai foi exibido o erro: dbms_stats.gather_table_stats(ownname='XXX',tabname='CLIENTE_ENT',gr anular ity='ALL',method_opt='FOR ALL INDEXED COLUMNS SIZE AUTO', estimate_percent=NULL,cascade=TRUE, DEGREE=6); SYS@ set serveroutput on SYS@ exec marcio.proc_coleta_estatisticas; Entrou para coletar ERRO NA COLETA DAS ESTATÖSTICAS!31/07/2012 11:42:49-2 - ORA-2: Unable to analyze TABLE .CLIENTE_ENT, insufficient privileges or does not exist O que faço: conecto como sys ou como marcio, a procedure está criada no schema marcio para coletar as estatísticas de outro schema. Se eu executo de forma manual, como: execute dbms_stats.gather_table_stats(ownname='XXX',tabname='CLIENTE_ENT',gr anular ity='ALL',method_opt='FOR ALL INDEXED COLUMNS SIZE AUTO', estimate_percent=NULL,cascade=TRUE, DEGREE=6); O commando é executado com sucesso, mas através da procedure não executa. Oracle 10.2.0.5 HP_UX 11.23 Márcio. [As partes desta mensagem que não continham texto foram removidas] -- Att, [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
RES: [oracle_br] Re: consulta select
Resolvido com o partition by. Obrigado chiappa. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Wednesday, 20 de June de 2012 14:36 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: consulta select Neste momento não tenho o tempo pra te montar um exemplo completo, mas pelo que entendi o que vc quer é uma soma Particionada dos valores de ICMS, mas no caso particionando por nota fiscal : http://askanantha.blogspot.com.br/2007/10/running-total-or-cumulative-sum-us ing.html e http://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:17937641 00346222947 são exemplos, e veja que em ambos além do OVER foi indicado um PARTITION, acho que é isso q tá faltando []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Boas. Depois de tanto tempo sem desenvolver, enferrujei total. Preciso de ajuda numa consulta, é o seguinte, tenho as informações e tenho um campo que tem o valor total da nota, e tenho outro campo que tem o ICMS para cada item da nota. Eu preciso somar o valor do ICMS e descontar do total da nota. Para uma nota funciona, mas quando coloco para todas o select fica doidão. Estou tentando utilizar o OVER, mas não estão agrupando por nada e está dando erro. SELECT dbnp.db_notap_nro AS NOTA, round(DBNF.DB_NOTA_VLR_PROD,2) + sum(round(dbnp.db_notap_vlr_icms,2)) OVER(ORDER BY dbnp.db_notap_nro) Valor Sem Tributação, round(DBNF.DB_NOTA_VLR_PROD,2) AS Valor Total Nota, dbnf.db_nota_cond_pgto AS Pagamento, dbnf.db_nota_operacao AS Natureza Operação, DBNF.DB_NOTA_DT_EMISSAO, dbc.db_cli_nome AS Cliente, dbc.db_cli_cidade AS Cidade, dbc.db_cli_situacao AS Situaçao, dbc.db_cli_lpreco AS Lista de Preço, dbc.db_cli_regiao AS Micro Região, dbp.db_prod_descricao AS Produto, dbtr.db_tbrep_nome AS Representante, dbtrs.db_tbrep_nome AS Superior, dbtf.db_tbfam_descricao AS Categoria do Produto, dbtra.db_tbatv_descricao AS Ramo Atividade, case when dbto.db_tbops_fat = 'S' then 'Venda' when dbto.db_tbops_fat = 'B' then 'Bonificação' when dbto.db_tbops_fat = 'D' then 'Devolução' when dbto.db_tbops_fat = 'N' then 'Outras Saídas' else 'Transferência' end AS Tipo Nota FROM xxx.DB_NOTA_PROD DBNP, xx.db_nota_fiscal dbnf, xx.db_cliente dbc, xx.db_produto dbp, xx.db_tb_repres dbtr, xx.db_tb_repres dbtrs, xx.db_tb_familia dbtf, xx.db_tb_ramo_ativ dbtra, xx.db_tb_opers dbto WHERE dbnp.db_notap_empresa = '016' AND DBNP.DB_NOTAP_EMPRESA = dbnf.db_nota_empresa AND DBNP.DB_NOTAP_NRO = DBNF.db_nota_nro AND DBNP.DB_NOTAP_SERIE = DBNF.DB_NOTA_SERIE AND DBC.DB_CLI_CODIGO = DBNF.DB_NOTA_CLIENTE AND DBNP.DB_NOTAP_PRODUTO = DBP.DB_PROD_CODIGO AND DBNF.DB_NOTA_REPRES = DBTR.DB_TBREP_CODIGO AND dbtr.db_tbrep_superior = dbtrs.db_tbrep_codigo AND DBP.DB_PROD_FAMILIA = DBTF.DB_TBFAM_CODIGO AND DBNF.DB_NOTA_OPERACAO = DBTO.DB_TBOPS_COD and dbc.db_cli_ramativ = dbtra.db_tbatv_codigo AND DBNF.DB_NOTA_DT_EMISSAO BETWEEN '02-JAN-2012' AND '02-JAN-2012' --AND DBNP.DB_NOTAP_NRO = 11727 --AND DBNP.DB_NOTAP_SERIE = 'D00' /*group by dbnp.db_notap_nro, DBNF.DB_NOTA_VLR_PROD, dbnf.db_nota_cond_pgto, dbnf.db_nota_operacao, DBNF.DB_NOTA_DT_EMISSAO, dbc.db_cli_nome, dbc.db_cli_cidade, dbc.db_cli_situacao, dbc.db_cli_lpreco, dbc.db_cli_regiao, dbp.db_prod_descricao, dbtr.db_tbrep_nome, dbtrs.db_tbrep_nome, dbtf.db_tbfam_descricao, dbtra.db_tbatv_descricao, dbto.db_tbops_fat*/ [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] RES: aplicação de PATCH
, manualmente com um editor de textos. -- Veja na documentação: http://docs.oracle.com/cd/B19306_01/install.102/b15660/app_nonint.htm Bom estudo. Ederson Elias DBA Oracle http://br.linkedin.com/pub/ederson-elias/24/8b/8b0 --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Estou tentando fazer a instalação, primeira vez no HP-UX, e não estou conseguindo porque não tem a parte gráfica do SO, e dá erro nos pré-requisitos. Estou utilizando o comando: runInstaller ignoreSysPreReqs, ai recebo a mensagem: Ignoring required pre-requisite failures. Continuing... Preparing to launch Oracle Universal Installer from /dsk1/OraInstall2012-05-21_09-43-38AM. Please wait ...$ Oracle Universal Installer, Version 11.2.0.3.0 Production Copyright (C) 1999, 2011, Oracle. All rights reserved. Can't connect to X11 window server using '192.168.0.223:0.0' as the value of the DISPLAY variable. 192.168.0.223:0.0 192.168.0.223:0.0 OUI-10025:Unable to start an interactive install session because of the following error:Can't connect to X11 window server using '192.168.0.223:0.0' as the value of the DISPLAY variable. The DISPLAY environment variable should be set to hostname or IP address:screen, where the screen is usually '0.0'. OUI-10026:Depending on the Unix Shell, you can use one of the following commands as examples to set the DISPLAY environment variable: - For csh: % setenv DISPLAY 192.168.1.128:0.0 - For sh, ksh and bash: $ DISPLAY=192.168.1.128:0.0; export DISPLAY Use the following command to see what shell is being used: echo $SHELL Use the following command to view the current DISPLAY environment variable setting: echo $DISPLAY - Make sure that client users are authorized to connect to the X Server. OUI-10027:To enable client users to access the X Server, open an xterm, dtterm or xconsole as the user that started the session and type the following command: % xhost + To test that the DISPLAY environment variable is set correctly, run a X11 based program that comes with the native operating system such as 'xclock': % full path to xclock... see below If you are not able to run xclock successfully, please refer to your PC-X Server or OS vendor for further assistance. Typical path for 'xclock': '/usr/bin/X11/xclock' Vi que tem a opção de instalar sem a GUI, e estou tentando seguir pelo link: http://docs.oracle.com/cd/E11882_01/gateways.112/e12013/app_nonint.htm#CIHGC JBJ Mas não estou entendendo a parte do response file, como editar e registrar esse arquivo? Grato. Márcio. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de J. Laurindo Chiappa Enviada em: Thursday, 17 de May de 2012 11:40 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: RES: [oracle_br] Re: aplicação de PATCH Sim, como eu disse anteriormente a partir do 11.2.0.2 os patchsets são completos em si mesmo, não exigindo mais a versão base do software, então é possível vc instalar apenas um Componente 11.2.0.3 num software base 10.2.0.5, sim... Apenas : 1) peça reconfirmação com o Analista de Suporte que o software base 10.2.0.5.x que vc tem é Realmente compatível, e que as libs/subcomponentes 11.2.0.3 que o Gateway 11.2.0.3 vai introduzir Realmente não conflitarão com nenhuma do RDBMS 10.2.0.5.x e 2) tome Extremo cuidado na hora de rodar o Universal Installer para não incluir nada a mais - certamente vc deverá usar a instalação Customizada e 3) TESTE a instalação numa máquina de testes antes de ir pra Produção, óbvio e 4) backup (preferencialmente COLD) do database ** E ** do Oracle HOME do RDBMS é Crítico, nem preciso dizer []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@ escreveu Chiappa, não tinha visto direito os arquivos que fazem parte do Patch. O que eu preciso instalar é somente o Oracle Gateway desse patch, que segundo suporte é compatível com a 10.2.0.5, sendo assim acredito que o meu RDBMS não sofrerá nenhuma mudança, somente o Oracle Gateway, é isso? Grato. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de J. Laurindo Chiappa Enviada em: Thursday, 17 de May de 2012 11:15 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] Re: aplicação de PATCH Colega, há algum tempo eu já falei sobre isso aqui no grupo mesmo, torno a repetir
RES: [oracle_br] Re: aplicação de PATCH
Chiappa, não tinha visto direito os arquivos que fazem parte do Patch. O que eu preciso instalar é somente o Oracle Gateway desse patch, que segundo suporte é compatível com a 10.2.0.5, sendo assim acredito que o meu RDBMS não sofrerá nenhuma mudança, somente o Oracle Gateway, é isso? Grato. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Thursday, 17 de May de 2012 11:15 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: aplicação de PATCH Colega, há algum tempo eu já falei sobre isso aqui no grupo mesmo, torno a repetir : PATCH na Oracle é o termo genérico para correções, para alterações, e ele primeiro pode ser um one-off patch (ie,uma alteração específica do RDBMS e/ou do dicionário visando corrigir um bug interno, ele NUNCA introduz nenhuma nova feature e como é uma correção pequena , ** NÂO ** muda versão de nada em princípio,okdoc ? Outra possibilidade é vc ter um CPU ou PSU, que vc deve entender como um Conjunto de alterações, que em princípio não introduzem novas features MAS como mexem bastante eles tipicamente alteram sub-release do seu binário, ie, o seu software 10.2.0.5.1 pode depois do PSU ou CPU passar para 10.2.0.5.2, digamos,ok? E temos também o PATCHSET, ie, um conjunto ainda maior e mais abrangente de correções (que não se limitam à erros graves de segurança, ao contrário do CPU/PSU), e o PATCHSET altera o major number da sua sub-release , o seu software 10.2.0.4.x com o patchset passaria para 10.2.0.5.x, digamos... Então confirme no README desse cara e com o Suporte que realmente esse sujeito é um ONE-OFF patch, e isso confirmado Certamente ele não vai mudar nada no seu version number, é uma atuação interna tal como o que esses patches menores fazem, mesmo... []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Bom dia! Estou com um problema conexão banco a banco e abri um chamado na Oracle, e a solução que me deram foi para fazer a aplicação do patch de número 10404530. Segundo o Suporte eu posso aplicar esse PATCH que é compatível com a minha versão, 10.2.0.5. Dúvida, eu consigo aplicar o patch na minha versão atual? Depois da aplicação do PATCH a minha versão será 10.2.0.5 ou 11.2.0.3? Alguém já fez aplicação desse tipo com versões diferentes do Oracle? Oracle 10.2.0.5 S.O.: HP-UX 11.23B Grato. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Re: tamanho das tablespace/datafiles
Ficou confuso o e-mail que passei, vou tentar descrever melhor o que preciso. Eu tenho uma tablespace, e crio um data file de tamanho de 2GB AUTOEXTEND de 100MB e tamanho máximo 2,5GB. Se eu fizer a consulta vai retornar. Tablespace = dados Tamanho = 2GB Usado = 100MB (digamos que utilizei esse tanto) Espaço livre = 1,9GB. O que eu queria seria assim: Tablespace = dados Tamanho = 2,5GB (gostaria de trazer aqui o maxsize do meu datafile) Usado = 100MB Espaço livre = 2,4GB O espaço em disco eu controlo pelo crontab, e antes de criar qualquer datafile verifico o espaçamento. Grato. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de J. Laurindo Chiappa Enviada em: Thursday, 17 de May de 2012 11:02 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Re: tamanho das tablespace/datafiles Bem, em primeiro lugar eu não sei o que são extents reservados : se vc está falando sobre datafiles AUTOEXTEND, o espaço em disco que ainda estálivre para atender ao pedido de crescimento absolutamente NÂO TEM extent algum, é espaço livre e não-usado no disco... Na suposição que vc realmente o que quer é ter info sobre espaço livre em disco, externo ao banco, potencialmente alocável em qquer pedido de auto-crescimento via datafgle com autoextent , a primeira coisa é que (óbvio) já que esse espaço está EXTERNO ao database, vc dificilmente conseguirá obter essa informação via dicionário de dados, vc terá que utilizar (num shell-script, talvez) algum comando do SO que dê espaço livre (du ou df , o que vc tiver), gravar essa informação (num arquivo-texto, talvez) e depois a usar no seu script, lendo o arq-texto como external table, provavelmente... Obtido o espaço livree em disco, temos a segunda dificuldade, que é : normalmente vc tem um filesystem /ORADADOS ou similar, e todos os datafiles estão nele, então vc pode ter múltiplos datafiles AUTOEXTEND em múltiplas tablespaces todos residindo no mesmo filesystem /ORADADOS , como é que vc vai saber se o espaço livre vai ser alocado pratablespace x, y ou z ?? Não sabe... ] Então a minha Recomendação pro seu script é : uma vez que vc obteve o espaço livre em disco que pode ser requisitado pros datafiles AUTOEXTEND, vc mostre essa soma como uma nova consulta no seu script , abaixo da consulta atual, E tenha também um algoritmo de aviso - por exemplo, some 10% do tamanho total de cada tablespace que pode serauto-extendida e aí o seu script avisa se o espaço livre que pode ser alocado é inferior à isso , algo assim.. []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Bom dia! Hoje eu tenho o seguinte script que utilizo para monitoramento das minhas tablespaces: SELECT ts.tablespace_name, File Count, TRUNC(SIZE(MB), 0) Size(MB), TRUNC(fr.FREE(MB), 0) Free(MB), --TRUNC(SIZE(MB) - FREE(MB), 2) Used(MB), TRUNC(SIZE(MB) - FREE(MB), 0) Used(MB), df.MAX_EXT Max Ext(MB), (fr.FREE(MB) / df.SIZE(MB)) * 100 % Free, RPAD('*', TRUNC(CEIL((fr.FREE(MB) / df.SIZE(MB)) * 100)/10), '*') Graph FROM (SELECT tablespace_name, SUM (bytes) / (1024 * 1024) FREE(MB) FROM dba_free_space WHERE TABLESPACE_NAME NOT IN ('SYSTEM', 'SYSAUX', 'UNDOTBS', 'USERS', 'USER_DATA', 'UNDOTBS1', 'UNDO') GROUP BY tablespace_name) fr, (SELECT tablespace_name, SUM(bytes) / (1024 * 1024) SIZE(MB), COUNT(*) File Count, SUM(maxbytes) / (1024 * 1024) MAX_EXT FROM dba_data_files GROUP BY tablespace_name) df, (SELECT tablespace_name FROM dba_tablespaces WHERE TABLESPACE_NAME NOT IN ('SYSTEM', 'SYSAUX', 'UNDOTBS', 'USERS', 'USER_DATA', 'UNDOTBS1', 'UNDO')) ts WHERE fr.tablespace_name = df.tablespace_name (+) AND fr.tablespace_name = ts.tablespace_name (+) ORDER BY ts.tablespace_name Ele não é 100% confiável, pois não pega o tamanho total da tablespace, ou seja, o tamanho que foi criado + os extents que estão reservados para crescer mais. Tenho como adaptar ou montar outro script que retorne o espaço livre da tablespace = (tamanho tablespace + máximo extents)- utilizado? Oracle 10.2.0.5 Obrigado. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] RES: tamanho das tablespace/datafiles
Ederson, é exatamente esse script, eu tinha ele mas acabei perdendo. Chiappa/Milton, entendi a parte do espaço externo do disco alocado. Hoje eu monitoro o tamanho dos discos diariamente, e tomo cuidado de verificar o espaço antes de criar datafiles para as minhas tablespaces. Obrigado pessoal. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de ederson2001br Enviada em: Thursday, 17 de May de 2012 13:36 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] RES: tamanho das tablespace/datafiles Márcio, Abaixo o script que eu uso. Ele demora um pouquinho prá rodar, mas traz a consulta bem completa como a que vc está precisando, inclusive avisa quando a área de autoextend está acima de 80% de ocupação de maxextends: -- free.sql set linesize 120; set pagesize 100; select total.name tablespace , lpad(to_char( total_space ,'999,999,999'),12) Alocado (Mb) , lpad(to_char( (total_space - free_space) ,'999,999,999'),12) usado , lpad(to_char( free_space ,'999,999,999'),12) livre , lpad(to_char( (total_space - free_space) * 100 / total_space ,'990.00'),7) PERC_USO , lpad(to_char( mxMbytes ,'999,999,999'),12) mxMbytes , lpad(to_char( DECODE(mxMbytes,0,0,(ebytes / mxMbytes)) * 100 ,'90.00'),7) USEDPCTMX , CASE WHEN DECODE(mxMbytes,0,0,(ebytes / mxMbytes)) * 100 90 THEN '*' ELSE ' ' END obs from (select tablespace_name, sum(bytes/1024/1024) free_space from sys.dba_free_space group by tablespace_name ) free, (SELECT tablespace_name name, SUM(bytes/1024/1024) total_space, SUM(DECODE(maxbytes,0,user_bytes/1024/1024,maxbytes/1024/1024)) mxMbytes FROM sys.dba_data_files GROUP BY tablespace_name ) total, (SELECT tablespace_name tblspc, SUM(bytes/1024/1024) ebytes FROM sys.dba_extents GROUP BY tablespace_name ) Maxspac where free.tablespace_name = total.name and free.tablespace_name = Maxspac.tblspc order by 1; set linesize 90; set pagesize 20; -- Um exemplo de uma execução em uma base de teste: DBANM@nmdes @free TABLESPACE Alocado (Mb) USADO LIVRE PERC_US MXMBYTES USEDPCT OBS -- --- --- - AUDITORIA_IDX 2,048 1 2,047 0.05 204,800 0.00 BASICA_DATA 113,671 112,078 1,593 98.60 204,800 54.73 BASICA_IDX 144,393 115,761 28,632 80.17 204,800 56.52 BASICA_JN 2,048 245 1,803 11.96 204,800 0.12 CAMPOS_BLOB 6,144 2,753 3,392 44.80 204,800 1.34 CLIENTE_DATA 26,626 25,799 827 96.90 204,800 12.60 CLIENTE_IDX 24,577 24,215 363 98.52 204,800 11.82 CONTRATO_DATA 63,492 62,976 516 99.19 204,800 30.75 CONTRATO_IDX 78,853 77,614 1,239 98.43 204,800 37.90 CORREIO_DATA 2,048 268 1,780 13.07 204,800 0.13 CORREIO_IDX 2,048 389 1,659 19.01 204,800 0.19 CRIVO_DATA 985 982 3 99.65 20,000 4.91 CRIVO_IDX 465 458 7 98.45 20,000 2.29 DOC_DATA 50,179 49,207 972 98.06 204,800 24.03 DOC_IDX 52,227 52,125 102 99.81 204,800 25.45 MOVEST_DATA 9,216 8,898 319 96.54 204,800 4.34 OBJBIGSNK 18,433 18,411 22 99.88 102,400 17.98 SENIOR 6,144 5,673 471 92.33 204,800 2.77 SYSAUX 610 496 114 81.36 2,000 24.81 SYSTEM 1,050 1,047 3 99.74 2,000 52.36 UNDOTBS1 2,000 239 1,761 11.95 2,000 12.25 USERS 20,433 20,260 173 99.15 22,480 90.12 * 22 rows selected. Ederson Elias DBA Oracle http://br.linkedin.com/pub/ederson-elias/24/8b/8b0 --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br , Márcio - Grupos Oracle marcio_cbj@... escreveu Ficou confuso o e-mail que passei, vou tentar descrever melhor o que preciso. Eu tenho uma tablespace, e crio um data file de tamanho de 2GB AUTOEXTEND de 100MB e tamanho máximo 2,5GB. Se eu fizer a consulta vai retornar. Tablespace = dados Tamanho = 2GB Usado = 100MB (digamos que utilizei esse tanto) Espaço livre = 1,9GB. O que eu queria seria assim: Tablespace = dados Tamanho = 2,5GB (gostaria de trazer aqui o maxsize do meu datafile) Usado = 100MB Espaço livre = 2,4GB O espaço em disco eu controlo pelo crontab, e antes de criar qualquer datafile verifico o espaçamento. Grato. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de J. Laurindo Chiappa Enviada em: Thursday, 17 de May de 2012 11:02 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] Re: tamanho das tablespace/datafiles Bem, em primeiro lugar eu não sei o que são extents reservados : se vc está falando sobre datafiles AUTOEXTEND, o espaço em disco que ainda estálivre para atender ao pedido de crescimento absolutamente NÂO TEM extent algum, é espaço livre e não-usado no disco... Na suposição que vc realmente o que quer é ter info sobre espaço livre em disco, externo ao banco, potencialmente alocável em qquer pedido de auto-crescimento via datafgle com autoextent , a primeira coisa é que (óbvio) já que esse espaço está EXTERNO ao database, vc dificilmente conseguirá obter essa
RES: RES: [oracle_br] conexão Oracle x Progress
Denis, estou usando o que vem na instalação do Progress. Ele está instalado na minha pasta /usr/dlc102b/odbc, ai configuro um arquivo odbc.ini. Não sei se a configuração que fiz está funcionando corretamente, gostaria de testar esse ODBC no HP-UX pra ver se está correto, para ir ajustando por eliminação. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 13:25 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] conexão Oracle x Progress Márcio, Qual ODBC você esta usando (freetds, EasySoft, Progress DataDirect)? Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 11:36 Assunto: RES: [oracle_br] conexão Oracle x Progress Bom dia! Fiz algumas mudanças e agora estou recebendo a seguinte mensagem: ERROR at line 1: ORA-28545: error diagnosed by Net8 when connecting to an agent Unable to retrieve text of NETWORK/NCR message 65535 ORA-02063: preceding 2 lines from ORACLEXEMS2MOV De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Márcio - Grupos Oracle Enviada em: Friday, 4 de May de 2012 12:38 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] conexão Oracle x Progress Boas. Estou precisando configurar uma conexão para uma integração entre o Oracle x Progress, estarei utilizando o heterogenous services. Tem que configurar um ODBC para fazer a conexão, a configuração do OBCD fiz no HP-UX onde encontra-se o meu servidor Oracle 10.2.0.5 Criei o dblink e sinônimos e quando tento consultar uma tabela do Progress no Oracle, exibe o seguinte erro: SQL Error: ORA-00980: synonym translation is no longer valid 00980. 0 - synonym translation is no longer valid Eu acho que o problema está no ODBC do progress no HP-UX, mas como eu faço para saber se o ODBC configurado está funcionando corretamente? Márcio. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: RES: RES: [oracle_br] conexão Oracle x Progress
Denis, executei com o usuário root e com usuário oracle e não encontrou o “isql” / isql sh: isql: not found. / su - oracle $ isql sh: isql: not found. $ De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 15:30 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: RES: [oracle_br] conexão Oracle x Progress Marcio, Executa o comando isql no HP-UX e verifique o retorno. Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 14:51 Assunto: RES: RES: [oracle_br] conexão Oracle x Progress Denis, estou usando o que vem na instalação do Progress. Ele está instalado na minha pasta /usr/dlc102b/odbc, ai configuro um arquivo odbc.ini. Não sei se a configuração que fiz está funcionando corretamente, gostaria de testar esse ODBC no HP-UX pra ver se está correto, para ir ajustando por eliminação. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 13:25 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: RES: [oracle_br] conexão Oracle x Progress Márcio, Qual ODBC você esta usando (freetds, EasySoft, Progress DataDirect)? Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 11:36 Assunto: RES: [oracle_br] conexão Oracle x Progress Bom dia! Fiz algumas mudanças e agora estou recebendo a seguinte mensagem: ERROR at line 1: ORA-28545: error diagnosed by Net8 when connecting to an agent Unable to retrieve text of NETWORK/NCR message 65535 ORA-02063: preceding 2 lines from ORACLEXEMS2MOV De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Márcio - Grupos Oracle Enviada em: Friday, 4 de May de 2012 12:38 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] conexão Oracle x Progress Boas. Estou precisando configurar uma conexão para uma integração entre o Oracle x Progress, estarei utilizando o heterogenous services. Tem que configurar um ODBC para fazer a conexão, a configuração do OBCD fiz no HP-UX onde encontra-se o meu servidor Oracle 10.2.0.5 Criei o dblink e sinônimos e quando tento consultar uma tabela do Progress no Oracle, exibe o seguinte erro: SQL Error: ORA-00980: synonym translation is no longer valid 00980. 0 - synonym translation is no longer valid Eu acho que o problema está no ODBC do progress no HP-UX, mas como eu faço para saber se o ODBC configurado está funcionando corretamente? Márcio. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: RES: RES: RES: [oracle_br] conexão Oracle x Progress
Segue Denis: Oracle 10.2.0.5 – HP-UX Progress 10.2AB – HP-UX A integração será via package criada no Oracle que vai consultar/gravar no Progress pelo DBLINK. Eu segui esses dois links, mas não obtive sucesso. Esse configura o ODBC do Progress no Unix http://ingleses.datasul.com.br/scripts/econsultor.sbd/kbfrdet.htm?kbid=13779 Já este configra o Oracle para comunicação com o Progress. http://ingleses.datasul.com.br/scripts/econsultor.sbd/kbfrdet.htm?kbid=42661 Grato. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 16:34 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: RES: RES: [oracle_br] conexão Oracle x Progress Marcio, Me envia qual o seu ambiente (Ex: Oracle no HP-UX, Progress no Windows)? Você chegou a instalar o Oracle Database Gateway na maquina onde se encontra o Oracle? Esta configuração de ODBC eu fiz uma vez, com o Oracle no Aix e o SQL Server no Windows Server. Precisei instalar os drivers de um terceiro, só assim que consegui fazer os dois comunicarem. Observe neste post (https://forums.oracle.com/forums/thread.jspa?threadID=2287080) do forum da Oracle onde eu pedi ajuda para este heterogeneous service. Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 15:40 Assunto: RES: RES: RES: [oracle_br] conexão Oracle x Progress Denis, executei com o usuário root e com usuário oracle e não encontrou o “isql” / isql sh: isql: not found. / su - oracle $ isql sh: isql: not found. $ De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 15:30 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: RES: RES: [oracle_br] conexão Oracle x Progress Marcio, Executa o comando isql no HP-UX e verifique o retorno. Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 14:51 Assunto: RES: RES: [oracle_br] conexão Oracle x Progress Denis, estou usando o que vem na instalação do Progress. Ele está instalado na minha pasta /usr/dlc102b/odbc, ai configuro um arquivo odbc.ini. Não sei se a configuração que fiz está funcionando corretamente, gostaria de testar esse ODBC no HP-UX pra ver se está correto, para ir ajustando por eliminação. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Deninho Enviada em: Friday, 11 de May de 2012 13:25 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: RES: [oracle_br] conexão Oracle x Progress Márcio, Qual ODBC você esta usando (freetds, EasySoft, Progress DataDirect)? Abraços Denis Fernandes Gomes De: Márcio - Grupos Oracle marcio_...@yahoo.com.br mailto:marcio_cbj%40yahoo.com.br mailto:marcio_cbj%40yahoo.com.br mailto:marcio_cbj%40yahoo.com.br Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Enviadas: Sexta-feira, 11 de Maio de 2012 11:36 Assunto: RES: [oracle_br] conexão Oracle x Progress Bom dia! Fiz algumas mudanças e agora estou recebendo a seguinte mensagem: ERROR at line 1: ORA-28545: error diagnosed by Net8 when connecting to an agent Unable to retrieve text of NETWORK/NCR message 65535 ORA-02063: preceding 2 lines from ORACLEXEMS2MOV De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Márcio - Grupos Oracle Enviada em: Friday, 4 de May de 2012 12:38 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] conexão Oracle x Progress Boas. Estou precisando configurar uma conexão para uma integração entre o Oracle x Progress, estarei utilizando o heterogenous services. Tem que configurar um ODBC para fazer a conexão, a configuração do OBCD fiz no HP
RES: [oracle_br] Imp / Exp somente da estrutura da tabela
A tabela com somente a estrutura tem o seu tamanho mínimo. O que você deve fazer é já deixar criado o owner, se não for expdp, e obrigatoriamente deixar as tablespace criada. Na importação a estrutura vão ser alocadas nessa tablespace. Para popular essa tabela, com apenas 10% do tamanho do original, você cria um dblink entre os dois bancos e faz um INSERT.SELECT restringindo a quantidade de informações. Cuidado com as foreign key, importe tabelas com relação corretamente, para não ter problema de integridade. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Marcio MM Enviada em: Monday, 23 de April de 2012 15:39 Para: oracle_br@yahoogrupos.com.br Assunto: RES: [oracle_br] Imp / Exp somente da estrutura da tabela Acho que o problema é que a tabela está com um tamanho grande e quando ela é exportada já é criada com o tamanho como se ela já estivesse com os registros. Precisaria retornar o tamanho inicial ou tamanho mínimo pra criação. Grato. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Alisson Luz Enviada em: segunda-feira, 23 de abril de 2012 14:53 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: RES: [oracle_br] Imp / Exp somente da estrutura da tabela Olá Marcio.. Se você estiver usando o exp/imp pode usar isso exp @oracle_sid COMPRESS=N ROWS=N FILE=nomedobackup.dmp BUFFER=4096 De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br ] Em nome de Marcio MM Enviada em: segunda-feira, 23 de abril de 2012 13:58 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: [oracle_br] Imp / Exp somente da estrutura da tabela Bom dia, Sou novo no ramo e gostaria de importar a estrutura de uma base de dados, sem os dados de um banco Oracle 10, para testes em um Oracle 10 XE, só que resulta em um erro de restrição de tamanho. A pergunta é, seria possível exportar somente as estruturas e importar as tabelas com o tamanho mínimo para que a base suporte a criação das mesmas ? Essa base conta hoje com 856 tabelas e o tamanho da Tablespace 42gb, existem algumas tabelas com mais de 100 milhões de registros, mais não quero os dados, somente a estrutura (tabelas/triggers/procedures/functions/packages/view). Marcio Massaki [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Erro ao compilar procedure no Oracle
O decode está comentado. De: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Em nome de Leonardo Silva Enviada em: Wednesday, 18 de April de 2012 11:18 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Erro ao compilar procedure no Oracle Pessoal, Bom dia, Estou tentando compilar a procedure abaixo, porém está dando erro na linha do caso, o select executa normalmente, porém ao tentar criar uma procedure utilizando o mesmo eu tenho o seguinte erro: Compilation errors for PROCEDURE OPS$STOREP.TESTE_LEO Error: PLS-00103: Encontrado o simbolo CASE quando um dos seguintes simbolos era esperado: ( - + mod null an identifier a double-quoted delimited-identifier a bind variable avg count current max min prior sql stddev sum variance execute forall time timestamp interval date a string literal with character set specification a number a single-quoted SQL string Line: 22 Text: CASE WHEN C.CUST_TYPE_NO = 73 THEN 'CFI' Abaixo o código: Grato pela ajuda. create or replace procedure teste_leo is BEGIN DECLARE VL_SEQREG NUMBER; W_DTDIA DATE; VL_MESANT NUMBER; VL_CNLOJ NUMBER; CURSOR C_RM805L21 IS SELECT ANAREDAD FROM ( SELECT DISTINCT TO_CHAR(A.LOJCLI,'009') ||' '|| RPAD(DECODE (A.TPDEV, 1,'AUTORIZACAO DE CREDITO', 2 , 'TROCA SIMPLES'),22) || ' ' || TO_CHAR(A.DTEMIS,'DD/MM/') || ' ' || RPAD(A.USERINC, 15) || ' ' || RPAD(UPPER(A.STATUS), 15) || '' || RPAD(A.NROSEQ,6)|| '' || TO_CHAR(A.VALOR,'99D99')|| ' ' || A.NFISCAL || '-' || A.NFSER ||' '|| --DECODE( CASE WHEN C.CUST_TYPE_NO = 73 THEN 'CFI' WHEN LENGTH(D.CACGC) = 14 THEN CASE WHEN E.NMNFS 0 AND E.NMCUPFIS = 0 THEN 'EMP' WHEN E.NMNFS = 0 AND E.NMCUPFIS 0 THEN 'CFI' WHEN LENGTH(D.CACGC) = 11 THEN CASE WHEN E.NMNFS 0 OR E.NMCUPFIS 0 THEN 'CFD' WHEN LENGTH(D.CACGC) = 11 THEN CASE WHEN E.NMNFS 0 OR E.NMCUPFIS 0 AND C.CAJURFIS = 'J' THEN 'PJ' END END END ELSE 'XXX' END--, 'CFI','MAKRO', 'EMP', 'EMPRESA', 'CFD', 'MAKRO', 'PJ', 'CLIENTE', 'XXX', 'MAKRO') || ' ' || TO_CHAR(B.DTEMINFS,'DD/MM/')|| ' ' || DECODE( CASE WHEN C.CUST_TYPE_NO = 73 THEN 'CFI' WHEN LENGTH(D.CACGC) = 14 THEN CASE WHEN E.NMNFS 0 AND E.NMCUPFIS = 0 THEN 'EMP' WHEN E.NMNFS = 0 AND E.NMCUPFIS 0 THEN 'CFI' WHEN LENGTH(D.CACGC) = 11 THEN CASE WHEN E.NMNFS 0 OR E.NMCUPFIS 0 THEN 'CFD' END END ELSE 'XXX' END , 'CFI','INDETERMINADO', 'EMP', 'EMPRESA', 'CFD', 'DETERMINADO', 'XXX', ' ') || ' ' || TO_CHAR(A.CUSTCLI ,'009') || ' ' || B.NMNFS || '-' || B.CNSERNFS || ' ' || A.NMCUPFIS ANAREDAD FROM CUST_DEV_CHANGE A, CECABNFS B, ACCLIPRI C, ACCLISEC D, HIST_INVOICE E WHERE A.NMSEQREG = B.NMSEQREG AND A.CUSTCLI = C.CUST_NO AND C.CUST_NO = D.CUST_NO AND D.CUST_NO = E.CUST_NO) ORDER BY SUBSTR(ANAREDAD,23,2); -- --PROCEDURE PROC_RM805L21 IS BEGIN SELECT TO_NUMBER(TO_CHAR(TRUNC(NVL(B.DTDIA,SYSDATE),'MM')-3,'MM')), A.STORE_NO, NVL(B.DTDIA,SYSDATE) INTO VL_MESANT, VL_CNLOJ, W_DTDIA FROM STORE A, GENVAR B; VL_SEQREG := 0; FOR REG IN C_RM805L21 LOOP IF VL_SEQREG = 0 THEN INSERT INTO RLINFCTL (ANREL, CNLOJ, DTGERREL, SQDETREL, ANAREDAD) VALUES ( 'RM805L21',0,TRUNC(W_DTDIA),0, 'LOJA OPERACAO REALIZACAO RESPONSAVEL STATUS FORMULARIO VALOR NOTA_FISCAL EMISSOR COMPRA CONSUMIDOR PASSAPORTE NOTA_FISCAL CUPOM_FISCAL' ); END IF; VL_SEQREG := VL_SEQREG + 1; INSERT INTO RLINFCTL( ANREL , CNLOJ , DTGERREL , SQDETREL , ANAREDAD) VALUES ( 'RM805L21' , VL_CNLOJ , TRUNC(W_DTDIA) , VL_SEQREG , REG.ANAREDAD ); END LOOP; COMMIT; END; [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]