Re: [oracle_br] Mudar desenvolvimento para Oracle com .Net
Fala Fábio, A Oracle dá um suporte legal a aplicações .NET. O ADO.NET é um framework, algo similar ao JDBC, que te permite utilizar drivers específicos para conectar a qualquer Banco de Dados que se preze. A Oracle fornece um driver específico desses chamado ODP.NET (Oracle Data Provider). Por outro lado, você também pode conectar utilizando o OLE DB driver da Oracle ou mesmo ODBC. Compatibilidade provavelmente não será um problema. A Oracle também produziu uma extensão do VS.NET pra facilitar a integração com o Banco Oracle. O IIS vai ser necessário para rodar aplicações ASP.NET, isto é, as aplicações Web em .NET. o iAS não roda .NET, pelo menos até onde sei. Pelo seu ambiente, é bastante interessante você trabalhar em um bom Capacity Plan pra não estimar errado custos e hardwares necessários para atender à população de usuários. Em 12/11/07, Fabio Quirino <[EMAIL PROTECTED]> escreveu: > > Pessoal, > > Sei que este assunto é um tanto extenso, porém, no momento me é pertinente > pedir-lhes uma ajuda, nem que seja por aqui. > > A empresa que atualmente trabalho está cogitando usar o .Net (C# e ASPX). > Hoje nosso cenário de desenvolvimento é: Forms, Reports e JDeveloper Oracle, > banco de dados Oracle 10G, servidor de aplicação IAS10G. > > Não sei detalhes sobre as características físicas das máquinas que contém > o BD e o Servidor de Aplicação. > > Enfim, quais seriam os pré-requisitos para usar o Visual Studio 2005? Sei > que o BD Oracle 10G suporta. Não sei da obrigatoriedade de usar o Microsoft > IIS, realmente é obrigatório, atualmente a empresa usa o IAS? Olhando o site > da Oracle vi que existe ADO.NET desenvolvido pela Oracle, alguém poderia > comentar alguma coisa a mais sobre o uso dele, a Oracle oferece suporte? A > empresa possui aproximadamente 400 usuários? Os sistemas mais usados chegam > a ter 200 usuários conectados simultaneamente, alguém tem alguma informação > especial a dizer sobre este ponto? Alguma informação específica em relação a > Framework, principalmente no que diz respeito a compatibilidade de versão > entre ambiente de desenvolvimento e produção? Software de controle de > versão? Dentre as características que passei, dá pra saber "por alto" qual > seria a configuração mínima de equipamento para produção? > > Obrigado, > > Quirino > > Abra sua conta no Yahoo! Mail, o único sem limite de espaço para > armazenamento! > http://br.mail.yahoo.com/ > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Atenciosamente, Gleyson Melo Oracle Database 10g Administrator Certified Professional [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Re: Ajuda
Colega, é tal como eu falei, se vc ** REALMENTE ** tem tudo aí nesse HD, e os arqs estiverem legíveis, não vai ter o que, vai ser facílimo e garantido vc instalar os binários e abrir esse banco A única coisa que eu tinha dito e repito, é que vc preferencialmente TEM QUE TER os binários na versão rigorosamente exata que criou o banco, ou no máximo com patchset superior : assim, normalmente no CD de instalação vem release 1.0, os patches são adicionados `a parte, muito provavelmente esse CD que vc conseguiu deve contem o bd 8.1.7.0, se o banco foi criado por binários 8.1.7.3, vc após a instalação com o CD ainda terá o patch a aplicar. Já que a compatibilidade é com o passado, binários 8.1.7.3 conseguem ler e abrir na boa um banco criado com 8.1.7.0 (digamos), o que eu recomendaria então é que vc já botasse patch 8.1.7.3(o último que saiu pro banco 8.1.7). Quanto aos erros sim, não é difícil vc ver coisas do tipo (ie, falta de backup, de documentação de versão instalada e patches, desconhecimento total na hora de se gerar um backup, etc) , até em empresas de porte, sim É algo infelizmente quase rotineiro no mercado... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Eduardo Nunes De Souza Seixas" <[EMAIL PROTECTED]> escreveu > > chiapa, fico muito agredecido por seu tempo. realmente os datafiles estão aqui, os control e tudo mais. existem erros bastante acentuados, muito graves, pois este hd passou pelas mãos de técnicos que chegaram a dizer que o problema era de disco com defeito. Realmente será uma tarefa árdua e longa, pois o banco é muito grande. 40 GB. > estou fazendo backus desse hd antes de começar o trabalho. o detalhe é que a empresa proprietária desse hd é referência no ramo de distribuidoras de medicamentos em goiás. é coisa séria mesmo. pra vc ter uma idéia, são 7 anos de vida dentro desse hd. > obrigado pelas dicas, e, felizmente, eu consegui o cd oracle 8.1.7 com a propria empresa. > > > Obrigado > - Original Message - > From: jlchiappa > To: oracle_br@yahoogrupos.com.br > Sent: Monday, November 12, 2007 8:28 PM > Subject: [oracle_br] Re: Ajuda > > > Eduardo, ** desconheço ** versão 9.0.2, assumirei que na verdade é > versão 9.2.0, mas de qquer maneira, observa-se que : > > a) um banco Oracle é composto (no mínimo) por datafiles + controlfiles > + initfiles + redo log files a cada versão, esse hd tem TODOS > esses arqs ? SE não, é ** lixo informata ** o que vc tem em mãos, > tal como qquer latão de lixo EM TESE vc pode "mergulhar" nele e ver o > que dá pra salvar, mas não é fácil nem rápido nem limpo... > > b) os arqs de um banco Oracle são CONSTANTEMENTE lidos e gravados em > background, mesmo quando não há NENHUM usuário ativo : vc tem CERTEZA > que os arqs desse hd foram copiados com o banco baixado, OU se não se > banco em modo archive os archived logs estão junto ??? Cópia de arqs > de um banco NOARCHIVE ativo SÓ PODE resultar em lixo informata, de novo... > > c) a cada novo patch, o formato dos arquivos do banco *** PODE SIM *** > mudar, então em princípio vc TEM QUE abrir um banco com a MESMA versão > ** EXATA ** de binário que criou os arqs todos... Da mesma forma, a > EDIÇÃO conta também - mesmo numa dada versão, em tese os arqs de um > banco Enterprise podem ser diferentes de um banco de mesma versão mas > Standard... > Assim, é quase 100% garantido que vc NÃO poderá abrir arqs versão 8i > com binários 9i, PONTO. A maneira GARANTIDA e RECOMENDADA de vc > abrir um banco Oracle , DESDE QUE todos os reqs acima estejam OK é, > numa máquina de MESMO SISTEMA OPERACIONAL em que ele foi criado, tendo > acessíveis TODOS os arqs necessários, vc ter instalado a MESMA VERSÃO > EXATA de binários que criou o banco, é isso : em vc tendo Contrato de > Suporte prum software Oracle qquer, basta vc abrir um chamado no > Suporte da Oracle que eles te enviam CDs com versão de qquer banco pra > qquer SO que já existiu, sendo Oracle >= 7.3.x. > > O que vc PODE TENTAR, se não puder por qquer motivo obter os binários > 8i, E SE o banco está fechado e íntegro (ie, todos os reqs acima foram > atendidos) , é ter os binários 9i instalados e tentar uma MIGRAÇÃO > desse banco 8i, o manual "Oracle9i Database Migration > Release 2 (9.2)" cap. 3 - Upgrading a Database to the New Oracle9i > Release mostra os detalhes. > > []s > > Chiappa > --- Em oracle_br@yahoogrupos.com.br, "Eduardo Nunes De Souza Seixas" >escreveu > > > > Caros > > > > Tenho um hd com o banco oracle 8.1.7 (linux), e preciso recuperar > esse banco > > e depois fazer um exm (gerar dm). > > Mas a questão é que não tenho o cd oracle 8.1.7. > > Eu tenho o 9.0.2 > > > > Gostaria de saber se eu conseguiria recuperar os dados desse banco > 8.1.7 usando o 9.0.2. > > > > Fico grato. > > > > Eduardo Seixas > > > > > > > > > > [As partes desta mensagem que não continham texto foram
[oracle_br] Re: Negar SELECT para usuários DBA
Rigorosamente ** NÃO TEM COMO **, por definição em operação normal um DBA tem todas as chaves do reino, não só faz select em qquer coisa, como também DMLs, DDLs O que vc pode fazer é : a) CRIPTOGRAFAR os dados sensíveis, aí o DBA até os acessaria mas não teria como ler a informação e/ou b) usar um produto de segurança extra e específico, como da própria Oracle o Oracle Data Vault, a página de info é http://www.oracle.com/technology/deploy/security/database-security/database-vault/index.html e ** óbvio ululante **, ativar auditoria ** FORA E DENTRO DO BANCO ** ,pelo SO e pelo próprio banco, ter sysadmin <> dba, ter o sysadmin auditando o dba e o dba auditando o sysadmin e ambos ofrerem incerteas de auditoria por parte de terceiros, etc, são necessidades prementes se vc tem preocupações extras com segurança de dados. []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Roberto E. Wille" <[EMAIL PROTECTED]> escreveu > > Boa noite, > > alguém conhece alguma forma de não permitir um usuário DBA acessar > tabelas de outro SCHEMA? > sei q não funciona com GRANTS, mas será q não existe uma forma /obscura/? > > > -- > *Roberto E. Wille* > /Joinville - SC - BR/ >
[oracle_br] Negar SELECT para usuários DBA
Boa noite, alguém conhece alguma forma de não permitir um usuário DBA acessar tabelas de outro SCHEMA? sei q não funciona com GRANTS, mas será q não existe uma forma /obscura/? -- *Roberto E. Wille* /Joinville - SC - BR/
[oracle_br] Re: Acertar horários para Jobs
Valeu a todos. --- Em oracle_br@yahoogrupos.com.br, Roberto Amorim <[EMAIL PROTECTED]> escreveu > > Exato. O funcionamento é simples. > Quando você faz o trunc você obtém a data com hora zero: > > trunc(sysdate) + 1 > > onde esse um corresponde a um dia. Seria então na zero hora do dia seguinte. > Mas, você pode quere que seja em uma determinada hora do dias seguinte, > como 1 corresponde a um dia e um dia tem 24 horas, então uma fração do > dia será o resultado de da divisão por 24 > > trunc(sydate) > dia de hoje a zero hora > + 1 ===> mais um dia > + 17/24 > mais a décima sétima parte de um dia, ou 17 horas > + 0.917/24 ===> mais a 55ª parte de uma hora, ou 55/60=0,9167, ou 55 > minutos > > Sérgio escreveu: > > Como utilizei o trunc no sysdate+1, terei o retorno da > > data do dia seguinte correta, mas com horário 00:00:00. > > O 17.917/24 é 17:55, só que fiz a conta em decimal > > Utilizo esse modo em todos os meus jobs, e, mesmo > > quando bloqueio o banco para manutenções (restricted > > mode) e os jobs acabam por rodar em outro horário (atrasado), > > no dia seguinte estarão schedulados corretamente (sem > > necessidade de intervenção manual) > > > > Sérgio > > - Original Message - > > From: sidney_dias2000 > > To: oracle_br@yahoogrupos.com.br > > Sent: Tuesday, November 13, 2007 1:41 PM > > Subject: [oracle_br] Re: Acertar horários para Jobs > > > > > > E o que vem a ser esse 17.917/24 ??? > > > > --- Em oracle_br@yahoogrupos.com.br, Sérgio escreveu > > > > > > Ou vc pode usar assim: > > > trunc(sysdate+1)+(17.917/24) > > > > > > Sérgio > > > > > > - Original Message - > > > From: joao batista > > > To: oracle_br@yahoogrupos.com.br > > > Sent: Tuesday, November 13, 2007 12:07 PM > > > Subject: Re: [oracle_br] Acertar horários para Jobs > > > > > > > > > Tente usar o trunc na frente, > > > > > > sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ > > 11/2007 > > > 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; > > > > > > Att, > > > João > > > > > > sidney_dias2000 escreveu: Preciso rodar um job > > todos os dias exatamente as 17:55. > > > Criei da seguinte forma : > > > > > > sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date ('08/11/2007 > > > 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); > > > > > > Mas o infeliz executou nos seguintes horarios : > > > > > > 2007-11-08 17:55:05 > > > 2007-11-09 17:55:10 > > > 2007-11-12 07:52:25 > > > 2007-11-13 07:52:29 > > > > > > Alguem tem uma dica de como rodar o job num horario especifico ? > > > > > > > > > > > > > > > > > > - > > > 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] > > > > > > > > > > > > > > > --- > > > Esta mensagem não implica a assunção de obrigações em nome da > > > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > > > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > > > replicação ou disseminação desta mensagem ou parte dela é > > > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > > > é responsável pelo conteúdo ou a veracidade desta informação. > > > > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > > --- > > Esta mensagem não implica a assunção de obrigações em nome da > > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > > replicação ou disseminação desta mensagem ou parte dela é > > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > > é responsável pelo conteúdo ou a veracidade desta informação. > > > > > > > > [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 > > > > > > > > > > >
[oracle_br] EXP IMP de XE para nao-XE
Afinal, é possivel exportar uma base a partir do Oracle XE 10 em um Linux Kubuntu no conjunto de caracteres WE8MSWIN1252 para um banco Oracle 10.1.0 em um Windows XP no mesmo conjunto de caracteres? Observem que ao final ele me diz q a importacao foi encerrada com exito. Ao fazer este procedimento, ocorrem erros: IMP-00017: a instrução a seguir falhou com o erro 988 ORACLE: "CREATE DATABASE LINK "BANCO1.US.ORACLE.COM" CONNECT TO "ANDRE" IDENTIFIED " "BY VALUES '050263B7C6E1D7C9CAC33C8887087CFFD1' USING 'banco1'" IMP-3: Erro Oracle: 988 encontrado ORA-00988: senha(s) não encontrada(s) ou inválida(s) IMP-00017: a instrução a seguir falhou com o erro 2248 ORACLE: "ALTER SESSION SET PLSQL_OPTIMIZE_LEVEL = 1 NLS_LENGTH_SEMANTICS = 'BYTE' PLSQL_CODE_TYPE = 'INTERPRETED' PLSQL_DEBUG = FALSE PLSQL_WARNINGS = 'DISABLE:ALL'PLSQL_CCFLAGS = ''" IMP-3: Erro Oracle: 2248 encontrado ORA-02248: opção inválida para ALTER SESSION IMP-0: Importação encerrada com êxito André Gustavo Schaeffer Berbau Balas Finas Email: [EMAIL PROTECTED] MSN: [EMAIL PROTECTED] Fone: (54) 3321 3677 Ramal 24 http://www.berbau.com.br [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] Preço Licença Oracle 10g
Pessoal, Gostaria de saber o preço da Licença do Oracle 10g versão ENTERPRISE. Minha dúvida é a seguinte: Tenho um servidor com um único processador, porém é mesmo é QUAD Core (4 núcleos). Vou precisar adquirir a licença para um único processador (1 CPU) ou a licença para 4 processadores (4 CPUs) ??? Agradeço qualquer informação. Um Abraço, Juliano
Re: [oracle_br] Re: Acertar horários para J obs
Complementando... A pergunta básica é: Porque não somar direto as 17 horas e 55 minutos no sysdate sem truncar? Acontece que esse parâmetro baseia-se no momento que rodou o job. Assim, se seu job for para rodar todo dia uma hora da manhã e por algum motivo atrasar uma hora, o job do dia seguinte acontecerá às 2h, se atrasar novamente 30 minutos no dia seguinte o próximo será 2:30 e assim consecutivamente. Fazendo o trunc você garante que o incremento do próximo job sempre partirá da zero hora do dia de hoje. Roberto Amorim escreveu: > Exato. O funcionamento é simples. > Quando você faz o trunc você obtém a data com hora zero: > > trunc(sysdate) + 1 > > onde esse um corresponde a um dia. Seria então na zero hora do dia seguinte. > Mas, você pode quere que seja em uma determinada hora do dias seguinte, > como 1 corresponde a um dia e um dia tem 24 horas, então uma fração do > dia será o resultado de da divisão por 24 > > trunc(sydate) > dia de hoje a zero hora > + 1 ===> mais um dia > + 17/24 > mais a décima sétima parte de um dia, ou 17 horas > + 0.917/24 ===> mais a 55ª parte de uma hora, ou 55/60=0,9167, ou 55 > minutos > > Sérgio escreveu: > >> Como utilizei o trunc no sysdate+1, terei o retorno da >> data do dia seguinte correta, mas com horário 00:00:00. >> O 17.917/24 é 17:55, só que fiz a conta em decimal >> Utilizo esse modo em todos os meus jobs, e, mesmo >> quando bloqueio o banco para manutenções (restricted >> mode) e os jobs acabam por rodar em outro horário (atrasado), >> no dia seguinte estarão schedulados corretamente (sem >> necessidade de intervenção manual) >> >> Sérgio >> - Original Message - >> From: sidney_dias2000 >> To: oracle_br@yahoogrupos.com.br >> Sent: Tuesday, November 13, 2007 1:41 PM >> Subject: [oracle_br] Re: Acertar horários para Jobs >> >> >> E o que vem a ser esse 17.917/24 ??? >> >> --- Em oracle_br@yahoogrupos.com.br, Sérgio <[EMAIL PROTECTED]> escreveu >> > >> > Ou vc pode usar assim: >> > trunc(sysdate+1)+(17.917/24) >> > >> > Sérgio >> > >> > - Original Message - >> > From: joao batista >> > To: oracle_br@yahoogrupos.com.br >> > Sent: Tuesday, November 13, 2007 12:07 PM >> > Subject: Re: [oracle_br] Acertar horários para Jobs >> > >> > >> > Tente usar o trunc na frente, >> > >> > sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ >> 11/2007 >> > 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; >> > >> > Att, >> > João >> > >> > sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job >> todos os dias exatamente as 17:55. >> > Criei da seguinte forma : >> > >> > sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 >> > 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); >> > >> > Mas o infeliz executou nos seguintes horarios : >> > >> > 2007-11-08 17:55:05 >> > 2007-11-09 17:55:10 >> > 2007-11-12 07:52:25 >> > 2007-11-13 07:52:29 >> > >> > Alguem tem uma dica de como rodar o job num horario especifico ? >> > >> > >> > >> > >> > >> > - >> > 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] >> > >> > >> > >> > >> > --- >> > Esta mensagem não implica a assunção de obrigações em nome da >> > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em >> > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, >> > replicação ou disseminação desta mensagem ou parte dela é >> > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não >> > é responsável pelo conteúdo ou a veracidade desta informação. >> > >> > >> > >> > [As partes desta mensagem que não continham texto foram removidas] >> > >> >> >> >> >> --- >> Esta mensagem não implica a assunção de obrigações em nome da >> empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em >> sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, >> replicação ou disseminação desta mensagem ou parte dela é >> expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não >> é responsável pelo conteúdo ou a veracidade desta informação. >> >> >> >> [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/ >> ---
Re: [oracle_br] Re: Acertar horários para J obs
Exato. O funcionamento é simples. Quando você faz o trunc você obtém a data com hora zero: trunc(sysdate) + 1 onde esse um corresponde a um dia. Seria então na zero hora do dia seguinte. Mas, você pode quere que seja em uma determinada hora do dias seguinte, como 1 corresponde a um dia e um dia tem 24 horas, então uma fração do dia será o resultado de da divisão por 24 trunc(sydate) > dia de hoje a zero hora + 1 ===> mais um dia + 17/24 > mais a décima sétima parte de um dia, ou 17 horas + 0.917/24 ===> mais a 55ª parte de uma hora, ou 55/60=0,9167, ou 55 minutos Sérgio escreveu: > Como utilizei o trunc no sysdate+1, terei o retorno da > data do dia seguinte correta, mas com horário 00:00:00. > O 17.917/24 é 17:55, só que fiz a conta em decimal > Utilizo esse modo em todos os meus jobs, e, mesmo > quando bloqueio o banco para manutenções (restricted > mode) e os jobs acabam por rodar em outro horário (atrasado), > no dia seguinte estarão schedulados corretamente (sem > necessidade de intervenção manual) > > Sérgio > - Original Message - > From: sidney_dias2000 > To: oracle_br@yahoogrupos.com.br > Sent: Tuesday, November 13, 2007 1:41 PM > Subject: [oracle_br] Re: Acertar horários para Jobs > > > E o que vem a ser esse 17.917/24 ??? > > --- Em oracle_br@yahoogrupos.com.br, Sérgio <[EMAIL PROTECTED]> escreveu > > > > Ou vc pode usar assim: > > trunc(sysdate+1)+(17.917/24) > > > > Sérgio > > > > - Original Message - > > From: joao batista > > To: oracle_br@yahoogrupos.com.br > > Sent: Tuesday, November 13, 2007 12:07 PM > > Subject: Re: [oracle_br] Acertar horários para Jobs > > > > > > Tente usar o trunc na frente, > > > > sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ > 11/2007 > > 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; > > > > Att, > > João > > > > sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job > todos os dias exatamente as 17:55. > > Criei da seguinte forma : > > > > sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 > > 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); > > > > Mas o infeliz executou nos seguintes horarios : > > > > 2007-11-08 17:55:05 > > 2007-11-09 17:55:10 > > 2007-11-12 07:52:25 > > 2007-11-13 07:52:29 > > > > Alguem tem uma dica de como rodar o job num horario especifico ? > > > > > > > > > > > > - > > 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] > > > > > > > > > > --- > > Esta mensagem não implica a assunção de obrigações em nome da > > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > > replicação ou disseminação desta mensagem ou parte dela é > > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > > é responsável pelo conteúdo ou a veracidade desta informação. > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > --- > Esta mensagem não implica a assunção de obrigações em nome da > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > replicação ou disseminação desta mensagem ou parte dela é > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > é responsável pelo conteúdo ou a veracidade desta informação. > > > > [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: [oracle_br] Re: Acertar horários para Jobs
Como utilizei o trunc no sysdate+1, terei o retorno da data do dia seguinte correta, mas com horário 00:00:00. O 17.917/24 é 17:55, só que fiz a conta em decimal Utilizo esse modo em todos os meus jobs, e, mesmo quando bloqueio o banco para manutenções (restricted mode) e os jobs acabam por rodar em outro horário (atrasado), no dia seguinte estarão schedulados corretamente (sem necessidade de intervenção manual) Sérgio - Original Message - From: sidney_dias2000 To: oracle_br@yahoogrupos.com.br Sent: Tuesday, November 13, 2007 1:41 PM Subject: [oracle_br] Re: Acertar horários para Jobs E o que vem a ser esse 17.917/24 ??? --- Em oracle_br@yahoogrupos.com.br, Sérgio <[EMAIL PROTECTED]> escreveu > > Ou vc pode usar assim: > trunc(sysdate+1)+(17.917/24) > > Sérgio > > - Original Message - > From: joao batista > To: oracle_br@yahoogrupos.com.br > Sent: Tuesday, November 13, 2007 12:07 PM > Subject: Re: [oracle_br] Acertar horários para Jobs > > > Tente usar o trunc na frente, > > sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ 11/2007 > 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; > > Att, > João > > sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job todos os dias exatamente as 17:55. > Criei da seguinte forma : > > sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 > 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); > > Mas o infeliz executou nos seguintes horarios : > > 2007-11-08 17:55:05 > 2007-11-09 17:55:10 > 2007-11-12 07:52:25 > 2007-11-13 07:52:29 > > Alguem tem uma dica de como rodar o job num horario especifico ? > > > > > > - > 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] > > > > > --- > Esta mensagem não implica a assunção de obrigações em nome da > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > replicação ou disseminação desta mensagem ou parte dela é > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > é responsável pelo conteúdo ou a veracidade desta informação. > > > > [As partes desta mensagem que não continham texto foram removidas] > --- Esta mensagem não implica a assunção de obrigações em nome da empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, replicação ou disseminação desta mensagem ou parte dela é expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não é responsável pelo conteúdo ou a veracidade desta informação. [As partes desta mensagem que não continham texto foram removidas]
Re: ENC: [oracle_br] Como Dimensionar o parametro Open_Cursor ?
Use o SQL abaixo, pode ajudar. rem --- rem Filename: cursors.sql rem Purpose:Track database cursor usage rem Date: 29-Nov-2002 rem Author: Frank Naude, Oracle FAQ rem --- prompt Open Cursor Limit col value format a30 head "Open Cursors Parameter Value" select value from sys.v_$parameter where name = 'open_cursors'; prompt Summary of Current Curor Usage col name format a25 select min(value) min, max(value) max, avg(value) avg from sys.v_$sesstat where statistic# = (select statistic# from sys.v_$statname where name like 'opened cursors current'); prompt Top 10 Users With Most Open Cursors col program format a15 trunc col osuser format a15 trunc col username format a15 trunc select * from ( select s.sid, s.username, s.osuser, s.program, v.value "Open Cursors" from sys.v_$sesstat v, sys.v_$session s where v.sid= s.sid and v.statistic# = (select statistic# from sys.v_$statname where name like 'opened cursors current') order by v.value desc ) where rownum < 11; Thiago M. Zerbinato [thiagomz] OCP DBA --- http://thiagomz.hpg.com.br Rodrigo Mufalani said the following on 13/11/2007 11:45: > > Meu caro Wilson Dorigatti, > > > Hoje pela manhã eu estava procurando isso, no AWR tem sim. Vá pelo > Enterprise Manager Console, na guia de Performance, em Instance Activity, o > primeiro item da lista é cursor. > > > Att, > > Rodrigo Mufalani > > > > -Mensagem original- > De: Rodrigo Mufalani [mailto:[EMAIL PROTECTED] > Enviada em: segunda-feira, 12 de novembro de 2007 17:15 > Para: 'oracle_br@yahoogrupos.com.br' > Assunto: RES: [oracle_br] Como Dimensionar o parametro Open_Cursor ? > > >O parâmetro é medido por sessão, então cada conexão tem direito à abrir X > cursores durante a sua sessão. > >O que eu acho que vc deva fazer é rodar a sua query em um horário de uso > normal durante alguns dias para tirar uma estatística sobre open_cursors, eu > não investiguei a fundo, de repente o AWR tem isso para vc pronto. > > Ps.: Sua segunda query está mostrando uma porcentagem errada, deveria ser em > cima do maior valor de cursores abertos em uma sessão e não do somatório > total. Olhe o meu caso: > > 17:07:41 [EMAIL PROTECTED]>select abertos, maximo, > round(100/(maximo/abertos),2) as porcentagem from > 17:12:39 2 (select count(*) as abertos from v$open_cursor), > 17:12:39 3 (select value as maximo from v$parameter where name= > 'open_cursors'); > >ABERTOS MAXIMO PORCENTAGEM > -- -- --- > 1817 1300139,77 > > > > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em > nome de Wilson Dorigatti > Enviada em: segunda-feira, 12 de novembro de 2007 15:37 > Para: oracle_br@yahoogrupos.com.br; [EMAIL PROTECTED]; > [EMAIL PROTECTED] > Assunto: [oracle_br] Como Dimensionar o parametro Open_Cursor ? > > Boa tarde, > > Pessoal gostaria de tirar uma duvida sobre quantidade de cursores aberto > em um ambiente de produção Oracle 10.2.0.1.0 Linux RedHat V4. Com 4G de RAM > rodando uma aplicação em Forms /Report 6i . O intuito é analisar quantos > cursores estão abertos no momento e também como dimensiona- los > > Pesquisando sobre o assunto cheguei a duas consultas que me passaram um > parâmetro de quanto devo aumentar. > > SELECT a.sid,b.USERNAME ,count(*) > FROM v$open_cursor a , v$session b > where a.sid = b.sid > GROUP BY a.sid,b.USERNAME > ORDER BY count(*) desc > / > Com essa consulta consigo ver a quantidades de cursores aberto por Sessão > assim o máximo por sessão chega a 500 cursores... e também encontrei outra > que me passa os totais de cursores abertos mais o parâmetro atual. > > select abertos, maximo, round(100/(maximo/abertos),2) as porcentagem > from > (select count(*) as abertos from v$open_cursor), > (select value as maximo from v$parameter where name= 'open_cursors'); > > Essa consulta me mostra que meu banco de dados tem aberto quase 5000 > cursores . > gostaria de saber se esse procedimento está correto para analisar as > quantidades de cursores abertos em um banco de dados Oracle10G e assim > podendo dimensiona- lo adequadamente. > > > > > > > > - > 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] > > > >> Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure > » Scripts » Tutoriais acesse: > http://www.oraclebr.com.br/codigo/ListaCodigo.php > > ---
Re: [oracle_br] Re: Acertar horários para J obs
Acho que são as 17 horas mais os 55 minutos. Só que os 55 minutos estão na forma decimal e não em 1/60. sidney_dias2000 escreveu: > E o que vem a ser esse 17.917/24 ??? > > > --- Em oracle_br@yahoogrupos.com.br, Sérgio <[EMAIL PROTECTED]> escreveu > >> Ou vc pode usar assim: >> trunc(sysdate+1)+(17.917/24) >> >> Sérgio >> >> - Original Message - >> From: joao batista >> To: oracle_br@yahoogrupos.com.br >> Sent: Tuesday, November 13, 2007 12:07 PM >> Subject: Re: [oracle_br] Acertar horários para Jobs >> >> >> Tente usar o trunc na frente, >> >> sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ >> > 11/2007 > >> 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; >> >> Att, >> João >> >> sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job >> > todos os dias exatamente as 17:55. > >> Criei da seguinte forma : >> >> sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 >> 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); >> >> Mas o infeliz executou nos seguintes horarios : >> >> 2007-11-08 17:55:05 >> 2007-11-09 17:55:10 >> 2007-11-12 07:52:25 >> 2007-11-13 07:52:29 >> >> Alguem tem uma dica de como rodar o job num horario especifico ? >> >> >> >> >> >> - >> 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] >> >> >> >> >> --- >> Esta mensagem não implica a assunção de obrigações em nome da >> empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em >> sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, >> replicação ou disseminação desta mensagem ou parte dela é >> expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não >> é responsável pelo conteúdo ou a veracidade desta informação. >> >> >> >> [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 > > > > >
[oracle_br] Re: Acertar horários para Jobs
E o que vem a ser esse 17.917/24 ??? --- Em oracle_br@yahoogrupos.com.br, Sérgio <[EMAIL PROTECTED]> escreveu > > Ou vc pode usar assim: > trunc(sysdate+1)+(17.917/24) > > Sérgio > > - Original Message - > From: joao batista > To: oracle_br@yahoogrupos.com.br > Sent: Tuesday, November 13, 2007 12:07 PM > Subject: Re: [oracle_br] Acertar horários para Jobs > > > Tente usar o trunc na frente, > > sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ 11/2007 > 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; > > Att, > João > > sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job todos os dias exatamente as 17:55. > Criei da seguinte forma : > > sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 > 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); > > Mas o infeliz executou nos seguintes horarios : > > 2007-11-08 17:55:05 > 2007-11-09 17:55:10 > 2007-11-12 07:52:25 > 2007-11-13 07:52:29 > > Alguem tem uma dica de como rodar o job num horario especifico ? > > > > > > - > 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] > > > > > --- > Esta mensagem não implica a assunção de obrigações em nome da > empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em > sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, > replicação ou disseminação desta mensagem ou parte dela é > expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não > é responsável pelo conteúdo ou a veracidade desta informação. > > > > [As partes desta mensagem que não continham texto foram removidas] >
Re: [oracle_br] Acertar horários para Jobs
Ou vc pode usar assim: trunc(sysdate+1)+(17.917/24) Sérgio - Original Message - From: joao batista To: oracle_br@yahoogrupos.com.br Sent: Tuesday, November 13, 2007 12:07 PM Subject: Re: [oracle_br] Acertar horários para Jobs Tente usar o trunc na frente, sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ 11/2007 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; Att, João sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job todos os dias exatamente as 17:55. Criei da seguinte forma : sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); Mas o infeliz executou nos seguintes horarios : 2007-11-08 17:55:05 2007-11-09 17:55:10 2007-11-12 07:52:25 2007-11-13 07:52:29 Alguem tem uma dica de como rodar o job num horario especifico ? - 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] --- Esta mensagem não implica a assunção de obrigações em nome da empresa Irmãos Muffato e Cia Ltda, conforme Contrato Social em sua 3a. Cláusula da 56a. alteração. Qualquer uso não autorizado, replicação ou disseminação desta mensagem ou parte dela é expressamente proibido. A empresa Irmãos Muffato e Cia Ltda não é responsável pelo conteúdo ou a veracidade desta informação. [As partes desta mensagem que não continham texto foram removidas]
[oracle_br] [OFF] - Ajuda com GROUP BY em SQL
Pessoal, tenho uma clausula SQL onde preciso fazer uma agrupamento pelo campo forma de pagamento, mais está me retornando erro, será que alguem poderia me dar uma orientação de como conseguir executar esta query? Estou usando SQL Server, mais como se trata de SQL acho que não haveria problema em pedir ajuda aos amigos de ORACLE. :) SELECT v.* , c.Nome as [Criador] , u.Nome [Unidade] , a.Nome as [Alterador] , ba.Nome AS [Banco] , cli.Nome as [Cliente] , (SELECT COUNT(codItem) FROM Itens_Vendas WHERE codVenda = v.codVenda AND Excluido = 0) AS [QtdeItem] , (SELECT Nome FROM Formas_Pagamento WHERE codFormaPgto = v.codFormaPgto AND Excluido = 0) AS [FormaPgto] , vend.Nome as [Vendedor] , (select codTipoCliente from Clientes where codCliente = v.codCliente AND Excluido=0) AS [codTipoCliente] , (SELECT TOP 1 Comissao FROM Clientes WHERE codCliente = V.codUsuarioCad) AS [Comissao] FROM (((Vendas v LEFT JOIN Clientes c ON v.codUsuarioCad = c.codCliente) INNER JOIN Unidades u ON v.codUnidade = u.codUnidade) LEFT JOIN Clientes a ON v.codUsuarioCad = a.codCliente) LEFT JOIN Clientes cli ON v.codCliente = cli.codCliente) LEFT JOIN Conta_Correntes_Unidades cun ON v.codConta = cun.codConta) LEFT JOIN Bancos ba ON cun.codBanco = ba.codBanco) LEFT JOIN Clientes vend ON v.codVendedor = vend.codCliente) GROUP BY FormaPgto WHERE v.Excluido = 0 ORDER BY v.dtVenda DESC Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! http://br.mail.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas]
Re: [oracle_br] Acertar horários para Jobs
Tente usar o trunc na frente, sys.dbms_job. submit(v_ job, 'PROCEDURE_TAL; ', to_date('08/ 11/2007 17:55:00','dd/ mm/ hh24:mi:ss') , trunc(SYSDATE)+1) ; Att, João sidney_dias2000 <[EMAIL PROTECTED]> escreveu: Preciso rodar um job todos os dias exatamente as 17:55. Criei da seguinte forma : sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); Mas o infeliz executou nos seguintes horarios : 2007-11-08 17:55:05 2007-11-09 17:55:10 2007-11-12 07:52:25 2007-11-13 07:52:29 Alguem tem uma dica de como rodar o job num horario especifico ? - 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]
[oracle_br] Recriar Standby com Dataguard
Pessoal , deu um pau aqui na minha instância standby e vou precisar recria-la ..Tenho procedimento para fazer isso com o RMAN .. Alguém tema algum procedimento de como fazer usando o Dataguard Manger ? Estou acostumado a criar STD na versão STANDARD que não tem o Dataguard .. Alguém pode dar a Dica ? Estou com banco 9.2.0.6 no Ruindows é um STD Físico 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] Ajuda com Memory Notification
Memory Notification: Library Cache Object loaded into SGA Heap size 2198K exceeds notification threshold (2048K) KGL object name :XDB.XDbD/PLZ01TcHgNAgAIIegtw== Oracle:10.2.0 Memoria Ram:4G Sga:1400M Pga:600M O que fazer? O servidor tá lentão!! E a mensagem é só essa. Obrigada -- Elaine C Bastos Silva [EMAIL PROTECTED] Equipe de Suporte - DBA CINBESA Tel: 3084 0704 "O pessimista se queixa do vento. O otimista espera que ele mude. O realista ajusta as velas " William George Ward
ENC: [oracle_br] Como Dimensionar o parametro Open_Cursor ?
Meu caro Wilson Dorigatti, Hoje pela manhã eu estava procurando isso, no AWR tem sim. Vá pelo Enterprise Manager Console, na guia de Performance, em Instance Activity, o primeiro item da lista é cursor. Att, Rodrigo Mufalani -Mensagem original- De: Rodrigo Mufalani [mailto:[EMAIL PROTECTED] Enviada em: segunda-feira, 12 de novembro de 2007 17:15 Para: 'oracle_br@yahoogrupos.com.br' Assunto: RES: [oracle_br] Como Dimensionar o parametro Open_Cursor ? O parâmetro é medido por sessão, então cada conexão tem direito à abrir X cursores durante a sua sessão. O que eu acho que vc deva fazer é rodar a sua query em um horário de uso normal durante alguns dias para tirar uma estatística sobre open_cursors, eu não investiguei a fundo, de repente o AWR tem isso para vc pronto. Ps.: Sua segunda query está mostrando uma porcentagem errada, deveria ser em cima do maior valor de cursores abertos em uma sessão e não do somatório total. Olhe o meu caso: 17:07:41 [EMAIL PROTECTED]>select abertos, maximo, round(100/(maximo/abertos),2) as porcentagem from 17:12:39 2 (select count(*) as abertos from v$open_cursor), 17:12:39 3 (select value as maximo from v$parameter where name= 'open_cursors'); ABERTOS MAXIMO PORCENTAGEM -- -- --- 1817 1300139,77 -Mensagem original- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Wilson Dorigatti Enviada em: segunda-feira, 12 de novembro de 2007 15:37 Para: oracle_br@yahoogrupos.com.br; [EMAIL PROTECTED]; [EMAIL PROTECTED] Assunto: [oracle_br] Como Dimensionar o parametro Open_Cursor ? Boa tarde, Pessoal gostaria de tirar uma duvida sobre quantidade de cursores aberto em um ambiente de produção Oracle 10.2.0.1.0 Linux RedHat V4. Com 4G de RAM rodando uma aplicação em Forms /Report 6i . O intuito é analisar quantos cursores estão abertos no momento e também como dimensiona- los Pesquisando sobre o assunto cheguei a duas consultas que me passaram um parâmetro de quanto devo aumentar. SELECT a.sid,b.USERNAME ,count(*) FROM v$open_cursor a , v$session b where a.sid = b.sid GROUP BY a.sid,b.USERNAME ORDER BY count(*) desc / Com essa consulta consigo ver a quantidades de cursores aberto por Sessão assim o máximo por sessão chega a 500 cursores... e também encontrei outra que me passa os totais de cursores abertos mais o parâmetro atual. select abertos, maximo, round(100/(maximo/abertos),2) as porcentagem from (select count(*) as abertos from v$open_cursor), (select value as maximo from v$parameter where name= 'open_cursors'); Essa consulta me mostra que meu banco de dados tem aberto quase 5000 cursores . gostaria de saber se esse procedimento está correto para analisar as quantidades de cursores abertos em um banco de dados Oracle10G e assim podendo dimensiona- lo adequadamente. - 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] >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
[oracle_br] Acertar horários para Jobs
Preciso rodar um job todos os dias exatamente as 17:55. Criei da seguinte forma : sys.dbms_job.submit(v_job, 'PROCEDURE_TAL;', to_date('08/11/2007 17:55:00','dd/mm/ hh24:mi:ss'), 'SYSDATE+1'); Mas o infeliz executou nos seguintes horarios : 2007-11-08 17:55:05 2007-11-09 17:55:10 2007-11-12 07:52:25 2007-11-13 07:52:29 Alguem tem uma dica de como rodar o job num horario especifico ?
[oracle_br] OPEN_CURSORS
Chiappa / Rodrigo Mufalani Obrigado por me ajudar... Realmente acredito que o problema no meu caso é uma aplicação defeituosa pois conforme minhas statisticas consultadas nos ultimos dias cheguei em uma media de 5.000 cursores abertos para 13 usuarios atualmente ,Gostaria de saber mais uma coisa se possivel. Quando os programadores desenvolve uma procedure que abre +10 cursores esses cursores ja estão incluso na Contagen por sessão* ? e quando termina de rodar a procedure a mesma quantidade de cursores devera ser- 10 sendo que a aplicação levando se em conta que foi desenvolvida corretamente. Pois cheguei hoje na empresa e consultei quantos usuarios tinha no sistema somente 1 eu , e a contagen total dos cursores erá 4.000 mil acredito que a aplicação deve ter um monte de cursores aberto e não são fechados isso é possivel como erro de programadores ?. Se a resposta for (Sim) estarei fazendo uma auditoria para ver em que ponto do sistema isso ocorrei com frequencia se não aceito sugestãoes ***Contagen por sessão *** SELECT a.sid,b.USERNAME ,count(*) FROM v$open_cursor a , v$session b where a.sid = b.sid GROUP BY a.sid,b.USERNAME ORDER BY count(*) desc * Contagem total *** select abertos, maximo, round(100/(maximo/abertos),2) as porcentagem from (select count(*) as abertos from v$open_cursor), (select value as maximo from v$parameter where name= 'open_cursors'); === É, colocar OPEN_CURSORS num valor inicialmente bem alto (digamos, 2000 ou 3000) e consultar as estatísticas de cursors cfrme o sistema é usado é o caminho, só acrescento que ** não ** basta vc consultar uma vez só num horário normal, vc DEVERIA consultar várias e várias vezes, inclusive checando também se os cursores diminuem quando as aplicações vão sendo fechadas, SE a qtdade de cursores abertos só cresce e cresce, vc tem uma aplicação DEFEITUOSA , com um ENORME bug, vc pode botar alto o quanto quiser OPEN_CURSORS que cedo ou tarde esgotarão nesse caso... Eu também ainda não pesquisei a AWR, mas ** lembro ** que as estats da V$OPEN_CURSOR são *** ENGANADORAS **, elas NÂO LEVAM EM CONTA caches e quetais, então a maneira correta de se consultar é mesmo com a V$nnnSTATS, cfrme http://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:553222846752#4586487531583 []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Rodrigo Mufalani" <[EMAIL PROTECTED]> escreveu > > > O parâmetro é medido por sessão, então cada conexão tem direito à abrir X > cursores durante a sua sessão. > > O que eu acho que vc deva fazer é rodar a sua query em um horário de uso > normal durante alguns dias para tirar uma estatística sobre open_cursors, eu > não investiguei a fundo, de repente o AWR tem isso para vc pronto. > > Ps.: Sua segunda query está mostrando uma porcentagem errada, deveria ser em > cima do maior valor de cursores abertos em uma sessão e não do somatório > total. Olhe o meu caso: > > 17:07:41 [EMAIL PROTECTED]> select abertos, maximo, > round(100/(maximo/abertos),2) as porcentagem from > 17:12:39 2 (select count(*) as abertos from v$open_cursor), > 17:12:39 3 (select value as maximo from v$parameter where name= > 'open_cursors'); > > ABERTOS MAXIMO PORCENTAGEM > -- -- --- > 1817 1300 139,77 > > > > > -Mensagem original- > De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em > nome de Wilson Dorigatti > Enviada em: segunda-feira, 12 de novembro de 2007 15:37 > Para: oracle_br@yahoogrupos.com.br; [EMAIL PROTECTED]; > [EMAIL PROTECTED] > Assunto: [oracle_br] Como Dimensionar o parametro Open_Cursor ? > > Boa tarde, > > Pessoal gostaria de tirar uma duvida sobre quantidade de cursores aberto > em um ambiente de produção Oracle 10.2.0.1.0 Linux RedHat V4. Com 4G de RAM > rodando uma aplicação em Forms /Report 6i . O intuito é analisar quantos > cursores estão abertos no momento e também como dimensiona- los > > Pesquisando sobre o assunto cheguei a duas consultas que me passaram um > parâmetro de quanto devo aumentar. > > SELECT a.sid,b.USERNAME ,count(*) > FROM v$open_cursor a , v$session b > where a.sid = b.sid > GROUP BY a.sid,b.USERNAME > ORDER BY count(*) desc > / > Com essa consulta consigo ver a quantidades de cursores aberto por Sessão > assim o máximo por sessão chega a 500 cursores... e também encontrei outra > que me passa os totais de cursores abertos mais o parâmetro atual. > > select abertos, maximo, round(100/(maximo/abertos),2) as porcentagem > from > (select count(*) as abertos from v$open_cursor), > (select value as maximo from v$parameter where name= 'open_cursors'); > > Essa consulta me mostra que meu banco de dados tem aberto quase 5000 > cursores . > gostaria de saber se esse procedimento está correto para analisar as > quantidades de cursores abertos em um banco de dados Oracle10G e assim > podendo dimensiona- lo adequadamente. > > > >
Re: [oracle_br] Re: Ajuda
chiapa, fico muito agredecido por seu tempo. realmente os datafiles estão aqui, os control e tudo mais. existem erros bastante acentuados, muito graves, pois este hd passou pelas mãos de técnicos que chegaram a dizer que o problema era de disco com defeito. Realmente será uma tarefa árdua e longa, pois o banco é muito grande. 40 GB. estou fazendo backus desse hd antes de começar o trabalho. o detalhe é que a empresa proprietária desse hd é referência no ramo de distribuidoras de medicamentos em goiás. é coisa séria mesmo. pra vc ter uma idéia, são 7 anos de vida dentro desse hd. obrigado pelas dicas, e, felizmente, eu consegui o cd oracle 8.1.7 com a propria empresa. Obrigado - Original Message - From: jlchiappa To: oracle_br@yahoogrupos.com.br Sent: Monday, November 12, 2007 8:28 PM Subject: [oracle_br] Re: Ajuda Eduardo, ** desconheço ** versão 9.0.2, assumirei que na verdade é versão 9.2.0, mas de qquer maneira, observa-se que : a) um banco Oracle é composto (no mínimo) por datafiles + controlfiles + initfiles + redo log files a cada versão, esse hd tem TODOS esses arqs ? SE não, é ** lixo informata ** o que vc tem em mãos, tal como qquer latão de lixo EM TESE vc pode "mergulhar" nele e ver o que dá pra salvar, mas não é fácil nem rápido nem limpo... b) os arqs de um banco Oracle são CONSTANTEMENTE lidos e gravados em background, mesmo quando não há NENHUM usuário ativo : vc tem CERTEZA que os arqs desse hd foram copiados com o banco baixado, OU se não se banco em modo archive os archived logs estão junto ??? Cópia de arqs de um banco NOARCHIVE ativo SÓ PODE resultar em lixo informata, de novo... c) a cada novo patch, o formato dos arquivos do banco *** PODE SIM *** mudar, então em princípio vc TEM QUE abrir um banco com a MESMA versão ** EXATA ** de binário que criou os arqs todos... Da mesma forma, a EDIÇÃO conta também - mesmo numa dada versão, em tese os arqs de um banco Enterprise podem ser diferentes de um banco de mesma versão mas Standard... Assim, é quase 100% garantido que vc NÃO poderá abrir arqs versão 8i com binários 9i, PONTO. A maneira GARANTIDA e RECOMENDADA de vc abrir um banco Oracle , DESDE QUE todos os reqs acima estejam OK é, numa máquina de MESMO SISTEMA OPERACIONAL em que ele foi criado, tendo acessíveis TODOS os arqs necessários, vc ter instalado a MESMA VERSÃO EXATA de binários que criou o banco, é isso : em vc tendo Contrato de Suporte prum software Oracle qquer, basta vc abrir um chamado no Suporte da Oracle que eles te enviam CDs com versão de qquer banco pra qquer SO que já existiu, sendo Oracle >= 7.3.x. O que vc PODE TENTAR, se não puder por qquer motivo obter os binários 8i, E SE o banco está fechado e íntegro (ie, todos os reqs acima foram atendidos) , é ter os binários 9i instalados e tentar uma MIGRAÇÃO desse banco 8i, o manual "Oracle9i Database Migration Release 2 (9.2)" cap. 3 - Upgrading a Database to the New Oracle9i Release mostra os detalhes. []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Eduardo Nunes De Souza Seixas" <[EMAIL PROTECTED]> escreveu > > Caros > > Tenho um hd com o banco oracle 8.1.7 (linux), e preciso recuperar esse banco > e depois fazer um exm (gerar dm). > Mas a questão é que não tenho o cd oracle 8.1.7. > Eu tenho o 9.0.2 > > Gostaria de saber se eu conseguiria recuperar os dados desse banco 8.1.7 usando o 9.0.2. > > Fico grato. > > Eduardo Seixas > > > > > [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: Ajuda
- Original Message - From: Eduardo Nunes De Souza Seixas To: oracle_br@yahoogrupos.com.br Sent: Monday, November 12, 2007 11:19 AM Subject: Ajuda Caros Tenho um hd com o banco oracle 8.1.7 (linux), e preciso recuperar esse banco e depois fazer um exm (gerar dm). Mas a questão é que não tenho o cd oracle 8.1.7. Eu tenho o 9.0.2 Gostaria de saber se eu conseguiria recuperar os dados desse banco 8.1.7 usando o 9.0.2. Fico grato. Eduardo Seixas [As partes desta mensagem que não continham texto foram removidas]