Re: [oracle_br] Re: Função de código s equencial SEM deixar numero vago 1 3 4 5 6
Galera, creio que assim seja mais fácil: -- SELECIONANDO O PRIMEIRO CODIGO VALIDO select nvl(min(codigo),0)+1 from sequencia where (codigo+1) not in (select codigo from sequencia); Att, Edison Eduardo. Gabriel Herdt [EMAIL PROTECTED] escreveu: Eu concordo com vocês. acho besteira ter que preencher números vagos. Mas não tem meios de convence o chefe hehehe. Uma solução é colocar sequence já que essa tabela tem um alto volume de dados. e assim nao precisar preencher os numeros vagos. Mas a solução ótima seria preencher os vagos rápido :D resumindo: é importante sim. não uso sequence porque preciso preencher números vagos(delatados) --- Em oracle_br@yahoogrupos.com.br, Andre Santos [EMAIL PROTECTED] escreveu Gabriel Pegando carona na pergunta do Roberto... é tão importante assim não deixar números vagos na seqüência? [ ] André Em 28/11/07, Roberto Amorim [EMAIL PROTECTED] escreveu: Pode parecer ingenuidade minha, mas, porque não usar o sequence? Gabriel Herdt escreveu: Pessoal to com um problema. Fiz essa função no meu oracle 10g enteprise. em que ele faz um sequence do campo x e da tabela x. A função atende muito bem ate um certo numero de dados na tabela depois fica muito lento(20.000 registros +). O que posso fazer para otimizar a rotina? Objetivo dela é fazer seqüencia, e no caso de algum código for detetado. o próximo cadastrado assuma seu lugar. FUNCTION FN_NVAGO ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela pr_texto OUT varchar2) -- Paramentro de saida msg de erro RETURN NUMBER IS ln_cont NUMBER;-- variavel de retorno informando o menor buraco na sequencia ln_tam NUMBER; -- variavel informando o maior numero da sequencia i NUMBER; -- contador do loop BEGIN pr_texto := ''; --SQL PARA vereficar maior numero da sequencia do campo e tabela infomado por parametro EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB into ln_tam; if ln_tam is null then Return 1; end if; --For de 1 ate numero maximo de sequencia FOR i IN 1..ln_tam LOOP -- select para localizar buracos na sequencia e informar menor numero faltando na seq EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||' Where '||pn_nomeCAM||' = '||i into ln_cont; IF ln_cont = 0 THEN RETURN i; EXIT; END IF; END LOOP; If ln_cont = 1 THEN -- se nao achar nada pega o maior numero de sequencia e somar mais 1 return ln_tam+1; end if; EXCEPTION WHEN OTHERS THEN ROLLBACK; pr_texto := 'Erro -3000 : Erro ao gerar sequencia'; DBMS_OUTPUT.put_line (SUBSTR ('Error ' || TO_CHAR (SQLCODE) || ': ' || SQLERRM, 1, 255)); END; Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- 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] - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: RES: [oracle_br] Re: Função de cód igo sequencial SEM deixar numero vago 1 3
Dae Gabriel, que tal utilizar deste jeito, acho que vai funcionar: -- -- CRIANDO A TABELA TESTE - create table sequencia (codigo number); / --- -- INSERINDO 50 REGISTROS NA TABELA --- declare v_codigo number; begin loop v_codigo := nvl(v_codigo,0) + 1; insert into sequencia values(v_codigo); exit when v_codigo 49; end loop; end; / commit; / --- -- EXCLUÍNDO ALGUNS REGISTROS --- delete from sequencia where codigo in (3,25,33,40); / commit; / -- SELECIONANDO O PRIMEIRO CODIGO VALIDO select nvl(min(codigo),0)+1 from sequencia where (codigo+1) not in (select codigo from sequencia); Att, Edison Eduardo Metido a DBA. :) Gabriel Herdt [EMAIL PROTECTED] escreveu: é assim: Código - Descrição 1 - margarida 2 - paulinha 3 - fernanda 4 - Jussara 5 - Camila Vamos supor que eu tenha essas 5 mulheres cadastradas. EU apague a paulinha: 1 - margarida 3 - fernanda 4 - Jussara 5 - Camila Ao Inserir uma nova mulher que se chama-ra michela deve assumir o local da paulinha 1 - margarida 2 - Michela 3 - fernanda 4 - Jussara 5 - Camila Se depois inserir outra vai cair no código 6 caso nao tenha nenhum vago, sequencial cheio. --- Em oracle_br@yahoogrupos.com.br, HENRIQUIS Milton [EMAIL PROTECTED] escreveu Eu estou procurando uma solução bem mais simples que isso por aqui... Porém, preciso antes que o colega me responda o seguinte: Vamos supor que v c tenha 10 registros, campo chave de 1 a 10. Se o registro 5 for apagado, vc quer que IMEDIATAMENTE o 6 assuma o lugar do 5, o 7 assuma o lugar do 6, e assim por diante até o final dos registros? Ou pode ficar vago o registro 5 até uma nova inserção, e então essa inserção usar essa chave 5? Milton Bastos Henriquis Junior Oracle Database Administrator -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Roberto Amorim Enviada em: quarta-feira, 28 de novembro de 2007 11:42 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Re: Função de código sequencial SEM deixar numero vago 1 3 4 5 6 Uma excelente idéia. Torna o registro usável novamente. Melhor que a minha por sinal. Mas, e sobre acessos concorrentes? Eduardo de Paula escreveu: Já pensou em criar um campo chamado de vago e depois fazer um select para ver quais campos estão marcados como vagos... senão crie mais uma linha... On Nov 28, 2007 11:26 AM, Gabriel Herdt [EMAIL PROTECTED] mailto:gabrielherdt%40gmail.com wrote: Eu concordo com vocês. acho besteira ter que preencher números vagos. Mas não tem meios de convence o chefe hehehe. Uma solução é colocar sequence já que essa tabela tem um alto volume de dados. e assim nao precisar preencher os numeros vagos. Mas a solução ótima seria preencher os vagos rápido :D resumindo: é importante sim. não uso sequence porque preciso preencher números vagos(delatados) --- Em oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Andre Santos andre.psantos.ti@ escreveu Gabriel Pegando carona na pergunta do Roberto... é tão importante assim não deixar números vagos na seqüência? [ ] André Em 28/11/07, Roberto Amorim roberto@ escreveu: Pode parecer ingenuidade minha, mas, porque não usar o sequence? Gabriel Herdt escreveu: Pessoal to com um problema. Fiz essa função no meu oracle 10g enteprise. em que ele faz um sequence do campo x e da tabela x. A função atende muito bem ate um certo numero de dados na tabela depois fica muito lento(20.000 registros +). O que posso fazer para otimizar a rotina? Objetivo dela é fazer seqüencia, e no caso de algum código for detetado. o próximo cadastrado assuma seu lugar. FUNCTION FN_NVAGO ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela pr_texto OUT varchar2) -- Paramentro de saida msg de erro RETURN NUMBER IS ln_cont NUMBER;-- variavel de retorno informando o menor buraco na sequencia ln_tam NUMBER; -- variavel informando o maior numero da sequencia i NUMBER; -- contador do loop BEGIN pr_texto := ''; --SQL PARA vereficar maior numero da sequencia do campo e tabela infomado por parametro EXECUTE IMMEDIATE 'Select Max('||pn_nomeCAM||') FROM '||pn_nomeTAB into ln_tam; if ln_tam is null then Return 1; end if; --For de 1 ate numero maximo de sequencia FOR i IN 1..ln_tam LOOP -- select para localizar buracos na sequencia e informar menor numero faltando na seq EXECUTE IMMEDIATE 'Select count('||i||') From '||pn_nomeTab||' Where '||pn_nomeCAM||' = '||i into
RE: RES: RES: [oracle_br] Material de Certif icação (OFF TOPIC)
Tambem quero, please [EMAIL PROTECTED] JC -Mensagem original- De: oracle_br@yahoogrupos.com.br em nome de Lo Bello Enviada: ter 04-12-2007 12:24 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) me too... [EMAIL PROTECTED] vlw - Original Message - From: Aline Dayany Lemos To: oracle_br@yahoogrupos.com.br Sent: Saturday, December 01, 2007 11:50 AM Subject: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) Nosssa, eu tb quero... [EMAIL PROTECTED] obrigado! Em 01/12/07, dba.breno [EMAIL PROTECTED] escreveu: Eu tb quero o material por favor Marcus. [EMAIL PROTECTED] dba.breno%40yahoo.com.br --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Rodolfo Simões [EMAIL PROTECTED] escreveu Boa Tarde Marcus, Tenho interesse também, no material da Oracle, se possível me envie por e-mail ou me informe como seria a melhor maneira para você disponibilizar este material. Atenciosamente, Rodolfo Mascarenhas Simões -- Aline Dayany de Lemos :) Nossa maior fraqueza está em desistir. O caminho mais certo de vencer é tentar mais de uma vez Thomas Edson [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]
Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC)
Nosssa, eu tb quero... [EMAIL PROTECTED] obrigado! Em 01/12/07, dba.breno [EMAIL PROTECTED] escreveu: Eu tb quero o material por favor Marcus. [EMAIL PROTECTED] dba.breno%40yahoo.com.br --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Rodolfo Simões [EMAIL PROTECTED] escreveu Boa Tarde Marcus, Tenho interesse também, no material da Oracle, se possível me envie por e-mail ou me informe como seria a melhor maneira para você disponibilizar este material. Atenciosamente, Rodolfo Mascarenhas Simões -- Aline Dayany de Lemos :) Nossa maior fraqueza está em desistir. O caminho mais certo de vencer é tentar mais de uma vez Thomas Edson [As partes desta mensagem que não continham texto foram removidas]
Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC)
Prezado colega, Se não for pedir muito, gostaria também de merecer esta sua ajuda enviando-me este material. Ficarei imensamente agradecido. Meu e-mail é: [EMAIL PROTECTED] Obrigado, Edson --- Em oracle_br@yahoogrupos.com.br, jose.rodrigues [EMAIL PROTECTED] escreveu Tambem quero, please [EMAIL PROTECTED] JC -Mensagem original- De: oracle_br@yahoogrupos.com.br em nome de Lo Bello Enviada: ter 04-12-2007 12:24 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) me too... [EMAIL PROTECTED] vlw - Original Message - From: Aline Dayany Lemos To: oracle_br@yahoogrupos.com.br Sent: Saturday, December 01, 2007 11:50 AM Subject: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) Nosssa, eu tb quero... [EMAIL PROTECTED] obrigado! Em 01/12/07, dba.breno [EMAIL PROTECTED] escreveu: Eu tb quero o material por favor Marcus. [EMAIL PROTECTED] dba.breno%40yahoo.com.br --- Em oracle_br@yahoogrupos.com.br oracle_br% 40yahoogrupos.com.br, Rodolfo Simões rodolfosimoes@ escreveu Boa Tarde Marcus, Tenho interesse também, no material da Oracle, se possível me envie por e-mail ou me informe como seria a melhor maneira para você disponibilizar este material. Atenciosamente, Rodolfo Mascarenhas Simões -- Aline Dayany de Lemos :) Nossa maior fraqueza está em desistir. O caminho mais certo de vencer é tentar mais de uma vez Thomas Edson [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]
Re: [oracle_br] Material de certificação
Caro Marcus, Já realizei o acesso e peguei o material, valeu mesmo! Abração, Rodolfo Mascarenhas Simões
Re: RES: RES: [oracle_br] Material de Certificaç ão (OFF TOPIC)
me too... [EMAIL PROTECTED] vlw - Original Message - From: Aline Dayany Lemos To: oracle_br@yahoogrupos.com.br Sent: Saturday, December 01, 2007 11:50 AM Subject: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) Nosssa, eu tb quero... [EMAIL PROTECTED] obrigado! Em 01/12/07, dba.breno [EMAIL PROTECTED] escreveu: Eu tb quero o material por favor Marcus. [EMAIL PROTECTED] dba.breno%40yahoo.com.br --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Rodolfo Simões [EMAIL PROTECTED] escreveu Boa Tarde Marcus, Tenho interesse também, no material da Oracle, se possível me envie por e-mail ou me informe como seria a melhor maneira para você disponibilizar este material. Atenciosamente, Rodolfo Mascarenhas Simões -- Aline Dayany de Lemos :) Nossa maior fraqueza está em desistir. O caminho mais certo de vencer é tentar mais de uma vez Thomas Edson [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] Material de Certifica ção (OFF TOPIC)
Pessoal, vamos prestar atenção ao que acontece na lista. Tudo bem, querer ajudar e serem ajudados com qualquer tipo de material, prestem pelo menos atenção aos tópicos pois daqui a pouco vão chover e-mails do tipo Eu também quero Sugiro a todos que quiserem disponibilizar algo, que façam seguindo o exemplo destes dois colegas, colocando no www.4shared.com http://www.4shared.com/ e então enviem e-mail para lista com o link. O Marcos Vinícius e o Bruno Lorenzini já disponibilizaram o material no site www.4shared.com http://www.4shared.com/ O link é o seguinte: http://br-oracle-ocp.4shared.com/ http://br-oracle-ocp.4shared.com/ Até mais _ De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de edson.amorim2007 Enviada em: terça-feira, 4 de dezembro de 2007 10:41 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) Prezado colega, Se não for pedir muito, gostaria também de merecer esta sua ajuda enviando-me este material. Ficarei imensamente agradecido. Meu e-mail é: mailto:[EMAIL PROTECTED] [EMAIL PROTECTED] Obrigado, Edson --- Em mailto:oracle_br%40yahoogrupos.com.br oracle_br@yahoogrupos.com.br, jose.rodrigues [EMAIL PROTECTED] escreveu Tambem quero, please [EMAIL PROTECTED] JC -Mensagem original- De: [EMAIL PROTECTED] mailto:oracle_br%40yahoogrupos.com.br os.com.br em nome de Lo Bello Enviada: ter 04-12-2007 12:24 Para: [EMAIL PROTECTED] mailto:oracle_br%40yahoogrupos.com.br os.com.br Assunto: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) me too... [EMAIL PROTECTED] vlw - Original Message - From: Aline Dayany Lemos To: [EMAIL PROTECTED] mailto:oracle_br%40yahoogrupos.com.br os.com.br Sent: Saturday, December 01, 2007 11:50 AM Subject: Re: RES: RES: [oracle_br] Material de Certificação (OFF TOPIC) Nosssa, eu tb quero... [EMAIL PROTECTED] obrigado! Em 01/12/07, dba.breno [EMAIL PROTECTED] escreveu: Eu tb quero o material por favor Marcus. [EMAIL PROTECTED] dba.breno%40yahoo.com.br --- Em [EMAIL PROTECTED] mailto:oracle_br%40yahoogrupos.com.br os.com.br oracle_br% 40yahoogrupos.com.br, Rodolfo Simões rodolfosimoes@ escreveu Boa Tarde Marcus, Tenho interesse também, no material da Oracle, se possível me envie por e-mail ou me informe como seria a melhor maneira para você disponibilizar este material. Atenciosamente, Rodolfo Mascarenhas Simões -- Aline Dayany de Lemos :) Nossa maior fraqueza está em desistir. O caminho mais certo de vencer é tentar mais de uma vez Thomas Edson [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]
Re: RES: [oracle_br] Re: Função de código sequencial SEM deixar numero vago 1 3
Edison Matou, heim! Muito bom! [ ] André Em 01/12/07, Edison Eduardo Bonomi [EMAIL PROTECTED] escreveu: Dae Gabriel, que tal utilizar deste jeito, acho que vai funcionar: -- -- CRIANDO A TABELA TESTE - create table sequencia (codigo number); / --- -- INSERINDO 50 REGISTROS NA TABELA --- declare v_codigo number; begin loop v_codigo := nvl(v_codigo,0) + 1; insert into sequencia values(v_codigo); exit when v_codigo 49; end loop; end; / commit; / --- -- EXCLUÍNDO ALGUNS REGISTROS --- delete from sequencia where codigo in (3,25,33,40); / commit; / -- SELECIONANDO O PRIMEIRO CODIGO VALIDO select nvl(min(codigo),0)+1 from sequencia where (codigo+1) not in (select codigo from sequencia); Att, Edison Eduardo Metido a DBA. :) Gabriel Herdt [EMAIL PROTECTED] gabrielherdt%40gmail.com escreveu: é assim: Código - Descrição 1 - margarida 2 - paulinha 3 - fernanda 4 - Jussara 5 - Camila Vamos supor que eu tenha essas 5 mulheres cadastradas. EU apague a paulinha: 1 - margarida 3 - fernanda 4 - Jussara 5 - Camila Ao Inserir uma nova mulher que se chama-ra michela deve assumir o local da paulinha 1 - margarida 2 - Michela 3 - fernanda 4 - Jussara 5 - Camila Se depois inserir outra vai cair no código 6 caso nao tenha nenhum vago, sequencial cheio. --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, HENRIQUIS Milton [EMAIL PROTECTED] escreveu Eu estou procurando uma solução bem mais simples que isso por aqui... Porém, preciso antes que o colega me responda o seguinte: Vamos supor que v c tenha 10 registros, campo chave de 1 a 10. Se o registro 5 for apagado, vc quer que IMEDIATAMENTE o 6 assuma o lugar do 5, o 7 assuma o lugar do 6, e assim por diante até o final dos registros? Ou pode ficar vago o registro 5 até uma nova inserção, e então essa inserção usar essa chave 5? Milton Bastos Henriquis Junior Oracle Database Administrator -Mensagem original- De: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br] Em nome de Roberto Amorim Enviada em: quarta-feira, 28 de novembro de 2007 11:42 Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] Re: Função de código sequencial SEM deixar numero vago 1 3 4 5 6 Uma excelente idéia. Torna o registro usável novamente. Melhor que a minha por sinal. Mas, e sobre acessos concorrentes? Eduardo de Paula escreveu: Já pensou em criar um campo chamado de vago e depois fazer um select para ver quais campos estão marcados como vagos... senão crie mais uma linha... On Nov 28, 2007 11:26 AM, Gabriel Herdt [EMAIL PROTECTED] mailto:gabrielherdt%40gmail.com wrote: Eu concordo com vocês. acho besteira ter que preencher números vagos. Mas não tem meios de convence o chefe hehehe. Uma solução é colocar sequence já que essa tabela tem um alto volume de dados. e assim nao precisar preencher os numeros vagos. Mas a solução ótima seria preencher os vagos rápido :D resumindo: é importante sim. não uso sequence porque preciso preencher números vagos(delatados) --- Em oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br oracle_br%40yahoogrupos.com.br, Andre Santos andre.psantos.ti@ escreveu Gabriel Pegando carona na pergunta do Roberto... é tão importante assim não deixar números vagos na seqüência? [ ] André Em 28/11/07, Roberto Amorim roberto@ escreveu: Pode parecer ingenuidade minha, mas, porque não usar o sequence? Gabriel Herdt escreveu: Pessoal to com um problema. Fiz essa função no meu oracle 10g enteprise. em que ele faz um sequence do campo x e da tabela x. A função atende muito bem ate um certo numero de dados na tabela depois fica muito lento(20.000 registros +). O que posso fazer para otimizar a rotina? Objetivo dela é fazer seqüencia, e no caso de algum código for detetado. o próximo cadastrado assuma seu lugar. FUNCTION FN_NVAGO ( pn_nomeCAM IN VARCHAR2,-- parametro Nome do campo pn_nomeTab IN VARCHAR2,-- parametro Nome da Tabela pr_texto OUT varchar2) -- Paramentro de saida msg de erro RETURN NUMBER IS ln_cont NUMBER;-- variavel de retorno informando o menor buraco na sequencia ln_tam NUMBER; -- variavel informando o maior numero da sequencia i NUMBER; -- contador do loop BEGIN pr_texto := ''; --SQL PARA vereficar maior numero da sequencia do campo e tabela infomado por parametro EXECUTE IMMEDIATE 'Select
[oracle_br] OWB
Pessoal, Alguem teria algum material de OWB Abs.. [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] OWB
Tem um material la no site da OTN. É o único que eu conheço. Se alguém tiver + alguém, por favor, coloca la no 4shared (http://br-oracle-ocp.4shared.com/) que eu também vou querer! :D Abs, _ De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Rafael Milanez Enviada em: terça-feira, 4 de dezembro de 2007 10:55 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] OWB Pessoal, Alguem teria algum material de OWB Abs.. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Exportação e Importação de Dados
Bom dia! Temos dois bancos aqui com a seguinte configuração: Windows (XP) Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE10.1.0.2.0 Production TNS for 32-bit Windows: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Linux (Oracle Linux) Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod PL/SQL Release 10.2.0.1.0 - Production CORE10.2.0.1.0 Production TNS for Linux: Version 10.2.0.1.0 - Production NLSRTL Version 10.2.0.1.0 - Production Tivemos que recriar alguns usuários e suas tablespaces existentes no db em Linux para o db em Windows, estes usuários funcionam da seguinte forma, um usuário é dono das tabels, views e etc, enquanto outro relacionado a ele possui vários sinônimos para os objetos do usuário anterior e alguns objetos próprios. Após realizamos os exports dos usuários do Linux e começamos as operações de import no Windows, ao finalizar todas as operações e verificarmos os usuários e seus objetos, constatamos que alguns usuários estavam com objetos faltando, verificando o log das operações vi que os erros apresentados são todo em relação a estatísticas (entrada de valor inválido). Minhas dúvidas são: Devido ao erro de entrada de dados nas estatísticas de algumas tabelas, estas não foram importadas? A diferença de entre as versões pode ter algum relacionamento com a não importação de alguma tabela, devido a sintaxe e comandos utilizados? Obs.: O import foi feito seguindo a ordem dos usuários, primeiro os donos dos objetos e depois o usuário que o espelha. Sintaxe do Import: imp system/ file=\arquivo.dmp log=\arquivo.log rows=y ignore=y fromuser=usuario touser=usuario exp system/ file=\arquivo.dmp log=\arquivo.log rows=y owner=(usuario,usuario1,usuario2...) - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importaçã o de Dados
Sendo 10g as versões de ambos os bancos, por que você não utiliza o data_pump? Basta informar a versão no comando. Não deveria ocorrer erro em virtude de estatísticas. Não há nenhuma atribuição relacionada a roles? O user dono das tabelas concede grants p/ algumas roles que o user viewer recebe? Isso é bem comum acontecer. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Bom dia! Temos dois bancos aqui com a seguinte configuração: Windows (XP) Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for 32-bit Windows: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Linux (Oracle Linux) Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod PL/SQL Release 10.2.0.1.0 - Production CORE 10.2.0.1.0 Production TNS for Linux: Version 10.2.0.1.0 - Production NLSRTL Version 10.2.0.1.0 - Production Tivemos que recriar alguns usuários e suas tablespaces existentes no db em Linux para o db em Windows, estes usuários funcionam da seguinte forma, um usuário é dono das tabels, views e etc, enquanto outro relacionado a ele possui vários sinônimos para os objetos do usuário anterior e alguns objetos próprios. Após realizamos os exports dos usuários do Linux e começamos as operações de import no Windows, ao finalizar todas as operações e verificarmos os usuários e seus objetos, constatamos que alguns usuários estavam com objetos faltando, verificando o log das operações vi que os erros apresentados são todo em relação a estatísticas (entrada de valor inválido). Minhas dúvidas são: Devido ao erro de entrada de dados nas estatísticas de algumas tabelas, estas não foram importadas? A diferença de entre as versões pode ter algum relacionamento com a não importação de alguma tabela, devido a sintaxe e comandos utilizados? Obs.: O import foi feito seguindo a ordem dos usuários, primeiro os donos dos objetos e depois o usuário que o espelha. Sintaxe do Import: imp system/ file=\arquivo.dmp log=\arquivo.log rows=y ignore=y fromuser=usuario touser=usuario exp system/ file=\arquivo.dmp log=\arquivo.log rows=y owner=(usuario,usuario1,usuario2...)
Re: [oracle_br] Exportação e Importação de Dados
Vou repetir o procedimento usando o data_pump. e sobre os direitos, o user dono da direitos ao user viewer a alguns de seus objetos. rflribeiro [EMAIL PROTECTED] escreveu: Sendo 10g as versões de ambos os bancos, por que você não utiliza o data_pump? Basta informar a versão no comando. Não deveria ocorrer erro em virtude de estatísticas. Não há nenhuma atribuição relacionada a roles? O user dono das tabelas concede grants p/ algumas roles que o user viewer recebe? Isso é bem comum acontecer. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Bom dia! Temos dois bancos aqui com a seguinte configuração: Windows (XP) Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for 32-bit Windows: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Linux (Oracle Linux) Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod PL/SQL Release 10.2.0.1.0 - Production CORE 10.2.0.1.0 Production TNS for Linux: Version 10.2.0.1.0 - Production NLSRTL Version 10.2.0.1.0 - Production Tivemos que recriar alguns usuários e suas tablespaces existentes no db em Linux para o db em Windows, estes usuários funcionam da seguinte forma, um usuário é dono das tabels, views e etc, enquanto outro relacionado a ele possui vários sinônimos para os objetos do usuário anterior e alguns objetos próprios. Após realizamos os exports dos usuários do Linux e começamos as operações de import no Windows, ao finalizar todas as operações e verificarmos os usuários e seus objetos, constatamos que alguns usuários estavam com objetos faltando, verificando o log das operações vi que os erros apresentados são todo em relação a estatísticas (entrada de valor inválido). Minhas dúvidas são: Devido ao erro de entrada de dados nas estatísticas de algumas tabelas, estas não foram importadas? A diferença de entre as versões pode ter algum relacionamento com a não importação de alguma tabela, devido a sintaxe e comandos utilizados? Obs.: O import foi feito seguindo a ordem dos usuários, primeiro os donos dos objetos e depois o usuário que o espelha. Sintaxe do Import: imp system/ file=\arquivo.dmp log=\arquivo.log rows=y ignore=y fromuser=usuario touser=usuario exp system/ file=\arquivo.dmp log=\arquivo.log rows=y owner=(usuario,usuario1,usuario2...) Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importaçã o de Dados
Neste caso, acompanhando seu raciocínio, você informa que importa primeiro o user owner dos objetos. Neste caso, importando também os grants, o user tenta dar grant diretamente ao user viewer ou a alguma role logo após a criação do objeto e não vai conseguir, porque o user viewer não existe ainda, ou a role, se for o caso. Quando da importação do user viewer ele tenta criar views, por exemplo, acessando uma table à qual ele não tem permissão de leitura, concorda? Verifique se é este seu caso. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Vou repetir o procedimento usando o data_pump. e sobre os direitos, o user dono da direitos ao user viewer a alguns de seus objetos. rflribeiro [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br escreveu: Sendo 10g as versões de ambos os bancos, por que você não utiliza o data_pump? Basta informar a versão no comando. Não deveria ocorrer erro em virtude de estatísticas. Não há nenhuma atribuição relacionada a roles? O user dono das tabelas concede grants p/ algumas roles que o user viewer recebe? Isso é bem comum acontecer. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br site: www.dbcom.com.br Carlos Henrique Correa wrote: Bom dia! Temos dois bancos aqui com a seguinte configuração: Windows (XP) Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for 32-bit Windows: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Linux (Oracle Linux) Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod PL/SQL Release 10.2.0.1.0 - Production CORE 10.2.0.1.0 Production TNS for Linux: Version 10.2.0.1.0 - Production NLSRTL Version 10.2.0.1.0 - Production Tivemos que recriar alguns usuários e suas tablespaces existentes no db em Linux para o db em Windows, estes usuários funcionam da seguinte forma, um usuário é dono das tabels, views e etc, enquanto outro relacionado a ele possui vários sinônimos para os objetos do usuário anterior e alguns objetos próprios. Após realizamos os exports dos usuários do Linux e começamos as operações de import no Windows, ao finalizar todas as operações e verificarmos os usuários e seus objetos, constatamos que alguns usuários estavam com objetos faltando, verificando o log das operações vi que os erros apresentados são todo em relação a estatísticas (entrada de valor inválido). Minhas dúvidas são: Devido ao erro de entrada de dados nas estatísticas de algumas tabelas, estas não foram importadas? A diferença de entre as versões pode ter algum relacionamento com a não importação de alguma tabela, devido a sintaxe e comandos utilizados? Obs.: O import foi feito seguindo a ordem dos usuários, primeiro os donos dos objetos e depois o usuário que o espelha. Sintaxe do Import: imp system/ file=\arquivo.dmp log=\arquivo.log rows=y ignore=y fromuser=usuario touser=usuario exp system/ file=\arquivo.dmp log=\arquivo.log rows=y owner=(usuario,usuario1,usuario2...)
Re: [oracle_br] DDL massiva em OLTP
Alisson, O Termo mais comum é ETL (Extração, Transformação e Carga), é um termo muito usado em DW e BI, geralmente este processo de ETL é usado para carregar modelos dimensionais que são usados para extração de dados via ferramentas OLAP. Atenciosamente, Edson Almeida Jr msn: [EMAIL PROTECTED] [EMAIL PROTECTED] Visite www.consulting.com.br Alisson Não conhecia esse conceito de ELT. Então não posso ter opinião formada, sem estudar melhor. Porém podemos trocar idéias, pensando em conceitos básicos. Para se dizer se algo **não** é indicado para um BD OLTP, neste caso, seria necessário saber se é um sistema crítico, se já possui processamento intensivo (ou se há folga de processamento), etc. Ou seja, acho que a resposta não é tão direta assim. Há outros aspectos a considerar. Um DBA experiente (não sou DBA) poderia detalhar melhor o impacto das DDL's massivas. Na realidade, um SGBD/servidor pode até suportar isso... mas nenhum SGBD foi concebido (pensado) para isso (tanto faz ser OLTP ou OLAP). Tradicionalmente, num BD você tem as estruturas prontas e manipula os conteúdos... tabelas temporárias/auxiliares (via DDL) seriam/são exceção. Mas pode ser que em certos casos, ELT seja uma boa opção... Você mencionou o Oracle Data Integrator --- talvez pensando em integração seja interessante (estou considerando em carga de dados contínua, mas em doses homeopáticas). Num servidor com sistemas críticos e muito exigidos, eu deixaria qualquer coisa que gere impacto considerável de processamento (e não faça parte diretamente das regras do sistema) em um servidor separado. Pelo que vi, um dos apelos do ELT é ser mais econômico (por afirmarem que não requer um servidor separado)... mas quem põe a mão no fogo? Ou dizer que é uma boa solução para qualquer necessidade de DW/BI? Achei uns links que parecem interessantes, mas ainda não tive tempo de ler... de qualquer forma, repasso: http://blogs.informatica.com/enterprise_data_management/2007/07/what_is_elt.html#more http://blogs.informatica.com/enterprise_data_management/enterprise_data_management/technology/ [ ] André Em 27/11/07, Alisson Aguiar [EMAIL PROTECTED] escreveu: André, O processo não pode ser mudado, por que ele é gerenciado pela ferramenta (Oracle Data Integrator). Essa abordagem E-LT faz com que as cargas sejam extremamente rápidas, porém, há essa criação/drop massiva de objetos (tabelas, views, índices). O que eu estou procurando são insights que digam que a *** uso massivo de DDL não é indicado para bancos OLTP ***. Até agora, não achei nada, o que me leva a crer que não é uma restrição ... Abraco, Alisson Em 27/11/07, Andre Santos [EMAIL PROTECTED]andre.psantos.ti%40gmail.com escreveu: Alisson Mas esse processo não pode ser revisto? Isso não parece ser uma boa idéia... Pelo menos, consideraria o uso de GTT's. Outra coisa, não sei se entendi direito: o banco de destino dos dados é de um sistema OLTP de produção? As transformações (do processo ETL) são feitas nesse servidor? [ ] André Em 27/11/07, Alisson Aguiar [EMAIL PROTECTED] mralisson%40gmail.commralisson%40gmail.com escreveu: Isso ..!!! Em 23/11/07, Rafael G. Colvara [EMAIL PROTECTED]rafaelcolvara%40techne.com.br rafaelcolvara%40techne.com.br rafaelcolvara%40techne.com.br escreveu: mas os comandos são de create table e drop table ? Pois pelo que entendi o precedimento é de import/transform/export (de dados é logico). Se for isso, qual seriam os comandos DDL´s? a cada vez que o processo for disparado ele irá criar as tabelas no banco depois apaga-las? De: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.br em nome de Alisson Aguiar Enviada: sex 23/11/07 16:14 Para: oracle_br@yahoogrupos.com.br oracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.broracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] DDL massiva em OLTP André, Não são GTT's. São tabelas normais. Abraco, Alisson Em 23/11/07, Andre Santos [EMAIL PROTECTED]andre.psantos.ti%40gmail.com andre.psantos.ti%40gmail.com andre.psantos.ti%40gmail.com andre.psantos.ti%40gmail.commailto: andre.psantos.ti%40gmail.com escreveu: Alisson Em SQL, DDL's são comandos do tipo CREATE, ALTER, DROP (e mais alguns outros). No Oracle, uma tabela temporária (global temporary table - GTT) é criada e a estrutura (a tabela em si) permanece no banco. Os dados é que são temporários. Considerando isso, será que realmente seriam realizados os comandos DDL's como uma rotina do processo? Se entendi direito, acho que não. [ ] André Em
[oracle_br] Re: [oracle _br] MBA Sistemas de Gestão Empresarial - ERP - Oracle e-Business Suite®
Para o pessoal do Rio tem esta mesma Pós na Veiga de Almeida, mais informações no site www.uva.br Edson Almeida Jr Prof. de Banco de Dados - UVA Boa noite, Para vc que trabalha com o Oracle EBS, faço a indicação de uma nova pós da FIAP (SP) MBA Sistemas de Gestão Empresarial - ERP - Oracle e-Business Suite® Eu já fiz a matrícula (inicio em 2008), tenho certeza que o curso será excelente! Em caso de interesse, faça a inscrição lá no site da FIAP e se possível fale que é uma indicação minha (descontos) rs rs!!! Se for possível, coloque no final da Carta de explicação (na inscrição) que é uma indicação de Maurício Lachaitis da Silva Maiores informações : MBA - Sistemas de Gestão Empresarial - ERP - Oracle e-Business Suite http://www.fiap.com.br/portal/int_cda_conteudo.jsp?ID=150159canalID=356 Maurício Lachaitis da Silva [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importação de Dados
Exatamente Reginaldo. Quando importamos o dono ele tenta dar direitos ao Visitante e o visitante ao ser criado tenta acessar algo que não lhe é permitido ainda. Como posso proceder nesta situação no data_pump tem a cláusula schemas, posso usá-la escrevendo todos os schemas de uma vez para que a importação ocorra na sequencia correta, sem erros e falta de objetos. rflribeiro [EMAIL PROTECTED] escreveu: Neste caso, acompanhando seu raciocínio, você informa que importa primeiro o user owner dos objetos. Neste caso, importando também os grants, o user tenta dar grant diretamente ao user viewer ou a alguma role logo após a criação do objeto e não vai conseguir, porque o user viewer não existe ainda, ou a role, se for o caso. Quando da importação do user viewer ele tenta criar views, por exemplo, acessando uma table à qual ele não tem permissão de leitura, concorda? Verifique se é este seu caso. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Vou repetir o procedimento usando o data_pump. e sobre os direitos, o user dono da direitos ao user viewer a alguns de seus objetos. rflribeiro escreveu: Sendo 10g as versões de ambos os bancos, por que você não utiliza o data_pump? Basta informar a versão no comando. Não deveria ocorrer erro em virtude de estatísticas. Não há nenhuma atribuição relacionada a roles? O user dono das tabelas concede grants p/ algumas roles que o user viewer recebe? Isso é bem comum acontecer. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Bom dia! Temos dois bancos aqui com a seguinte configuração: Windows (XP) Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Prod PL/SQL Release 10.1.0.2.0 - Production CORE 10.1.0.2.0 Production TNS for 32-bit Windows: Version 10.1.0.2.0 - Production NLSRTL Version 10.1.0.2.0 - Production Linux (Oracle Linux) Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod PL/SQL Release 10.2.0.1.0 - Production CORE 10.2.0.1.0 Production TNS for Linux: Version 10.2.0.1.0 - Production NLSRTL Version 10.2.0.1.0 - Production Tivemos que recriar alguns usuários e suas tablespaces existentes no db em Linux para o db em Windows, estes usuários funcionam da seguinte forma, um usuário é dono das tabels, views e etc, enquanto outro relacionado a ele possui vários sinônimos para os objetos do usuário anterior e alguns objetos próprios. Após realizamos os exports dos usuários do Linux e começamos as operações de import no Windows, ao finalizar todas as operações e verificarmos os usuários e seus objetos, constatamos que alguns usuários estavam com objetos faltando, verificando o log das operações vi que os erros apresentados são todo em relação a estatísticas (entrada de valor inválido). Minhas dúvidas são: Devido ao erro de entrada de dados nas estatísticas de algumas tabelas, estas não foram importadas? A diferença de entre as versões pode ter algum relacionamento com a não importação de alguma tabela, devido a sintaxe e comandos utilizados? Obs.: O import foi feito seguindo a ordem dos usuários, primeiro os donos dos objetos e depois o usuário que o espelha. Sintaxe do Import: imp system/ file=\arquivo.dmp log=\arquivo.log rows=y ignore=y fromuser=usuario touser=usuario exp system/ file=\arquivo.dmp log=\arquivo.log rows=y owner=(usuario,usuario1,usuario2...) Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importaçã o de Dados
O problema neste caso não está relacionado ao exp/imp ou ao expdp/impdp. O caso é que você não está trabalhando corretamente com os usuários. Eu normalmente crio uma relação de usuários e roles a serem exportados antes de efetuar a exportação. Cada um trabalha de um jeito... Verificar no banco origem quais os tablespaces que o usuário tem quota. Criar os tablespaces no banco destino. Criar o usuário no banco destino. Criar os usuários e roles que precisam receber grants do usuário owner. Verificar que alguns roles podem ter senha. O script abaixo faz uma verificação do usuário owner e grants p/ usuários e roles. No entanto, não trata da parte de criação de tablespaces. Mas isso você pega facinho também na dba_ts_quotas. [EMAIL PROTECTED] begin 2for cUsuario in (select distinct u.name, 3 u.password, 4 d.default_tablespace 5 from user$ u, dba_users d 6 where u.type# = 1 7 and u.name = d.username) loop 8 dbms_output.put_line(''); 9 dbms_output.put_line('create user ' || cUsuario.name); 10 dbms_output.put_line('identified by values ''' || cUsuario.password || ); 11 dbms_output.put_line('default tablespace ' || cUsuario.default_tablespace); 12 dbms_output.put_line('temporary tablespace temp'); 13 dbms_output.put_line('quota unlimited on ' || cUsuario.default_tablespace); 14 dbms_output.put_line('quota unlimited on ' || replace(cUsuario.default_tablespace, 'DADO', 'INDICE')); 15 dbms_output.put_line('profile default account unlock;'); 16 dbms_output.put_line(''); 17 dbms_output.put_line('grant connect, resource to ' || cUsuario.name || ';'); 18 dbms_output.put_line(''); 19 for cRoles in (select distinct p.grantee, 20 decode(u.password, '', ' not identified;', ' identified by values ''' || u.password || ''';') password 21 from dba_tab_privs p, user$ u 22 where p.grantor = cUsuario.name 23 and u.name = p.grantee) loop 24dbms_output.put_line('create role ' || cRoles.grantee || cRoles.password); 25 end loop; 26 dbms_output.put_line(''); 27 dbms_output.put_line('-- - --'); 28end loop; 29 end; 30 / create user ADMINISTRATOR identified by values 'D91F53B5F30C5B90' default tablespace ITSUMARE_DADO temporary tablespace temp quota unlimited on ITSUMARE_DADO quota unlimited on ITSUMARE_INDICE profile default account unlock; grant connect, resource to ADMINISTRATOR; create role ADMINISTRATOR_USR_S not identified; create role ADMINISTRATOR_USR_SPIINTERFACE not identified; create role ADMINISTRATOR_USR_SPIM not identified; create role EDI identified by values '75EE8705419FB91A'; create role PUBLIC not identified; create role SPIINTERFACE identified by values '3FE4CF3E7427BE60'; create role SPIM identified by values '8CFDC5AAA9CC2083'; Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Exatamente Reginaldo. Quando importamos o dono ele tenta dar direitos ao Visitante e o visitante ao ser criado tenta acessar algo que não lhe é permitido ainda. Como posso proceder nesta situação no data_pump tem a cláusula schemas, posso usá-la escrevendo todos os schemas de uma vez para que a importação ocorra na sequencia correta, sem erros e falta de objetos. rflribeiro [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br escreveu: Neste caso, acompanhando seu raciocínio, você informa que importa primeiro o user owner dos objetos. Neste caso, importando também os grants, o user tenta dar grant diretamente ao user viewer ou a alguma role logo após a criação do objeto e não vai conseguir, porque o user viewer não existe ainda, ou a role, se for o caso. Quando da importação do user viewer ele tenta criar views, por exemplo, acessando uma table à qual ele não tem permissão de leitura, concorda? Verifique se é este seu caso. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br site: www.dbcom.com.br Carlos Henrique Correa wrote: Vou repetir o procedimento usando o data_pump. e sobre os direitos, o user dono da direitos ao user viewer a alguns de seus objetos. rflribeiro escreveu: Sendo 10g as versões de ambos os bancos, por que você não utiliza o
[oracle_br] ALERTAS NO FORMS
Galera, me ajudem com uma dúvida por favor... tenho o costume de mandar mensagens pro cliente da seguinte forma: SET_ALERT_PROPERTY('MSG',ALERT_MESSAGE_TEXT, 'DADO EXCLUÍDO COM SUCESSO!'); aparece na tela aquela telinha de OK e CANCELAR... queria enviar dois outros tipos de tela, 1 - que só tivesse o botão de OK 2 - que eu pudesse pôr opção de SIM e NÃO e descobrir a opção que o usuário optou. como faço isso?? alguém sabe??? vlw Rogério Virtual Soft Consultoria em Informática Ltda Rogério Barreto Lo Bello [EMAIL PROTECTED] (11) 3104-6594 - 3106-8682 [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importação de Dados
Vc tem razão mas aí esta a questão, todos os passos apontados por vc: verificar tablespaces, criar usuarios, etc, foram efetuados antes da importação ser efetuada. Estes usuários foram criados novamente no banco em Windows. Por isso não entendemos o que aconteceu para que alguns objetos (trigger, indexes, procedures, functions) não fossem migrados. Muitos destes objetos foram migrados mas alguns não. Por exemplo um dos usuários tem 1238 objetos e apenas 1046 foram importados. Obrigado pela ajuda. rflribeiro [EMAIL PROTECTED] escreveu: O problema neste caso não está relacionado ao exp/imp ou ao expdp/impdp. O caso é que você não está trabalhando corretamente com os usuários. Eu normalmente crio uma relação de usuários e roles a serem exportados antes de efetuar a exportação. Cada um trabalha de um jeito... Verificar no banco origem quais os tablespaces que o usuário tem quota. Criar os tablespaces no banco destino. Criar o usuário no banco destino. Criar os usuários e roles que precisam receber grants do usuário owner. Verificar que alguns roles podem ter senha. O script abaixo faz uma verificação do usuário owner e grants p/ usuários e roles. No entanto, não trata da parte de criação de tablespaces. Mas isso você pega facinho também na dba_ts_quotas. [EMAIL PROTECTED] begin 2 for cUsuario in (select distinct u.name, 3 u.password, 4 d.default_tablespace 5 from user$ u, dba_users d 6 where u.type# = 1 7 and u.name = d.username) loop 8 dbms_output.put_line(''); 9 dbms_output.put_line('create user ' || cUsuario.name); 10 dbms_output.put_line('identified by values ''' || cUsuario.password || ); 11 dbms_output.put_line('default tablespace ' || cUsuario.default_tablespace); 12 dbms_output.put_line('temporary tablespace temp'); 13 dbms_output.put_line('quota unlimited on ' || cUsuario.default_tablespace); 14 dbms_output.put_line('quota unlimited on ' || replace(cUsuario.default_tablespace, 'DADO', 'INDICE')); 15 dbms_output.put_line('profile default account unlock;'); 16 dbms_output.put_line(''); 17 dbms_output.put_line('grant connect, resource to ' || cUsuario.name || ';'); 18 dbms_output.put_line(''); 19 for cRoles in (select distinct p.grantee, 20 decode(u.password, '', ' not identified;', ' identified by values ''' || u.password || ''';') password 21 from dba_tab_privs p, user$ u 22 where p.grantor = cUsuario.name 23 and u.name = p.grantee) loop 24 dbms_output.put_line('create role ' || cRoles.grantee || cRoles.password); 25 end loop; 26 dbms_output.put_line(''); 27 dbms_output.put_line('-- - --'); 28 end loop; 29 end; 30 / create user ADMINISTRATOR identified by values 'D91F53B5F30C5B90' default tablespace ITSUMARE_DADO temporary tablespace temp quota unlimited on ITSUMARE_DADO quota unlimited on ITSUMARE_INDICE profile default account unlock; grant connect, resource to ADMINISTRATOR; create role ADMINISTRATOR_USR_S not identified; create role ADMINISTRATOR_USR_SPIINTERFACE not identified; create role ADMINISTRATOR_USR_SPIM not identified; create role EDI identified by values '75EE8705419FB91A'; create role PUBLIC not identified; create role SPIINTERFACE identified by values '3FE4CF3E7427BE60'; create role SPIM identified by values '8CFDC5AAA9CC2083'; Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Exatamente Reginaldo. Quando importamos o dono ele tenta dar direitos ao Visitante e o visitante ao ser criado tenta acessar algo que não lhe é permitido ainda. Como posso proceder nesta situação no data_pump tem a cláusula schemas, posso usá-la escrevendo todos os schemas de uma vez para que a importação ocorra na sequencia correta, sem erros e falta de objetos. rflribeiro escreveu: Neste caso, acompanhando seu raciocínio, você informa que importa primeiro o user owner dos objetos. Neste caso, importando também os grants, o user tenta dar grant diretamente ao user viewer ou a alguma role logo após a criação do objeto e não vai conseguir, porque o user viewer não existe ainda, ou a role, se for o caso. Quando da importação do user viewer ele tenta criar views, por exemplo, acessando uma table à qual ele não tem permissão de leitura, concorda? Verifique se é este seu caso. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Vou repetir o procedimento usando o data_pump. e sobre os direitos, o user dono da direitos ao user viewer a alguns de seus objetos. rflribeiro
Re: [oracle_br] Exportação e Importaçã o de Dados
Cara, manda um exemplo dos erros que apareceram no seu logfile p/ gente dar uma olhada. Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] site: www.dbcom.com.br Carlos Henrique Correa wrote: Vc tem razão mas aí esta a questão, todos os passos apontados por vc: verificar tablespaces, criar usuarios, etc, foram efetuados antes da importação ser efetuada. Estes usuários foram criados novamente no banco em Windows. Por isso não entendemos o que aconteceu para que alguns objetos (trigger, indexes, procedures, functions) não fossem migrados. Muitos destes objetos foram migrados mas alguns não. Por exemplo um dos usuários tem 1238 objetos e apenas 1046 foram importados. Obrigado pela ajuda. rflribeiro [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br escreveu: O problema neste caso não está relacionado ao exp/imp ou ao expdp/impdp. O caso é que você não está trabalhando corretamente com os usuários. Eu normalmente crio uma relação de usuários e roles a serem exportados antes de efetuar a exportação. Cada um trabalha de um jeito... Verificar no banco origem quais os tablespaces que o usuário tem quota. Criar os tablespaces no banco destino. Criar o usuário no banco destino. Criar os usuários e roles que precisam receber grants do usuário owner. Verificar que alguns roles podem ter senha. O script abaixo faz uma verificação do usuário owner e grants p/ usuários e roles. No entanto, não trata da parte de criação de tablespaces. Mas isso você pega facinho também na dba_ts_quotas. [EMAIL PROTECTED] begin 2 for cUsuario in (select distinct u.name, 3 u.password, 4 d.default_tablespace 5 from user$ u, dba_users d 6 where u.type# = 1 7 and u.name = d.username) loop 8 dbms_output.put_line(''); 9 dbms_output.put_line('create user ' || cUsuario.name); 10 dbms_output.put_line('identified by values ''' || cUsuario.password || ); 11 dbms_output.put_line('default tablespace ' || cUsuario.default_tablespace); 12 dbms_output.put_line('temporary tablespace temp'); 13 dbms_output.put_line('quota unlimited on ' || cUsuario.default_tablespace); 14 dbms_output.put_line('quota unlimited on ' || replace(cUsuario.default_tablespace, 'DADO', 'INDICE')); 15 dbms_output.put_line('profile default account unlock;'); 16 dbms_output.put_line(''); 17 dbms_output.put_line('grant connect, resource to ' || cUsuario.name || ';'); 18 dbms_output.put_line(''); 19 for cRoles in (select distinct p.grantee, 20 decode(u.password, '', ' not identified;', ' identified by values ''' || u.password || ''';') password 21 from dba_tab_privs p, user$ u 22 where p.grantor = cUsuario.name 23 and u.name = p.grantee) loop 24 dbms_output.put_line('create role ' || cRoles.grantee || cRoles.password); 25 end loop; 26 dbms_output.put_line(''); 27 dbms_output.put_line('-- -- --'); 28 end loop; 29 end; 30 / create user ADMINISTRATOR identified by values 'D91F53B5F30C5B90' default tablespace ITSUMARE_DADO temporary tablespace temp quota unlimited on ITSUMARE_DADO quota unlimited on ITSUMARE_INDICE profile default account unlock; grant connect, resource to ADMINISTRATOR; create role ADMINISTRATOR_USR_S not identified; create role ADMINISTRATOR_USR_SPIINTERFACE not identified; create role ADMINISTRATOR_USR_SPIM not identified; create role EDI identified by values '75EE8705419FB91A'; create role PUBLIC not identified; create role SPIINTERFACE identified by values '3FE4CF3E7427BE60'; create role SPIM identified by values '8CFDC5AAA9CC2083'; Reginaldo Ribeiro Administrador de Bancos de Dados Oracle Certified Associate 10g _ DBcom IT Experts skype: rflribeiro msn: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br mobile: 551192344290 fone: 551162165375 e-mail: [EMAIL PROTECTED] mailto:rflribeiro%40dbcom.com.br site: www.dbcom.com.br Carlos Henrique Correa wrote: Exatamente Reginaldo. Quando importamos o dono ele tenta dar direitos ao Visitante e o visitante ao ser criado tenta acessar algo que não lhe é permitido ainda. Como posso proceder nesta situação no data_pump tem a cláusula schemas, posso usá-la escrevendo todos os schemas de uma vez para que a importação ocorra na sequencia correta, sem erros e falta de objetos. rflribeiro escreveu: Neste caso, acompanhando seu raciocínio, você informa que importa primeiro o user owner dos objetos. Neste caso, importando também os grants, o user tenta dar grant diretamente ao user viewer ou a alguma role logo após a criação do objeto e não vai conseguir, porque o user viewer não existe ainda, ou a role, se for o caso. Quando da importação do user viewer ele tenta criar views, por exemplo, acessando uma table à qual ele
Re: [oracle_br] Exportação e Importação de Dados
Ese é um dos logs gerados ao importar. Connected to: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options Export file created by EXPORT:V10.02.01 via conventional path import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set export client uses WE8ISO8859P1 character set (possible charset conversion) IMP-8: unrecognized statement in the export file: . importing OWGUARD's objects into OWGUARD . . importing tableMICROSOFTDTPROPERTIES 0 rows imported . . importing table PLAN_TABLE 0 rows imported . . importing table SQLPLUS_PRODUCT_PROFILE 0 rows imported . . importing table TB_SISTEMAS2 0 rows imported . . importing table TB_USUARIOS_BAK 0 rows imported . . importing table TB_USU2303 0 rows imported . . importing table T_USU091205 0 rows imported IMP-00041: Warning: object created with compilation warnings CREATE FORCE VIEW OWGUARD.VI_ACESSO_SIAP_SETE ( ENTIDADE,USUARIO,GRUPO_ACESSO) AS select d.dsc_sigla entidade ,upper(a.nom_usuario) usuario ,b.dsc_grupo grupo_acesso from db_guardiao.tb_usuarios a ,db_guardiao.tb_grupos b ,db_guardiao.tb_grupos_usuarios c ,db_gpo.tb_entidade d where c.isn_usuario = a.isn_usuario and c.isn_grupo = b.isn_grupo -- isn do sistema siap and b.isn_sistema = 361 and a.isn_entidade = d.isn_entidade -- SETE -- and substr(d.cod_entidade,1,2) = '44' -- IPECE -- and d.isn_entidade in (1223, 1224) order by nom_usuario IMP-00041: Warning: object created with compilation warnings CREATE FORCE VIEW OWGUARD.VI_GRUPO_USUARIO (DS C_GRUPO,NOM_USUARIO) AS select b.dsc_grupo, a.nom_usuario from db_guardiao.tb_grupos_usuarios t ,db_guardiao.tb_usuarios a ,db_guardiao.tb_grupos b where t.isn_grupo = 1581 -- Grupo Fecop and a.isn_usuario = t.isn_usuario and b.isn_grupo = t.isn_grupo IMP-00041: Warning: object created with compilation warnings CREATE FORCE VIEW OWGUARD.VI_SCHEMA_OBJETO (IS N_SCHEMA_OBJETO,ISN_SCHEMA,ISN_NIVEL,ISN_OBJETOS,DSC_OBJETO,DSC_S CHEMA) AS select t.ISN_SCHEMA_OBJETO,t.ISN_SCHEMA,t.ISN_NIVEL,t.ISN_OBJETOS, b.dsc_objeto, c.dsc_schema from db_guardiao.tb_schemas_objetos t ,db_guardiao.tb_objetos b ,db_guardiao.tb_schemas c where t.isn_objetos = 3342 --where c.isn_schema = 1781 and t.isn_schema = c.isn_schema and t.isn_objetos = b.isn_objetos -- select * from db_guardiao.tb_schemas IMP-00017: following statement failed with ORACLE error 2248: ALTER SESSION SET PLSQL_OPTIMIZE_LEVEL = 1 NLS_LENGTH_SEMANTICS = 'BYTE' PL SQL_CODE_TYPE = 'INTERPRETED' PLSQL_DEBUG = FALSE PLSQL_WARNINGS = 'DISABLE :ALL'PLSQL_CCFLAGS = '' IMP-3: ORACLE error 2248 encountered ORA-02248: invalid option for ALTER SESSION IMP-0: Import terminated unsuccessfully - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Exportação e Importação de Dados
Pessoal , estou tentando fazer um rebuild em um index e estou com o erro abaixo alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; ORA-02243: invalid ALTER INDEX or ALTER MATERIALIZED VIEW option Alguém sabe me dizer oq pode ser ? 9.2.0.6 com windows .. Obrigado JOSÉ CARLITOS CARVALHO JÚNIOR Administrador de Banco de Dados PST Electronics / [EMAIL PROTECTED] web:http://www.pst.com.br web:http://www.positron.com.br 100+ Inovadoras no Uso de TI 2006 no setor Indústria: Automotiva e Autopeças [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] rebuild de index ORA-02243
Pessoal , estou tentando fazer um rebuild em um index e estou com o erro abaixo alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; ORA-02243: invalid ALTER INDEX or ALTER MATERIALIZED VIEW option Alguém sabe me dizer oq pode ser ? 9.2.0.6 com windows .. Obrigado JOSÉ CARLITOS CARVALHO JÚNIOR Administrador de Banco de Dados PST Electronics / [EMAIL PROTECTED] web:http://www.pst.com.br web:http://www.positron.com.br (Embedded image moved to file: pic00041.jpg) 100+ Inovadoras no Uso de TI 2006 no setor Indústria: Automotiva e Autopeças [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] ** Análise Performance **
Srs(as), boa tarde. A fim de analisar se um banco de dados Oracle 8i, está de forma geral estável, quanto a sua permormance / parâmetros, existe algo que se possa examinar, independente da aplicação que está rodando? Algo que possa observer de hora em hora por exemplo para ver se está oscilando? Ou sempre devemos atacar específicamente algum ponto? Levando em conta que o ambiente está com lentidão como um todo? Desde já, agradeço as dicas. Obrigado, No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21:11 [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Exportação e Importação de Dados
alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Jose C Carvalho Enviada em: terça-feira, 4 de dezembro de 2007 15:47 Para: oracle_br@yahoogrupos.com.br Cc: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Exportação e Importação de Dados Pessoal , estou tentando fazer um rebuild em um index e estou com o erro abaixo alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; ORA-02243: invalid ALTER INDEX or ALTER MATERIALIZED VIEW option Alguém sabe me dizer oq pode ser ? 9.2.0.6 com windows .. Obrigado JOSÉ CARLITOS CARVALHO JÚNIOR Administrador de Banco de Dados PST Electronics / [EMAIL PROTECTED] web:http://www.pst.com.br web:http://www.positron.com.br 100+ Inovadoras no Uso de TI 2006 no setor Indústria: Automotiva e Autopeças [As partes desta mensagem que não continham texto foram removidas] Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos
RES: [oracle_br] ** Análise Performance **
Leia sobre o Statspack... -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Robson (Terra) Enviada em: terça-feira, 4 de dezembro de 2007 14:55 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] ** Análise Performance ** Srs(as), boa tarde. A fim de analisar se um banco de dados Oracle 8i, está de forma geral estável, quanto a sua permormance / parâmetros, existe algo que se possa examinar, independente da aplicação que está rodando? Algo que possa observer de hora em hora por exemplo para ver se está oscilando? Ou sempre devemos atacar específicamente algum ponto? Levando em conta que o ambiente está com lentidão como um todo? Desde já, agradeço as dicas. Obrigado, No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21:11 [As partes desta mensagem que não continham texto foram removidas] Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos
RES: [oracle_br] rebuild de index ORA-02243
alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; Acabei respondendo na thread errada. O problema é o hífen no nome do objeto, drop este índice e recrie-o com o nome correto com _ por exemplo. -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Jose C Carvalho Enviada em: terça-feira, 4 de dezembro de 2007 15:48 Para: Jose C Carvalho Cc: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] rebuild de index ORA-02243 Pessoal , estou tentando fazer um rebuild em um index e estou com o erro abaixo alter index ESTOQUE_DI.FATUR_DIARIO_DIST-DAT-REP rebuild; ORA-02243: invalid ALTER INDEX or ALTER MATERIALIZED VIEW option Alguém sabe me dizer oq pode ser ? 9.2.0.6 com windows .. Obrigado JOSÉ CARLITOS CARVALHO JÚNIOR Administrador de Banco de Dados PST Electronics / [EMAIL PROTECTED] web:http://www.pst.com.br web:http://www.positron.com.br (Embedded image moved to file: pic00041.jpg) 100+ Inovadoras no Uso de TI 2006 no setor Indústria: Automotiva e Autopeças [As partes desta mensagem que não continham texto foram removidas] Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos
Re: RES: [oracle_br] ** Análise Performance **
Sim, Statspack é uma boa pedida pra se ter um overview do banco, logicamente se fazendo ** várias ** medidas, cada uma de 15 minutos de duração, ao longo do dia lembro porém que : a) principalmente na versão 8i, ele é ** POBRE ** em informação sobre o consumo de hardware e de recursos no SO, então ele terá que ser complementado com consultas periódicas aos utilitários do SO (iostat/vmstat/sar/top e relacionados se for unix/linux, métricas do coletor e freewares como os pacotes Sysinternals se for windows b) também vale a pena se fazer testes isolados, como por exemplo se ter numa tablespace à parte, LMT, uniform-size, um tabela de alguns milhões de linhas e tracejar/medir os tempos de um full scan, ter um cursor repetidamente fazendo keyed reads... SE a performance de seu I/O estiver nitidamente e totalmente abaixo do prometido pelo fornecedor de hardware, testes do tipo são indicação... A própria Oracle fornece um utilitário voltado especificamente pra mensurar I/O, chamado ORION (ORacle IO Numbers) , disponível em technet.oracle.com, não sei se funciona no 8i mas creio que sim... == tudo isso, PORÉM, é simples COMPLEMENTO, o que vale mesmo é a performance da aplicação : de COISA NENHUMA adianta todos os testes acima reportarem que tudo vai bem e o usuário estar tendo uma experiência de uso HORROROSA por causa de aplicação ineficiente, locks, rede ruim, o que for... É o que vale, é mensurar se a aplicação está atendendo o usuário, exercícios de healtcheck do tipo via de regra NÂO SÃO de grande utilidade, a não ser pra fazer o geente ficar contente, ter um monte de grafiquinhos mostrando que tudo está bem no mundo, mesmo quando não está... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, Rodrigo Mufalani [EMAIL PROTECTED] escreveu Leia sobre o Statspack... -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Robson (Terra) Enviada em: terça-feira, 4 de dezembro de 2007 14:55 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] ** Análise Performance ** Srs(as), boa tarde. A fim de analisar se um banco de dados Oracle 8i, está de forma geral estável, quanto a sua permormance / parâmetros, existe algo que se possa examinar, independente da aplicação que está rodando? Algo que possa observer de hora em hora por exemplo para ver se está oscilando? Ou sempre devemos atacar específicamente algum ponto? Levando em conta que o ambiente está com lentidão como um todo? Desde já, agradeço as dicas. Obrigado, No virus found in this outgoing message. Checked by AVG Free Edition. Version: 7.5.503 / Virus Database: 269.16.9/1158 - Release Date: 28/11/2007 21:11 [As partes desta mensagem que não continham texto foram removidas] Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -- 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/ -- O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos
Re: RES: [oracle_br] OWB
Sou outro reforçando a indicação do OTN, lá tem ** cursos ** online de OWB, código-exemplo, papers diversos, um blog especializado nele (http://blogs.oracle.com/warehousebuilder/), fórum, lá é mesmo a fonte PRINCIPAL de informação sobre o dito-cujo, BEM COMO a documentação dele... Afora isso, vc encontra info ** PRECIOSA ** nos blogs do pessoal que mexe com BI, tal como http://www.rittmanmead.com/blog/ , http://oraclesponge.wordpress.com/ (os melhores, imho), e também em http://pjsrandom.wordpress.com/, http://technology.amis.nl/blog/ , http://www.biblogs.com/ e na seção de links desses caras todos... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, Bruno Lorenzini [EMAIL PROTECTED] escreveu Tem um material la no site da OTN. É o único que eu conheço. Se alguém tiver + alguém, por favor, coloca la no 4shared (http://br-oracle-ocp.4shared.com/) que eu também vou querer! :D Abs, _ De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Rafael Milanez Enviada em: terça-feira, 4 de dezembro de 2007 10:55 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] OWB Pessoal, Alguem teria algum material de OWB Abs.. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]