[oracle_br] Re: Alterar a partição de registros numa tabela. Q ual a melhor forma?
E ai pessoal, Alguem poderia me ajudar com essa questão ?? Abs 2009/9/3 Lobão mlo...@gmail.com Pessoal, Possuo uma tabela temporária com 127 partições, alimento esta tabela temporária atraves de sqlloader e faço a distribuição dos registros atraves do MOD(valor,128). Entretanto este valor que faço a distribuição não é o correto, pq o arquivo que faço a importação para o banco não possui a informação necessária. O banco de dados da empresa possui um cluster com 8 instâncias espelhadas onde cada instância possui um range de partições em cache oq aumenta a performance... Meu problema é o seguinte, preciso atualizar os registros desta tabela temporária com uma informação que me diz qual a partição correta do registro. Contudo essa tabela possui em média 3 milhões de registros que precisam de atualização. Dai minha dúvida...queria saber a melhor forma de realizar esta atualização dos registros com uma boa performance...peço ajuda aos amigos DBAs e desenvolvedores. Pensei em realizar a atualização de algumas maneiras: 1) Utilizando BULCK COLLECTION para realizar a atualização. 2) Inserir os registros em outra tabela temporária B com a informação correta, truncar a tabela temporaria A e depois realizar a copia da tabela B para A. E ai pessoal...sugestões ? Valeu! []'s [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Re: Alterar a partição de registros numa tabela. Qual a melhor forma?
Tive uma experiência parecida a algum tempo, e obtive melhor performance truncando uma partição por vez, partindo para a próxima após o carregamento da anterior... Não sei se fica bem claro, nem sei se se aplica tão bem ao seu caso como se aplicou ao meu(tinha +50M recs na tabela), mas de repente quem sabe... --- Em oracle_br@yahoogrupos.com.br, Lobão mlo...@... escreveu E ai pessoal, Alguem poderia me ajudar com essa questão ?? Abs 2009/9/3 Lobão mlo...@... Pessoal, Possuo uma tabela temporária com 127 partições, alimento esta tabela temporária atraves de sqlloader e faço a distribuição dos registros atraves do MOD(valor,128). Entretanto este valor que faço a distribuição não é o correto, pq o arquivo que faço a importação para o banco não possui a informação necessária. O banco de dados da empresa possui um cluster com 8 instâncias espelhadas onde cada instância possui um range de partições em cache oq aumenta a performance... Meu problema é o seguinte, preciso atualizar os registros desta tabela temporária com uma informação que me diz qual a partição correta do registro. Contudo essa tabela possui em média 3 milhões de registros que precisam de atualização. Dai minha dúvida...queria saber a melhor forma de realizar esta atualização dos registros com uma boa performance...peço ajuda aos amigos DBAs e desenvolvedores. Pensei em realizar a atualização de algumas maneiras: 1) Utilizando BULCK COLLECTION para realizar a atualização. 2) Inserir os registros em outra tabela temporária B com a informação correta, truncar a tabela temporaria A e depois realizar a copia da tabela B para A. E ai pessoal...sugestões ? Valeu! []'s [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Migração Oracle 9i para Oracle 10g
Pessoal, Estava fazendo um teste de Migração com o seguinte cenário : 1a) Uma máquina com SO Windows XP - Oracle 9i (Sun Virtual Box) 2a) A máquina principal com SO windows xp - Oracle 10g Tenho o Oracle 9i em uma máquina virtual e o 10g instalado na máquina principal. Quando utilizo o software (Assistente de Upgrade de Banco de Dados), ele só enxerga o banco criado no Oracle 10g, e eu gostaria de migrar o banco da máquina virtual (9i) para 10g. Obs: Consigo acessar normalmente pelo SQL*PLUS a máquina que contém o Oracle 9i e vice-versa. Essa mesma migração eu consegui realizar no LINUX, mexendo no ORATAB. Alguém já fez alguma migração de Oracle em SO windows. Abs
[oracle_br] retirar duplicados
Caros amigos, estou tentado criar a primary key de uma tabela com muitas linhas. Porém existem duplicidades e o processo é invalidado. Existe alguma maneira de criar a PK retirando os duplicados? Grande Abraço. [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Re: retirar duplicados
Existem técnicas para deleção de dados duplicados, porém lhe pergunto, esses dados estão duplicados no real sentido da palavra (apenas par)? Caso sim o seguinte serve: DELETE FROM our_table WHERE rowid not in (SELECT MIN(rowid) FROM our_table GROUP BY column1, column2, column3... ; As colunas do group by devem ser as que dão uniqueness ao registro... Grato, TS --- Em oracle_br@yahoogrupos.com.br, Eduardo Souza pjabran...@... escreveu Caros amigos, estou tentado criar a primary key de uma tabela com muitas linhas. Porém existem duplicidades e o processo é invalidado. Existe alguma maneira de criar a PK retirando os duplicados? Grande Abraço. [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Re: Alterar a partição de registro s numa tabela. Qual a melhor forma?
Obrigado pela resposta kurtnaxl , mas não posso utilizar esta solução...pois não posso truncar partição por partição...pois irei mover os registros para a partição correta com base numa informação q irei buscar...com isto não posso truncar a partição, pois o registro já pode esta na sua partição correta. Abs 2009/9/8 kurtnaxl thiagoeca...@gmail.com Tive uma experiência parecida a algum tempo, e obtive melhor performance truncando uma partição por vez, partindo para a próxima após o carregamento da anterior... Não sei se fica bem claro, nem sei se se aplica tão bem ao seu caso como se aplicou ao meu(tinha +50M recs na tabela), mas de repente quem sabe... --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Lobão mlo...@... escreveu E ai pessoal, Alguem poderia me ajudar com essa questão ?? Abs 2009/9/3 Lobão mlo...@... Pessoal, Possuo uma tabela temporária com 127 partições, alimento esta tabela temporária atraves de sqlloader e faço a distribuição dos registros atraves do MOD(valor,128). Entretanto este valor que faço a distribuição não é o correto, pq o arquivo que faço a importação para o banco não possui a informação necessária. O banco de dados da empresa possui um cluster com 8 instâncias espelhadas onde cada instância possui um range de partições em cache oq aumenta a performance... Meu problema é o seguinte, preciso atualizar os registros desta tabela temporária com uma informação que me diz qual a partição correta do registro. Contudo essa tabela possui em média 3 milhões de registros que precisam de atualização. Dai minha dúvida...queria saber a melhor forma de realizar esta atualização dos registros com uma boa performance...peço ajuda aos amigos DBAs e desenvolvedores. Pensei em realizar a atualização de algumas maneiras: 1) Utilizando BULCK COLLECTION para realizar a atualização. 2) Inserir os registros em outra tabela temporária B com a informação correta, truncar a tabela temporaria A e depois realizar a copia da tabela B para A. E ai pessoal...sugestões ? Valeu! []'s [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Configurando SHARED SERVERS
Olá pessoal, Estou com o seguinte problema: o oracle está configurado MTS (Shared Server) mas todas as conexões estão como dedicadas. Os parâmetros do banco são:DISPATCHERS = (PROTOCOL=TCP)(DISPATCHERS=8)SHARED_SERVERS = 15MAX_SHARED_SERVERS = 30 MAX_DISPATCHERS = 20 Os serviços do listener são:Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVIDOR-PRODUCAO)(PORT=1521)))Services Summary...Service PLSExtProc has 1 instance(s). Instance PLSExtProc, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:0 refused:0 LOCAL SERVERService prod has 1 instance(s). Instance prod, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:442 refused:0 LOCAL SERVERThe command completed successfully A configuração é a seguinte: Oracle 9.2.0.8, Linux RedHat 4.8 x86_64 _ Augusto César _ Acesse seu Hotmail de onde quer que esteja através do celular. Clique aqui. http://www.windowslive.com.br/celular/home.asp?utm_source=MSN_Hotmailutm_medium=Taglineutm_campaign=MobileServices200908 [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Configurando SHARED SERVERS
Boa tarde Augusto, Algumas dúvidas são: * Você realmente precisa de shared server? * Quantas sessões concorrentes você tem na sua base? Seus sistemas são OLTP (com sesões bem curtas e pouca movimentação de dados consulta/modificação)? Verifique se os seus servidores de aplicação e das suas máquinas clientes usam no TNSNAMES.ORA (SERVER=DEDICATED), isso vai forçar a conexão dedicada independente de como o banco esteja configurado. Na V$session é um dos lugares onde vc pode inverstigar se as conexões são dedicadas ou não. select username , server from v$session where username is not null / Atenciosamente, Rodrigo Mufalani OCP 10g 11g +RAC Oracle ACE Member mufal...@oi.com.br http://mufalani.blogspot.com Mensagem Original: Data: 11:55:57 08/09/2009 De: Augusto Cesar cesarssan...@hotmail.com Assunto: [oracle_br] Configurando SHARED SERVERS Olá pessoal, Estou com o seguinte problema: o oracle está configurado MTS (Shared Server) mas todas as conexões estão como dedicadas. Os parâmetros do banco são:DISPATCHERS = (PROTOCOL=TCP)(DISPATCHERS=8)SHARED_SERVERS = 15MAX_SHARED_SERVERS = 30 MAX_DISPATCHERS = 20 Os serviços do listener são:Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVIDOR-PRODUCAO)(PORT=1521)))Services Summary...Service PLSExtProc has 1 instance(s). Instance PLSExtProc, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:0 refused:0 LOCAL SERVERService prod has 1 instance(s). Instance prod, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:442 refused:0 LOCAL SERVERThe command completed successfully A configuração é a seguinte: Oracle 9.2.0.8, Linux RedHat 4.8 x86_64 _ Augusto César _ Acesse seu Hotmail de onde quer que esteja através do celular. Clique aqui. http://www.windowslive.com.br/celular/home.asp?utm_source=MSN_Hotmailutm_medium=Taglineutm_campaign=MobileServices200908 [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 Na Oi Internet você ganha ou ganha. Além de acesso grátis com qualidade, você pode ter contas ilimitadas de email com 1 giga cada uma, suporte grátis e muito mais. Baixe grátis o Discador Oi em http://www.oi.com.br/discador e comece a ganhar. Agora, se o seu negócio é voar alto na internet, assine Oi Internet Banda Larga e ganhe o modem grátis. Clique em http://www.oi.com.br/bandalarga e aproveite essa moleza!
[oracle_br] Re: Configurando SHARED SERVERS
Consegui! O problema foi que o listener não estava reconhecendo as configurações MTS do banco. Executei o seguinte comando e funcionou: ALTER SYSTEM SET LOCAL_LISTENER = '(ADDRESS=(PROTOCOL=TCP)(HOST=SERVIDOR-PRODUCAO)(PORT=1521))'. Service prod has 1 instance(s). Instance prod, status READY, has 9 handler(s) for this service... Handler(s): D007 established:62 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21046 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32785)) D006 established:49 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21044 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32784)) D005 established:52 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21042 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32783)) D004 established:54 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21040 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32782)) D003 established:47 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21038 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32781)) D002 established:50 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21036 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32780)) D001 established:55 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21034 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32779)) D000 established:54 refused:0 current:19 max:1002 state:ready DISPATCHER machine: servidor-producao, pid: 21032 (ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=32778)) DEDICATED established:22 refused:0 state:ready LOCAL SERVER The command completed successfully --- Em oracle_br@yahoogrupos.com.br, Augusto Cesar cesarssan...@... escreveu Olá pessoal, Estou com o seguinte problema: o oracle está configurado MTS (Shared Server) mas todas as conexões estão como dedicadas. Os parâmetros do banco são:DISPATCHERS = (PROTOCOL=TCP)(DISPATCHERS=8)SHARED_SERVERS = 15MAX_SHARED_SERVERS = 30 MAX_DISPATCHERS = 20 Os serviços do listener são:Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=SERVIDOR-PRODUCAO)(PORT=1521)))Services Summary...Service PLSExtProc has 1 instance(s). Instance PLSExtProc, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:0 refused:0 LOCAL SERVERService prod has 1 instance(s). Instance prod, status UNKNOWN, has 1 handler(s) for this service...Handler(s): DEDICATED established:442 refused:0 LOCAL SERVERThe command completed successfully A configuração é a seguinte: Oracle 9.2.0.8, Linux RedHat 4.8 x86_64 _ Augusto César _ Acesse seu Hotmail de onde quer que esteja através do celular. Clique aqui. http://www.windowslive.com.br/celular/home.asp?utm_source=MSN_Hotmailutm_medium=Taglineutm_campaign=MobileServices200908 [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Universidade abre novas turmas para MBA para formaç ão de DBA ORACLE
Pessoal, A quem possa interessar, segue a dica de curso de MBA em Oracle. A Universidade Veiga de Almeida, vem através deste divulgar o início da quarta turma do curso MBA Sistema de Gestão Empresarial Integrada em Banco de Dados ORACLE, para formação de DBA Oracle. *Objetivo *Este curso se propõe a capacitar o profissional de TI a atuar no ciclo de vida de um projeto de banco de dados Oracle e na sua administração. Seu objetivo especifico é qualificar o profissional para atuar como Administrador de Banco de Dados Oracle (DBA), atuando nas diversas fases, tais como: fases de definição do modelo de dados, da especificação e da implementação do projeto físico e, por fim, da criação do banco de dados Oracle. Aprenda a apoiar a redução de custos e aumentar a produtividade nas empresas. Venha ter um diferencial no mercado de trabalho. *Público-alvo* Profissional de nível superior que exerça ou que possa vir a exercer a função técnica ou de Gestão na Administração de Banco de Dados Oracle. *Programa* 01. Modelagem Dados ORACLE 02. Business Intelligence 03. Gerenciamento de Projetos 04. Estudo de Processos de Negócio EPN 05. Metodologia de Pesquisa e Didática do Ensino Superior 06. Banco de Dados Oracle 10g: Introdução à Linguagem SQL 07. Banco de Dados Oracle 10g: Programando com PL/SQL 08. Oracle Forms Developer 10g: Build Internet Applications 09. Banco de Dados Oracle 10g: Administration Workshop I 10. Banco de Dados 10g: Administration Workshop II 11. Administração, Performance e Otimização do Banco de Dados Oracle 12. Reorganização e definição da base de dados Oracle 10g 13. Alta disponibilidade da base de dados Oracle 10G (RAC e DataGuard) *Diferencial do curso* - Total vivência prática - Vouches para obter a certificação oracle *Investimento* 18 parcelas de R$ 574,00 *Dia e Horário* Campus Tijuca (Rua Ibituruna, 75) Terças e Quintas, das 18h45min às 21h45min com sábados alternados, das 8h às 13h. Próxima Turma: 4º turma: Aula inaugural 19 de setembro de 2009 *Matriculas abertas* *Coordenação e Contatos* Edson Almeida Junior (ed...@consulting.com.br) Eduardo Pimentel (epimen...@gmail.com) Sérgio Chaves (sergio.cha...@elumini.com.br) *Mais informações* Ligue Viega de Almeida (21) 2574 ou www.uva.br *Veja link do curso* http://uvaonline.uva.br/mkt/site/curso,80,100,__pos-graduacao_mba_sistema_de_gestao_empresarial_integrada_em_banco_de_dados_oracle_objetivos.html [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] retirar duplicados
Eduardo, Vc vai ter q localizar os registros que estão duplicados e dar um tratamento neles (ou delete ou update, sei lá). Uma forma de vc achar os registros duplicados eh vc fazer um select com group by pelos campos da tua PK e pegando o Max (ou min) do RowID para vc fazer o tratamento exato. O select pode ser assim: Select Campos_da_PK, Max(RowID) From owner.Tabela Group By Campos_da_PK Having Count(1) 1 O RowID vai te servir para vc tratar o registro em específico. Se vc der um update ou delete com o Where nos campos da PK, vc vai afetar as linhas duplicadas (e não somente a que vc quer tratar). Espero ter ajudado. Jairo 2009/9/8 Eduardo Souza pjabran...@gmail.com Caros amigos, estou tentado criar a primary key de uma tabela com muitas linhas. Porém existem duplicidades e o processo é invalidado. Existe alguma maneira de criar a PK retirando os duplicados? Grande Abraço. [As partes desta mensagem que não continham texto foram removidas] -- Jairo Azevedo jsouza...@gmail.com protheus...@yahoo.com.br (21) -6492 [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Migração Oracle 9i para Oracle 10g - Problemas
Pessoal, Estava fazendo um teste de Migração com o seguinte cenário : 1a) Uma máquina com SO Windows XP - Oracle 9i (Sun Virtual Box) 2a) A máquina principal com SO windows xp - Oracle 10g Tenho o Oracle 9i em uma máquina virtual e o 10g instalado na máquina principal. Quando utilizo o software (Assistente de Upgrade de Banco de Dados), ele só enxerga o banco criado no Oracle 10g, e eu gostaria de migrar o banco da máquina virtual (9i) para 10g. Obs: Consigo acessar normalmente pelo SQL*PLUS a máquina que contém o Oracle 9i e vice-versa. Essa mesma migração eu consegui realizar no LINUX, mexendo no ORATAB. Alguém já fez alguma migração de Oracle em SO windows. Abs
Re: [oracle_br] Migração Oracle 9i para Orac le 10g - Problemas
Veja se seu ORACLE_HOME, ORACLE_SID está setado corretamente no regedit. - Original Message - From: jota_lvaz To: oracle_br@yahoogrupos.com.br Sent: Tuesday, September 08, 2009 12:53 PM Subject: [oracle_br] Migração Oracle 9i para Oracle 10g - Problemas Pessoal, Estava fazendo um teste de Migração com o seguinte cenário : 1a) Uma máquina com SO Windows XP - Oracle 9i (Sun Virtual Box) 2a) A máquina principal com SO windows xp - Oracle 10g Tenho o Oracle 9i em uma máquina virtual e o 10g instalado na máquina principal. Quando utilizo o software (Assistente de Upgrade de Banco de Dados), ele só enxerga o banco criado no Oracle 10g, e eu gostaria de migrar o banco da máquina virtual (9i) para 10g. Obs: Consigo acessar normalmente pelo SQL*PLUS a máquina que contém o Oracle 9i e vice-versa. Essa mesma migração eu consegui realizar no LINUX, mexendo no ORATAB. Alguém já fez alguma migração de Oracle em SO windows. Abs -- O Banco de Dados de Vírus interno expirou. Verificado por AVG - http://www.avgbrasil.com.br Versão: 8.0.233 / Banco de dados de vírus: 270.10.16/1926 - Data de Lançamento: 30/1/2009 17:31 [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Re: É possivel dropar usuario sem g erar logs na tabela de undo ?
Pelo que entendi, o que ele está querendo é para não lotar a TBS de undo. Já passei apertado porisso (rs) e aprendi o PURGE primeiro dropa as tabelas com purge depois o user... é isso? flw 2009/9/4 jlchiappa jlchia...@yahoo.com.br Colega, pode consultar na documentação (que é grátis e está Online em http://tahiti.oracle.com ), que apenas algumas *** POUCAS *** operações (como INSERT APPEND, alguns CREATEs, etc) levam em conta o status de NOLOGGING, e o drop user ** Não É ** uma delas, o DROP USER vai sim ** sempre ** gerar log ... Explique porém exatamente o porque de vc querer isso (é para acelerar um DROP que está demorando muito, talvez) , que a gente pode palpitar : Por exemplo, ao invés de DROP USER direto antes desligar ou dropar SEM VALIDAR as constraints, ter vários JOBs dropando - com PURGE !! - as tabelas em paralelo . pra depois fazer o DROP USER Mas digalá o que vc quer/precisa que a gente pode palpitar ... []s Chiappa --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, aleksandrosouza aleksandroso...@... escreveu Foi a primeira coisa que eu fiz, mas ele gera mesmo assim. --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, kurtnaxl thiagoecatia@ escreveu Não tenho Oracle disponível para testar, mas de repente o NOLOGGING também funcione para isso... DROP USER xx NOLOGGING; Tente e informe se funfa... abçs --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, aleksandrosouza aleksandrosouza@ escreveu Tenho a necessidade de dropar um usuário sem gerar lançamentos na tabels UNDOTBS. É possível eu fazer alguma configuração ?. Meu oracle é 11g 11.2 [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] ORA-01001:
Boa tarde pessoas, Estamos com um problemão aqui por causa de um erro de cursor. Só não estamos conseguindo descobrir o que está fazendo isso acontecer...metalink e tals...vamos tentar reproduzir. Alguém aqui da lista já passou por isso? Preciso de umas dicas... Error log : 04.09.2009 17:41:37 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC: com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_ 04.09.2009 17:41:37 Error Exception caught by adapter framework: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC Error log : 04.09.2009 03:57:49 Error Unable to execute statement for table or stored procedure. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (Structure 'statement') due to java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error JDBC message processing failed; reason Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Exception caught by adapter framework: null 04.09.2009 03:57:50 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Delivery of the message to the application using connection JDBC_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1. Agradeço desde já a atenção de todos. Obrigada, Fernanda Damous.
Re: [oracle_br] ORA-01001:
Veja se isto te ajuda. http://www.techonthenet.com/oracle/errors/ora01001.php Abraços. 2009/9/8 fdamous atech.ferna...@guest.aes.com Boa tarde pessoas, Estamos com um problemão aqui por causa de um erro de cursor. Só não estamos conseguindo descobrir o que está fazendo isso acontecer...metalink e tals...vamos tentar reproduzir. Alguém aqui da lista já passou por isso? Preciso de umas dicas... Error log : 04.09.2009 17:41:37 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC: com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_ 04.09.2009 17:41:37 Error Exception caught by adapter framework: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC Error log : 04.09.2009 03:57:49 Error Unable to execute statement for table or stored procedure. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (Structure 'statement') due to java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error JDBC message processing failed; reason Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Exception caught by adapter framework: null 04.09.2009 03:57:50 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Delivery of the message to the application using connection JDBC_ http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1. Agradeço desde já a atenção de todos. Obrigada, Fernanda Damous. [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Re: É possivel dropar usuario sem gerar logs na tabela de undo ?
Também é isso, primeiro é pela velocidade, e segundo porque estava lotando o undo. Eu diminui o tempo de retenção porém não melhorei a performance. Eu dou meus pulos. De: oracle_br@yahoogrupos.com.br [mailto:oracle...@yahoogrupos.com.br] Em nome de Luiz Antonio Camargo Enviada em: sexta-feira, 4 de setembro de 2009 05:51 PM Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Re: É possivel dropar usuario sem gerar logs na tabela de undo ? Pelo que entendi, o que ele está querendo é para não lotar a TBS de undo. Já passei apertado porisso (rs) e aprendi o PURGE primeiro dropa as tabelas com purge depois o user... é isso? flw 2009/9/4 jlchiappa jlchia...@yahoo.com.br mailto:jlchiappa%40yahoo.com.br Colega, pode consultar na documentação (que é grátis e está Online em http://tahiti.oracle.com ), que apenas algumas *** POUCAS *** operações (como INSERT APPEND, alguns CREATEs, etc) levam em conta o status de NOLOGGING, e o drop user ** Não É ** uma delas, o DROP USER vai sim ** sempre ** gerar log ... Explique porém exatamente o porque de vc querer isso (é para acelerar um DROP que está demorando muito, talvez) , que a gente pode palpitar : Por exemplo, ao invés de DROP USER direto antes desligar ou dropar SEM VALIDAR as constraints, ter vários JOBs dropando - com PURGE !! - as tabelas em paralelo . pra depois fazer o DROP USER Mas digalá o que vc quer/precisa que a gente pode palpitar ... []s Chiappa --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, aleksandrosouza aleksandroso...@... escreveu Foi a primeira coisa que eu fiz, mas ele gera mesmo assim. --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, kurtnaxl thiagoecatia@ escreveu Não tenho Oracle disponível para testar, mas de repente o NOLOGGING também funcione para isso... DROP USER xx NOLOGGING; Tente e informe se funfa... abçs --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, aleksandrosouza aleksandrosouza@ escreveu Tenho a necessidade de dropar um usuário sem gerar lançamentos na tabels UNDOTBS. É possível eu fazer alguma configuração ?. Meu oracle é 11g 11.2 [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Utilizando o expdp para gerar EXPDAT.DMP, está com m ensagem de erro
Pessoal, Eu estou utilizando recurso de backup expdp e quando logo pelo prompt aparece a seguinte mensagem abaixo: ora-31626; job não existe ora-31637: não possível criar job SYS_EXPORT_FULL_01 para o usuario SYSTEM ora-06512: EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPU$FT_INT line 600 ora-39080: falha ao criar as filas KUPC$C...1...20090904155733 E para o job de Data Pump ora-06512:EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPC$QUE_INT, line 1555 ora-04063: PACHAGE BODY SYS.DBMS_AQADM_SYS contem erros ora-06508: PL/SQL: não foi localizada a unidade de programa que está sendo chamada: SYS.DBMS_AQADM_SYS O que pode ser? Eu já fiz este tipo de backup em outra máquina e sempre funcionou normalmente gerando o arquivo EXPDAT.DMP e export. E agora não estou conseguindo para esta outra máquina. Gratíssim, Andréia Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Re: ORA-01001:
Fê, o seu ambiente aí parece ser *** extremamente *** complexo, lotes de camadas de tecnologia presentes : numa olhada simples, pelas msgs could not convert request from XML e sax parser vejo que vc está fazendo processamento de XML, pelo nome do objeto PG_INTERFACE_SAP deduzo que tem uma instância SAP no meio, a página http://help.sap.com/javadocs/NW04s/current/jc/com/sap/mw/jco/JCO.html nos mostra que essa exception de datatype *** NÃO *** é de um objeto Oracle nativo (é uma classe do SAP em si, não do bd Oracle), e certamente (já que vc mandou a msg prum grupo de Oracle) em algum ponto deve ter uma procedure Oracle sendo executada imho o passo número 1 vai ser vc INSTRUMENTAR (junto com os programadores/técnicos em cada camada) as rotinas, nem que seja tendo um print estou na linha x do programa y que seja, e/ou executar a traquitana em modo debug, em partes aonde/se possível, para vc poder saber exatamente QUAL ponto de qual camada está falhando, caso contrário sorry, não vejo como vc vai obter essa crucial informação... Vamos ver se estou errado (tomara que esteja), mas esse ambiente me parece ser bem específico, acho bem difícil que outra pessoa tenha um exatamente igual pra poder palpitar mais diretamente Acho que as únicas coisas que posso comentar neste momento, sem ter a informação de onde/o que está falhando, são as msgs de conversão de datatype falhando, como Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places, isso parece ** muito ** indicar falha não na parte Oracle dessa cebola aí, mas num programa Java recebendo um datatype (do Oracle, talvez ?) não-válido : isso tanto me baseando na AUSÊNCIA dessa msg nos manuais Oracle (pode conferir) quanto em sites como http://www.roseindia.net/answers/viewanswers/2582.html , que dizem que isso é uma questão java-related... É isso... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, Hevandro Veiga hevandr...@... escreveu Veja se isto te ajuda. http://www.techonthenet.com/oracle/errors/ora01001.php Abraços. 2009/9/8 fdamous atech.ferna...@... Boa tarde pessoas, Estamos com um problemão aqui por causa de um erro de cursor. Só não estamos conseguindo descobrir o que está fazendo isso acontecer...metalink e tals...vamos tentar reproduzir. Alguém aqui da lista já passou por isso? Preciso de umas dicas... Error log : 04.09.2009 17:41:37 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC: com.sap.aii.af.rfc.afcommunication.RfcAFWException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_ 04.09.2009 17:41:37 Error Exception caught by adapter framework: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: could not convert request from XML to RFC:com.sap.mw.jco.JCO$ConversionException: (122) JCO_ERROR_CONVERSION: Number 100,00 cannot be encoded as a BCD of length 7 with 2 decimal places at field I_VLR_DRC Error log : 04.09.2009 03:57:49 Error Unable to execute statement for table or stored procedure. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (Structure 'statement') due to java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error JDBC message processing failed; reason Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Exception caught by adapter framework: null 04.09.2009 03:57:50 Error MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'): java.sql.SQLException: ORA-01001: invalid cursor ORA-06512: at ADMRT.PG_INTERFACE_SAP, line 298 ORA-06512: at line 1 04.09.2009 03:57:50 Error Delivery of the message to the application using connection JDBC_ http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: Error processing request in sax parser: Error when executing statement for table/stored proc. 'PG_INTERFACE_SAP.SP_ATUALIZA_NOTA_CCS' (structure 'statement'):
Re: [oracle_br] Re: Utilizando o expdp para gerar EX PDAT.DMP, está com mensagem de erro
Da última vez que tive esse problema, executei como SYSDBA e funcionou. Att, Hevandro C. Veiga 2009/9/8 kurtnaxl thiagoeca...@gmail.com Pode ser uma pergunta estúpida mas estou apenas tentando ajudar: O usuário com o qual se conectou ao banco para rodar este backup tem acesso aos objetos do SYS? Vc consegue verificar se há erros em SYS.DBMS_AQADM_SYS? Grato, TS --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Andreia Pessoa deia...@... escreveu Pessoal, Eu estou utilizando recurso de backup expdp e quando logo pelo prompt aparece a seguinte mensagem abaixo: ora-31626; job não existe ora-31637: não possível criar job SYS_EXPORT_FULL_01 para o usuario SYSTEM ora-06512: EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPU$FT_INT line 600 ora-39080: falha ao criar as filas KUPC$C...1...20090904155733 E para o job de Data Pump ora-06512:EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPC$QUE_INT, line 1555 ora-04063: PACHAGE BODY SYS.DBMS_AQADM_SYS contem erros ora-06508: PL/SQL: não foi localizada a unidade de programa que está sendo chamada: SYS.DBMS_AQADM_SYS O que pode ser? Eu já fiz este tipo de backup em outra máquina e sempre funcionou normalmente gerando o arquivo EXPDAT.DMP e export. E agora não estou conseguindo para esta outra máquina. Gratíssim, Andréia __ Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Re: Utilizando o expdp para gerar EXPDAT.DMP, está com mensagem de erro
Pode ser uma pergunta estúpida mas estou apenas tentando ajudar: O usuário com o qual se conectou ao banco para rodar este backup tem acesso aos objetos do SYS? Vc consegue verificar se há erros em SYS.DBMS_AQADM_SYS? Grato, TS --- Em oracle_br@yahoogrupos.com.br, Andreia Pessoa deia...@... escreveu Pessoal, Eu estou utilizando recurso de backup expdp e quando logo pelo prompt aparece a seguinte mensagem abaixo: ora-31626; job não existe ora-31637: não possível criar job SYS_EXPORT_FULL_01 para o usuario SYSTEM ora-06512: EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPU$FT_INT line 600 ora-39080: falha ao criar as filas KUPC$C...1...20090904155733 E para o job de Data Pump ora-06512:EM sys.DBMS_SYS_ERROR line 95 ora-06512: EM SYS.KUPC$QUE_INT, line 1555 ora-04063: PACHAGE BODY SYS.DBMS_AQADM_SYS contem erros ora-06508: PL/SQL: não foi localizada a unidade de programa que está sendo chamada: SYS.DBMS_AQADM_SYS O que pode ser? Eu já fiz este tipo de backup em outra máquina e sempre funcionou normalmente gerando o arquivo EXPDAT.DMP e export. E agora não estou conseguindo para esta outra máquina. Gratíssim, Andréia Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Re: É possivel dropar usuario sem gerar logs na tabela de undo ?
E um detalhe ** crucial ** que não cobri no exemplo : evidentemente, se vc optar por remover constraints e dropar objetos com PURGE antes, vc passa a ter a possibilidade de ter PARALELISMO (ie, uma sessão dropando os objetos de A até F (digamos), ao mesmo tempo que roda outra sessão dropando outra parte dos objetos, e outra e outra ,quantas o teu hardware permitir), o que PODE acelerar ainda mais o processo... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, jlchiappa jlchia...@... escreveu Colega, primeiro de tudo TENHO que observar que DROP de schema é uma operação que DEVERIA SER RARA, se vc está fazendo com frequência a sua lógica é meio questionável - entre outras razões, isso INVALIDA SQLs, não permitindo re-uso de cache, é faz uma porrada de I/Os... Muito bem, isso dito, veja lá que COMO EU DISSE, absolutamente ** não tem como ** vc não gerar redo log/undo para o DROP, como citei apenas ALGUMAS POUCAS operações o permitem, e DROP não é uma delas... Como eu disse também, além da questão de redo/undo, há OUTRAS operações que o DROP de um schema tem que fazer (tal como checks de constraints e quetais), SE vc (como eu disse) as fazer manualmente pode ser que obtenha ganho... Um exemplo : == crio dois schemas similares s...@o10gr2:SQL create user user1 identified by user1; Usuário criado. s...@o10gr2:SQL create user user2 identified by user2; Usuário criado. s...@o10gr2:SQL grant connect, resource to user1; Concessão bem-sucedida. s...@o10gr2:SQL grant connect, resource to user2; Concessão bem-sucedida. s...@o10gr2:SQLgrant select on sys.v_$session to user1; Concessão bem-sucedida. s...@o10gr2:SQLgrant select on sys.v_$session to user2; Concessão bem-sucedida. == populo o schema user1 com tabelas, constraints, índices us...@o10gr2:SQLcreate sequence seque1; Seqüência criada. us...@o10gr2:SQLcreate table TAB_PAI_1 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLcreate table TAB_FILHA_1 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLBEGIN 2 for i in 1..15 loop 3 insert /*+ APPEND */ into TAB_PAI_1 (select seque1.nextval, d.* from all_objects d); 4 commit; 5 end loop; 6 END; 7 / Procedimento PL/SQL concluído com sucesso. us...@o10gr2:SQLinsert /*+ APPEND */ into TAB_FILHA_1 (select * from TAB_PAI_1); 617685 linhas criadas. us...@o10gr2:SQLcommit; Commit concluído. us...@o10gr2:SQLalter table TAB_PAI_1 add constraint TAB_PAI_1_PK primary key (CODIGO) novalidate; Tabela alterada. us...@o10gr2:SQLalter table TAB_FILHA_1 add constraint TAB_FILHA_1_FK foreign key (codigo) references TAB_PAI_1(codigo) novalidate; Tabela alterada. us...@o10gr2:SQLdisc; Desconectado de Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production == populo o schema user2 de maneira similar : us...@o10gr2:SQLcreate sequence seque2; Seqüência criada. us...@o10gr2:SQLcreate table TAB_PAI_2 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLcreate table TAB_FILHA_2 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLBEGIN 2 for i in 1..15 loop 3 insert /*+ APPEND */ into TAB_PAI_2 (select seque2.nextval, d.* from all_objects d); 4 commit; 5 end loop; 6 END; 7 / Procedimento PL/SQL concluído com sucesso. us...@o10gr2:SQLinsert /*+ APPEND */ into TAB_FILHA_2 (select * from TAB_PAI_2); 617685 linhas criadas. us...@o10gr2:SQLcommit; Commit concluído. us...@o10gr2:SQLalter table TAB_PAI_2 add constraint TAB_PAI_2_PK primary key (CODIGO) novalidate; Tabela alterada. us...@o10gr2:SQLalter table TAB_FILHA_2 add constraint TAB_FILHA_2_FK foreign key (codigo) references TAB_PAI_2(codigo) novalidate; Tabela alterada. us...@o10gr2:SQLdisc; Desconectado de Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production === dropo o schema user1 diretamente : us...@o10gr2:SQLconn system/ora...@o10gr2 Conectado. Sessão alterada. sys...@o10gr2:SQLselect sid from v$session where audsid=userenv('sessionid'); SID 137 sys...@o10gr2:SQLset timing on sys...@o10gr2:SQLdrop user user1 cascade; Usuário eliminado. Decorrido: 00:00:07.61 == vejo quanto gerou de undo/redo s...@o10gr2:SQLselect name,a.value 2from v$sesstat a, v$sysstat b 3where b.statistic#=a.statistic# 4and (b.name ='redo size' or b.name = 'undo change vector size') 5and sid = 137; NAME VALUE -- redo size 173228 undo change
RES: [oracle_br] Re: É possivel dropar usuario sem gerar logs na tabela de undo ?
Colega, primeiro de tudo TENHO que observar que DROP de schema é uma operação que DEVERIA SER RARA, se vc está fazendo com frequência a sua lógica é meio questionável - entre outras razões, isso INVALIDA SQLs, não permitindo re-uso de cache, é faz uma porrada de I/Os... Muito bem, isso dito, veja lá que COMO EU DISSE, absolutamente ** não tem como ** vc não gerar redo log/undo para o DROP, como citei apenas ALGUMAS POUCAS operações o permitem, e DROP não é uma delas... Como eu disse também, além da questão de redo/undo, há OUTRAS operações que o DROP de um schema tem que fazer (tal como checks de constraints e quetais), SE vc (como eu disse) as fazer manualmente pode ser que obtenha ganho... Um exemplo : == crio dois schemas similares s...@o10gr2:SQL create user user1 identified by user1; Usuário criado. s...@o10gr2:SQL create user user2 identified by user2; Usuário criado. s...@o10gr2:SQL grant connect, resource to user1; Concessão bem-sucedida. s...@o10gr2:SQL grant connect, resource to user2; Concessão bem-sucedida. s...@o10gr2:SQLgrant select on sys.v_$session to user1; Concessão bem-sucedida. s...@o10gr2:SQLgrant select on sys.v_$session to user2; Concessão bem-sucedida. == populo o schema user1 com tabelas, constraints, índices us...@o10gr2:SQLcreate sequence seque1; Seqüência criada. us...@o10gr2:SQLcreate table TAB_PAI_1 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLcreate table TAB_FILHA_1 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLBEGIN 2 for i in 1..15 loop 3 insert /*+ APPEND */ into TAB_PAI_1 (select seque1.nextval, d.* from all_objects d); 4 commit; 5 end loop; 6 END; 7 / Procedimento PL/SQL concluído com sucesso. us...@o10gr2:SQLinsert /*+ APPEND */ into TAB_FILHA_1 (select * from TAB_PAI_1); 617685 linhas criadas. us...@o10gr2:SQLcommit; Commit concluído. us...@o10gr2:SQLalter table TAB_PAI_1 add constraint TAB_PAI_1_PK primary key (CODIGO) novalidate; Tabela alterada. us...@o10gr2:SQLalter table TAB_FILHA_1 add constraint TAB_FILHA_1_FK foreign key (codigo) references TAB_PAI_1(codigo) novalidate; Tabela alterada. us...@o10gr2:SQLdisc; Desconectado de Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production == populo o schema user2 de maneira similar : us...@o10gr2:SQLcreate sequence seque2; Seqüência criada. us...@o10gr2:SQLcreate table TAB_PAI_2 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLcreate table TAB_FILHA_2 nologging as (select 0 codigo, d.* from all_objects d where 1=2); Tabela criada. us...@o10gr2:SQLBEGIN 2 for i in 1..15 loop 3 insert /*+ APPEND */ into TAB_PAI_2 (select seque2.nextval, d.* from all_objects d); 4 commit; 5 end loop; 6 END; 7 / Procedimento PL/SQL concluído com sucesso. us...@o10gr2:SQLinsert /*+ APPEND */ into TAB_FILHA_2 (select * from TAB_PAI_2); 617685 linhas criadas. us...@o10gr2:SQLcommit; Commit concluído. us...@o10gr2:SQLalter table TAB_PAI_2 add constraint TAB_PAI_2_PK primary key (CODIGO) novalidate; Tabela alterada. us...@o10gr2:SQLalter table TAB_FILHA_2 add constraint TAB_FILHA_2_FK foreign key (codigo) references TAB_PAI_2(codigo) novalidate; Tabela alterada. us...@o10gr2:SQLdisc; Desconectado de Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production === dropo o schema user1 diretamente : us...@o10gr2:SQLconn system/ora...@o10gr2 Conectado. Sessão alterada. sys...@o10gr2:SQLselect sid from v$session where audsid=userenv('sessionid'); SID 137 sys...@o10gr2:SQLset timing on sys...@o10gr2:SQLdrop user user1 cascade; Usuário eliminado. Decorrido: 00:00:07.61 == vejo quanto gerou de undo/redo s...@o10gr2:SQLselect name,a.value 2from v$sesstat a, v$sysstat b 3where b.statistic#=a.statistic# 4and (b.name ='redo size' or b.name = 'undo change vector size') 5and sid = 137; NAME VALUE -- redo size 173228 undo change vector size 47420 == agora vou pedir DROP com PURGE , remover constraints sem validar, antes de remover o schema... us...@o10gr2:SQLconn user2/us...@o10gr2 Conectado. Sessão alterada. us...@o10gr2:SQLselect sid from v$session where audsid=userenv('sessionid'); SID 145 us...@o10gr2:SQLset timing on us...@o10gr2:SQLalter table TAB_FILHA_2 disable constraint TAB_FILHA_2_FK; Tabela alterada. Decorrido: 00:00:00.06 us...@o10gr2:SQLalter table TAB_PAI_2 disable constraint TAB_PAI_2_PK; Tabela alterada. Decorrido: 00:00:00.17 us...@o10gr2:SQLalter table TAB_FILHA_2 drop constraint TAB_FILHA_2_FK; Tabela