RE: [oracle_br] Ler atributo de xml

2014-05-14 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Jeyvisonn,




Utilize como o exemplo abaixo:




  SELECT
ExtractValue(Xmltype(Entrada),'/EntradaExyon_02/MatricUsuario')  AS 
Matric,
ExtractValue(Xmltype(Entrada),'/EntradaExyon_02/CPF')AS CPF,
ExtractValue(Xmltype(Entrada),'/EntradaExyon_02/Usuario')AS 
Usuario,
ExtractValue(Xmltype(Entrada),'/EntradaExyon_02/Senha')  AS 
Senha
FROM dual;


Onde entrada é a string variable .


Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
jeyvis...@hotmail.com [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quarta-feira, 14 de maio de 2014 16:18
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Ler atributo de xml






Pessoal, boa tarde.




Tenho o xml na forma:




Application


Page width='768'


Row pageSection='pageheader' height='162'


CAMPO_TEXTO id='1'teste/CAMPO_TEXTO 


CAMPO_TEXTO2 id='2'teste/CAMPO_TEXTO2


CAMPO_TEXTO3 id='3'teste/CAMPO_TEXTO3 


/Row


/page


application




Eu preciso percorrer o xml e pegar o valor do atributo ID de todos os campos. O 
Problema é que os campos nem sempre tão dessa forma em relação à quantidade  e 
ordenação.




Alguém me dá uma força? Abração e vlw.




Oracle Database 10g Release 10.2.0.5.0 - 64bit Production


PL/SQL Release 10.2.0.5.0 - Production


CORE 10.2.0.5.0 Production


TNS for Linux: Version 10.2.0.5.0 - Production


NLSRTL Version 10.2.0.5.0 - Production








RE: [oracle_br] Query resultados diferentes

2014-09-03 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
​Verifique se a query não acessar uma view onde o usuário é utilizado no WHERE.


Att.


Sérgio.


De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] 
oracle_br@yahoogrupos.com.br
Enviado: quarta-feira, 3 de setembro de 2014 18:06
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Query resultados diferentes



usuário sys tb só retorna uma linha.
O único usuário que retorna 26 linhas é o próprio usuário(owner) dos objetos 
envolvidos na consulta.


Em qua, 3/9/14, Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] 
oracle_br@yahoogrupos.com.br escreveu:

Assunto: Re: [oracle_br] Query resultados diferentes
Para: oracle_br@yahoogrupos.com.br
Data: Quarta-feira, 3 de Setembro de 2014, 18:00












Oi vitor, obrigado pelo retorno.

Acabei de verificar, só existem 5 sinonimos do tipo publico
e que não fazem referencia a nenhuma tabela da consulta.





Em qua, 3/9/14, Vitor Junior vitorj...@gmail.com [oracle_br]
oracle_br@yahoogrupos.com.br escreveu:



Assunto: Re: [oracle_br] Query resultados diferentes

Para: oracle_br@yahoogrupos.com.br
oracle_br@yahoogrupos.com.br

Data: Quarta-feira, 3 de Setembro de 2014, 17:47

























Verifica se teu

usuário dba não está consultando um sinônimo com o
mesmo

nome da tabela do schema, mas que aponta pra outra

tabela.











Att,/Regards,





Vitor Jr.

Infraestrutura / Infrastructure Team

Oracle 11g DBA Certified Professional -

OCP

Oracle Certified Expert, Oracle

Real Application Clusters 11g and Grid Infrastructure

Administrator - OCE

Oracle Database 11g Performance

Tuning Certified Expert - OCE





Oracle Exadata 11g

Certified Implementation Specialist

Oracle Certified Associate,

MySQL 5

mail, gtalk e msn: vitorj...@gmail.com





http://certificacaobd.com.br/

skype: vjunior1981https://mybizcard.co/vitor.jr.385628









Em 3 de setembro de 2014

17:41, Rafael Mendonca raffaell.t...@yahoo.com

[oracle_br] oracle_br@yahoogrupos.com.br

escreveu:























































Senhores, boa tarde.



Tenho uma consulta que eu logado com o usuário do
próprio

schema( dos objetos que a consulta faz referêcia) me
traz

um retorno de 26 linhas.



Mas quando logo com meu usuário com permissão de DBA
me

traz apenas 1 linha.







ALguém pode ajudar a matar a xarada?







SE alguém precisar da consulta posso colocar aqui.







































































#yiv8151081114 #yiv8151081114 --

#yiv8151081114ygrp-mkp {

border:1px solid #d8d8d8;font-family:Arial;margin:10px

0;padding:0 10px;}



#yiv8151081114 #yiv8151081114ygrp-mkp hr {

border:1px solid #d8d8d8;}



#yiv8151081114 #yiv8151081114ygrp-mkp #yiv8151081114hd {

color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px

0;}



#yiv8151081114 #yiv8151081114ygrp-mkp #yiv8151081114ads
{

margin-bottom:10px;}



#yiv8151081114 #yiv8151081114ygrp-mkp .yiv8151081114ad {

padding:0 0;}



#yiv8151081114 #yiv8151081114ygrp-mkp .yiv8151081114ad p
{

margin:0;}



#yiv8151081114 #yiv8151081114ygrp-mkp .yiv8151081114ad a
{

color:#ff;text-decoration:none;}

#yiv8151081114 #yiv8151081114ygrp-sponsor

#yiv8151081114ygrp-lc {

font-family:Arial;}



#yiv8151081114 #yiv8151081114ygrp-sponsor

#yiv8151081114ygrp-lc #yiv8151081114hd {

margin:10px

0px;font-weight:700;font-size:78%;line-height:122%;}



#yiv8151081114 #yiv8151081114ygrp-sponsor

#yiv8151081114ygrp-lc .yiv8151081114ad {

margin-bottom:10px;padding:0 0;}



#yiv8151081114 #yiv8151081114actions {

font-family:Verdana;font-size:11px;padding:10px 0;}



#yiv8151081114 #yiv8151081114activity {

background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}



#yiv8151081114 #yiv8151081114activity span {

font-weight:700;}



#yiv8151081114 #yiv8151081114activity span:first-child {

text-transform:uppercase;}



#yiv8151081114 #yiv8151081114activity span a {

color:#5085b6;text-decoration:none;}



#yiv8151081114 #yiv8151081114activity span span {

color:#ff7900;}



#yiv8151081114 #yiv8151081114activity span

.yiv8151081114underline {

text-decoration:underline;}



#yiv8151081114 .yiv8151081114attach {

clear:both;display:table;font-family:Arial;font-size:12px;padding:10px

0;width:400px;}



#yiv8151081114 .yiv8151081114attach div a {

text-decoration:none;}



#yiv8151081114 .yiv8151081114attach img {

border:none;padding-right:5px;}



#yiv8151081114 .yiv8151081114attach label {

display:block;margin-bottom:5px;}



#yiv8151081114 .yiv8151081114attach label a {

text-decoration:none;}



#yiv8151081114 blockquote {

margin:0 0 0 4px;}



#yiv8151081114 .yiv8151081114bold {

font-family:Arial;font-size:13px;font-weight:700;}



#yiv8151081114 .yiv8151081114bold a {

text-decoration:none;}



#yiv8151081114 

RE: [oracle_br] Resultado lado á lado

2014-09-04 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
?Tente algo do tipo.


SELECT DTSAIDA,
   SUM(
   CASE SERIE
 WHEN 'CF' THEN
  VLTOTAL
 ELSE
 0
   END) CF,
   SUM(
   CASE SERIE
 WHEN 'CF' THEN
  0
 ELSE
 VLTOTAL
   END) NOCF
FROM PCNFSAID N

WHERE 1=1
AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'
GROUP BY DTSAIDA
ORDER BY DTSAIDA


Abs.


Sérgio.





De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Eduardo Perdomo panc...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 4 de setembro de 2014 14:30
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Resultado lado á lado






Boa tarde.


Como colocar os dois resultados abaixo , lado à lado no mesmo select :






SELECT DTSAIDA, SUM(VLTOTAL)


FROM PCNFSAID N


WHERE 1=1


AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'


AND SERIE = 'CF'


GROUP BY DTSAIDA


ORDER BY DTSAIDA


;


SELECT DTSAIDA, SUM(VLTOTAL)


FROM PCNFSAID N


WHERE 1=1


AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'


AND SERIE  'CF'


GROUP BY DTSAIDA


ORDER BY DTSAIDA


;




--


Eduardo Perdomo
Consultor de Implantação
Grupo PC Sistemas - www.grupopc.com.brhttp://www.grupopc.com.br
(21) 6845-8592
panc...@gmail.commailto:panc...@gmail.com
eduardo.perd...@pcinformatica.com.brmailto:eduardo.perd...@pcinformatica.com.br
Blog: eduardo.perdomo.nom.brhttp://eduardo.perdomo.nom.br






RE: [oracle_br] Resultado lado á lado

2014-09-04 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Eduardo?,




No exemplo do Valtemir há um erro pois no where tem um AND SERIE = 'CF' não 
funcionaria mas no exemplo meu e do Chiappa?, funcionaria.




Verifique se você não deixou no where a serie.




Abs.




Sérgio.



De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Eduardo Perdomo panc...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 4 de setembro de 2014 15:59
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Resultado lado á lado






Todos os exemplos funcionam com as devidas alterações.
Mas não funcionou pra mim por que o campo série tem números e letras.
Quando é letras funciona, quando é numero não soma, em nenhum exemplo.
:-(




Em 4 de setembro de 2014 15:42, Valtemir Araujo de Lima 
valte...@govesa.com.brmailto:valte...@govesa.com.br [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br escreveu:


Creio q o decode tambem atende:


SELECT trunc(DTSAIDA) data, SUM(decode(SERIE, 'CF', VLTOTAL, 0)) SERIE_CF, 
SUM(decode(SERIE, 'CF', 0, VTOTAL)) OUTRAS_SERIES
FROM PCNFSAID N
WHERE 1=1
AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'
AND SERIE = 'CF'
GROUP BY trunc(DTSAIDA)
ORDER BY 1


De: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
[mailto:oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br]
Enviada em: quinta-feira, 4 de setembro de 2014 15:33
Para: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br

Assunto: RE: [oracle_br] Resultado lado á lado






Obrigado a todos.vou testar e reporto o resultado.
Em 04/09/2014 15:24, Sérgio Luiz Rodrigues Chaves 
sergio.cha...@elumini.com.brmailto:sergio.cha...@elumini.com.br [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br escreveu:




?Tente algo do tipo.
SELECT DTSAIDA,
   SUM(
   CASE SERIE
 WHEN 'CF' THEN
  VLTOTAL
 ELSE
 0
   END) CF,
   SUM(
   CASE SERIE
 WHEN 'CF' THEN
  0
 ELSE
 VLTOTAL
   END) NOCF
FROM PCNFSAID N
WHERE 1=1
AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'
GROUP BY DTSAIDA
ORDER BY DTSAIDA


Abs.


Sérgio.







De: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br em nome de 
Eduardo Perdomo panc...@gmail.commailto:panc...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 4 de setembro de 2014 14:30
Para: oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Resultado lado á lado




Boa tarde.


Como colocar os dois resultados abaixo , lado à lado no mesmo select :






SELECT DTSAIDA, SUM(VLTOTAL)


FROM PCNFSAID N


WHERE 1=1


AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'


AND SERIE = 'CF'


GROUP BY DTSAIDA


ORDER BY DTSAIDA


;


SELECT DTSAIDA, SUM(VLTOTAL)


FROM PCNFSAID N


WHERE 1=1


AND DTSAIDA BETWEEN '01/SEP/2014' AND '10/SEP/2014'


AND SERIE  'CF'


GROUP BY DTSAIDA


ORDER BY DTSAIDA


;




--


Eduardo Perdomo
Consultor de Implantação
Grupo PC Sistemas - www.grupopc.com.brhttp://www.grupopc.com.br
(21) 6845-8592
panc...@gmail.commailto:panc...@gmail.com
eduardo.perd...@pcinformatica.com.brmailto:eduardo.perd...@pcinformatica.com.br
Blog: eduardo.perdomo.nom.brhttp://eduardo.perdomo.nom.br






--


Eduardo Perdomo
Consultor de Implantação
Grupo PC Sistemas - www.grupopc.com.brhttp://www.grupopc.com.br
(21) 6845-8592
panc...@gmail.commailto:panc...@gmail.com
eduardo.perd...@pcinformatica.com.brmailto:eduardo.perd...@pcinformatica.com.br
Blog: eduardo.perdomo.nom.brhttp://eduardo.perdomo.nom.br






Re: [oracle_br] Permissões

2015-03-27 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Boa tarde Caio,




Verifique se não existe um objeto (table, View) com o nome no usuario 
GLU_CONSULTA? em produção.




Att.




Sérgio.



De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de Caio 
marquez caio.marq...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: sexta-feira, 27 de março de 2015 12:12
Para: oracle...@yahoogroups.com
Assunto: [oracle_br] Permissões






Boa tarde.


Cenário: Oracle 11gR2




Estrou enfrentando problemas em relação aos privilégios de um determinado 
usuário de banco.


Os usuários estão reclamando que o user de banco GLU_CONSULTA em ambiente de 
DESENVOLVIMENTO, não possui as mesmas permissões que o user GLU_CONSULTA em 
ambiente de PRODUÇÃO.




Fiz o seguinte teste conectando com o usuário GLU_CONSULTA:


AMbiente de produção:


Select * from tabela; (onde o owner da tabela é de um outro schema)


O select me trouxe os dados.




AMbiente de produção:


SElect * from tabela; (onde o owner da tabela é de um outro schema)


ORA-00942: table or view does not exist






Conferi as permissões e verifiquei que estão idênticas em ambiente de produção 
e desenvolvimento:


  SELECT granted_role,admin_option,default_role
 FROM dba_role_privs
 WHERE grantee=UPPER('GLU_CONSULTA')
 ORDER BY 1;
 PROMPT Table Privileges granted to a user through roles
 SELECT granted_role, owner, table_name, privilege
 FROM ( SELECT granted_role
 FROM dba_role_privs WHERE grantee=UPPER('GLU_CONSULTA')
 UNION
 SELECT granted_role
 FROM role_role_privs
 WHERE role in (SELECT granted_role
 FROM dba_role_privs WHERE grantee=UPPER
 ('GLU_CONSULTA')
 )
 ) roles, dba_tab_privs
 WHERE granted_role=grantee
 ORder by 1,2,3,4;
 PROMPT System Privileges assigned to a user through roles
 SELECT granted_role, privilege
 FROM ( SELECT granted_role
 FROM dba_role_privs WHERE grantee=UPPER('GLU_CONSULTA')

 UNION
 SELECT granted_role
 FROM role_role_privs
 WHERE role in (SELECT granted_role
 FROM dba_role_privs WHERE grantee=UPPER
 ('GLU_CONSULTA')
 )

 ) roles, dba_sys_privs
 WHERE granted_role=grantee
 ORDER BY 1,2;
 PROMPT Table privileges assigned directly to a user
 SELECT owner, table_name, privilege
 FROM dba_tab_privs
 WHERE grantee=UPPER('GLU_CONSULTA')
 ORDER BY 1,2,3;
 PROMPT System privileges assigned directly to a user
 SELECT privilege, admin_option
 FROM dba_sys_privs
 WHERE grantee=UPPER('GLU_CONSULTA');




´Também verifiquei que tanto no ambiente de produção e desenvolvimento possuem 
os mesmos synonimos, gostaria de saber se existe mais alguma coisa que eu possa 
investigar, pois as permissões são idênticas e os synonymos também.










Re: [oracle_br] Indice com Função

2015-03-19 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
?Igor,




Imagino que sua base seja 11g ou 12c, PODE SIM.




Att.




Sérgio.



De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de Igor 
Alves igor.al...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 19 de março de 2015 09:51
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Indice com Função






Estou com uam duvida, se algum de vocês puderem me auxiliar agradeceria, estou 
criando indice na base e sei que o oracle permite criar indice com base em 
funções ex:create index fbi_produto on produto (SUBSTR(NOME,3,1));


Se posso criar o mesmo indice com um campo sendo função e o outro não, ex:
create index fbi_produto on produto (SUBSTR(NOME,3,1),DAT_NASCIMENTO);




Igor Alves
Cientista da Computação pela Faculdade Ruy Barbosa - FRB
Especialista em Banco de Dados com Ênfase em Alta Disponibilidade - UNIFACS


Tel: (11) 95192-7114(TIM)
Skype:igor.alvez
Linkedin:http://br.linkedin.com/in/igoralves






Re: [oracle_br] Bind Variables na cláusula IN

2015-08-18 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Paulo,




Utilize:


 select regexp_substr(replace('#22#19#30#35#40#','#',','),'[^,]+', 1, level) 
from dual


 connect by regexp_substr(replace('#22#19#30#35#40#','#',','), '[^,]+', 1, 
level) is not null;






Abs.




Sérgio chaves.





De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Andre Santos andre.psantos...@gmail.com [oracle_br] 
oracle_br@yahoogrupos.com.br
Enviado: terça-feira, 18 de agosto de 2015 16:47
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Bind Variables na cláusula IN






Paulo


Isso que você comentou, é bem provável que tenha sido feito com LIKE (ao invés 
do operador IN).
Partindo do seu exemplo: ... codfornec in ('#22#19#30#35#40#')
Seria algo +/- assim: ... '#22#19#30#35#40#' LIKE '%#' || codfornec || '#%'


Mas pagaria um preço em performance e escalabilidade... talvez ficando 
inviável, dependendo do contexto.


[ ]'s


André




Em 18 de agosto de 2015 15:11, 
jlchia...@yahoo.com.brmailto:jlchia...@yahoo.com.br [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br escreveu:




Paulo, essa sintaxe de valores separados por # ** COM CERTEZA ** não é aceita 
pelo RDBMS Oracle, que é o tópico-fim aqui do grupo - isso parece coisa de 
postgre... afaik no RDBMS Oracle é mesmo OU se ter os valores numa tabela e 
usar sub-query OU se escrever uma proc que abra os valores dentro da string, 
cfrme mostrei em msg anterior...


 []s


Chiappa


 OBS : me recuso a usar porquices tipo montar um SQL dinâmico com os valores 
extraídos da string separada por vírgula, então nem comento essa 
possibilidade...








Re: [oracle_br] NLS_CHARACTERSET

2015-08-21 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]


Ednilson,


Verifique em 
http://docs.oracle.com/cd/B28359_01/server.111/b28298/ch11charsetmig.htm#NLSPG011


http://docs.oracle.com/cd/B28359_01/server.111/b28298/ch11charsetmig.htm#NLSPG011At.


Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Ricardo Arnoud ricardo...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 20 de agosto de 2015 11:27
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] NLS_CHARACTERSET






Qual versão do Banco, S.O, Tamanho do Banco, e o que motivou isto?


2015-08-20 11:26 GMT-03:00 'Ednilson Silva' 
ednilson.si...@jbs.com.brmailto:ednilson.si...@jbs.com.br [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br:




Pessoal,


Como posso alterar o NLS_CHARACTERSET de AL32UTF8 para WE8MSWIN1252?


Somente Export, Drop Database, Create Database e Import?






Grato,


Ednilson Silva






--
--
Thanks,
Ricardo Arnoud


Bacharel em Ciência da Computação - 2013/1


[http://www.alterdatabaseopen.com/certview/ocs_ocp_12c.png]


[http://t3.gstatic.com/images?q=tbn:ANd9GcT0Ecf82fSufcHNuJjBbZY5x1zjIJNEFTr0dIQ9oa9H6Oj7w3u3]
  [http://nicollasneves.files.wordpress.com/2010/11/mcprgb_tr_web.gif]


(51) 8205-4658 TIM / (51) 9259-2333 CLARO / Porto Alegre - RS
http://www.ricardoarnoud.com
http://www.alterdatabaseopen.com
FB http://www.facebook.com/ricardo.arnoud
Linkedin http://br.linkedin.com/pub/ricardo-arnoud/15/127/3b1






Re: [oracle_br] Existe alguma função para agrupar por intervalo de dias ?

2015-08-14 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Thiago,




Seja se o código abaixo pode ser útil para você.




variable DataInicial   varchar2(30)


variable DataFinal varchar2(30)


variable DiasdoPeríodo Number


variable Diasentreosperíodos   Number


exec :DataInicial := '01/01/2015';


exec :DataFinal   := '31/01/2015';


exec :DiasdoPeríodo := 5;


exec :Diasentreosperíodos := 2;


WITH datas  As (


select distinct next_day(to_date(:DataInicial,'DD/MM/') - 2 + level, 
'Quinta-Feira ') Data1,   next_day(to_date(:DataInicial,'DD/MM/') - 2 + 
level, 'Quinta-Feira ')  +5   Data2


from


dual


connect by level  ((last_day(to_date(:DataFinal,'DD/MM/'))  - 
to_date(:DataInicial,'DD/MM/')))


order by 1 asc)


select count(*), datas.data1


from datas, Dba_objects t


where t.last_ddl_time between datas.data1 and datas.data2


group by datas.data1


/






Sérgio





De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
Tiago de Assis Pimenta tiagopime...@ymail.com [oracle_br] 
oracle_br@yahoogrupos.com.br
Enviado: sexta-feira, 14 de agosto de 2015 11:35
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Existe alguma função para agrupar por intervalo de 
dias ?






Rodrigo,


Eu pensei em algo que pudesse usar com o over partition by


Att.







Em Sexta-feira, 14 de Agosto de 2015 9:30, Rodrigo Mufalani 
rodr...@mufalani.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu:






Bom dia Tiago,


  Eu não sei se entendi o seu problema, veja se isso lhe atende:


 select count(1)||' Qtd reg periodo inicial' Relatorio
 from dba_hist_active_sess_history
 where sample_time between to_date('01/08/15','dd/mm/rr') and 
to_date('01/08/15','dd/mm/rr') +5
 union all
 select count(1)||' Qtd reg periodo final '
 from dba_hist_active_sess_history
 where sample_time between to_date('14/08/15','dd/mm/rr') and 
to_date('14/08/15','dd/mm/rr') -2


RELATORIO

72021 Qtd reg periodo inicial
0 Qtd reg periodo final


Atenciosamente,


Rodrigo Mufalani
Database Consultant
+55 XX(21) 3193-0326
rodr...@mufalani.com.brmailto:rodr...@mufalani.com.br
www.mufalani.com.br


Stop guessing... Be Sure... Because performance matters


Em 14/08/2015, à(s) 09:12, Tiago de Assis Pimenta 
tiagopime...@ymail.commailto:tiagopime...@ymail.com [oracle_br] 
oracle_br@yahoogrupos.com.brmailto:oracle_br@yahoogrupos.com.br escreveu:




Pessoal, boa tarde.


Gostaria de saber se existe alguma função (Provavelmente Analítica) que possa 
me ajudar no seguinte problema. Preciso gerar um relatório, onde o usuário irá 
informar 4 parâmetros (Data Inicial, Quantidade de Dias do Período, Quantidade 
de Dias entre os Períodos e a Data Final) e o relatório dará a quantidade de 
registros antes da data inicial e a quantidade de registros de cada período até 
a data final, exemplo:


Data Inicial: 01/01/2015
Dias do Período: 5
Dias entre os períodos: 2
Data Final: 31/01/2015


Então nesse exemplo, eu precisaria retornar a quantidade de registros antes do 
dia 01/01/2015, a quantidade de registros de 01/01/2015 até 06/01/2015 (Dt 
Inicial + 5), a quantidade de registros de 08/01/2015 (6 + 2) até 13/01/2015 e 
assim até a data final.


Até agora, a única ideia que tivemos, foi de criar uma função que através de um 
loop, cria-se uma estrutura com os períodos (Semanas) para posteriormente fazer 
um join com a tabela, mas acredito eu, que se tiver uma função que faça isso, 
será mais performática do que a solução que pensamos.


Att.














Re: [oracle_br] Delete de Milhões de linhas

2015-07-16 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Alexssandro,




Verifique a opção de exportar a tabela e importa-la novamente com a clausula 
WHERE.




Veja em 
www.dba-oracle.com/t_impdp_where_clause_query.htmhttp://www.dba-oracle.com/t_impdp_where_clause_query.htm.


http://dbaforums.org/oracle/index.php?showtopic=23416




Att.




Sérgio.


import (impdp) with where clause Tips
import (impdp) with where clause Tips
Leia mais...http://www.dba-oracle.com/t_impdp_where_clause_query.htm









De: oracle_br@yahoogrupos.com.br oracle_br@yahoogrupos.com.br em nome de 
alexssandro0...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br
Enviado: quinta-feira, 16 de julho de 2015 13:23
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Delete de Milhões de linhas






Ops...


Pessoal, esqueci de colocar aqui a versão do Oracle.
11.0.2.0.4 Standard Edition.


Desta forma minhas opções são limitadas.
Sem particionamento etc..






Re: [oracle_br] Re: Registros deletados...

2015-10-14 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Boa noite Cristiano




Não lembro se no 10g, mas você pode verificar..




Veja também o FLASHBACK.


Query:




SELECT xid, operation, start_scn, commit_scn, logon_user, undo_sql
  FROM flashback_transaction_query




Pode ser útil.




Sérgio.





De: oracle_br@yahoogrupos.com.br  em nome de 
jlchia...@yahoo.com.br [oracle_br] 
Enviado: terça-feira, 13 de outubro de 2015 22:42
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Re: Registros deletados...






Opa, tranquilo ? Tua resposta é simplérrima, e é : SEM AUDITORIA de algum tipo 
não tem como vc, de forma 100% precisa, sem a menor chance de perder algo, de 
descobrir quando as linhas foram deletadas, e muito menos por quem...
 Antes que vc receba a (provável!) chuva de respostas indicando o LOG MINER, 
lembro que :


 a. essa opção Exige que vc tenha os archived redo logs TODINHOS disponíveis,E 
que vc os mande prum banco qquer (ou mesmo pro banco que os originou) para que 
vc os possa MINERAR via log miner : dá uma olhada no manual "10g Release 2 
(10.2) / Data Warehousing
Database Utilities" no cap. 17 - Using LogMiner to Analyze Redo Log Files, e 
nos bons sites de referência (como 
http://www.idevelopment.info/data/Oracle/DBA_tips/LogMiner/LOGMINER_15.shtml ou 
https://oracle-base.com/articles/8i/logminer#QueryingLogInfo, entre N outros) 
para exemplos e refs, mas Óbvio, nem preciso dizer que o trabalho envolvido vai 
ser CAVALAR, pois um sistema Ativo de Produção (como parece ser o seu) pode 
gerar muitos Gigabytes de redo por dia... É coisa de louco manso mesmo...


e


  b. o principal, que me faz Suspeitar do logminer para o seu caso : cfrme a 
Documentação mesmo cita (e diversas fontes, como 
https://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:4635285328580
 confirmam) na sua forma mais básica, no REDO só vai o statement (ie, se 
DELETE, INSERT, UPDATE) e o código do objeto, tipo DELETE FROM object#1234, 
isso NÂO vai te dizer o que vc quer... Para vc obter a info completa, vc TEM 
que estar com o SUPPLEMENTAL LOGGING ativo, e se AUDIT pro seu ambiente vc já 
considera  custoso, duvi-de-o-dó que vc tenha Supplemental Logging ativo...


  []s


Chiappa






Re: [oracle_br] Tamanho Banco Dados.

2015-12-14 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Apesar de você não informar qual é seu ambiente...




Veja se a query abaixo lhe ajuda:




SPOOL /tmp/output.txt
SET HEADING OFF
SET MARKUP HTML ON SPOOL ON PREFORMAT OFF
select   x.name database, sum("UsedMB") "Used MB", sum("FreeMB") "Free MB", 
sum("TotalMB") "Total MB"
from (select df.tablespace_name "Tablespace",
totalusedspace "UsedMB",
(df.totalspace - tu.totalusedspace) "FreeMB",
df.totalspace "TotalMB",
round(100 * ( (df.totalspace - tu.totalusedspace)/ df.totalspace))
"Pct. Free"
from
(select tablespace_name,
round(sum(bytes) / 1048576) TotalSpace
from dba_data_files
group by tablespace_name) df,
(select round(sum(bytes)/(1024*1024)) totalusedspace, tablespace_name
from dba_segments
group by tablespace_name) tu
where df.tablespace_name = tu.tablespace_name),
(select name from v$database) x
group by x.name


Se tiver ASM, veja com :




select group_number,
name, type,
total_mb,
free_mb,
required_mirror_free_mb,
usable_file_mb,
offline_disks,
compatibility,
database_compatibility,
voting_files
 from v$ASM_DISKGROUP;






Att.




Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br  em nome de 
Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] 

Enviado: segunda-feira, 14 de dezembro de 2015 13:41
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Tamanho Banco Dados.






Faca um sum na coluna bytes da dba_segments... Isso é o espaco ocupado pelos 
dados.


[ ]'s
#mufalani


   Desculpe por erros! Este e-mail foi escrito do meu smartphone!


Sorry for typos! This mail was written from my smartphone!!!


Em 14 de dez de 2015, às 13:32, Glaucio Mendes 
glau_m...@yahoo.com.br [oracle_br] 
> escreveu:






Boa tarde,


Estou precisando saber o tamanho real  e estimado do meu banco de dados ou seja 
o tamanho que os dados estão ocupando sem a gordurinha do extends das table 
spaces que utilizamos.






Andei pesquisando no google porem os selects me trazem informações muito 
diferentes, alguem tem um "SELECT" que possa estar me passando










Grato.


Gláucio






Re: [oracle_br] processo consta na v$locked_object mas não morre

2015-11-23 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Veja se a query abaixo pode lhe ajudar, indicando o nodes para o Kiill:




SELECT gvh.inst_id INST_BLOQUEADORA, gvh.SID SID_BLOQUEADORA, gvs.serial# 
SERIAL_BLOQUEADORA,
gvs.status STATUS,gvs.username USUARIO_BLOQUEADOR, (select Distinct 
substr(sql_text,0,999) from gv$sql where sql_id = gvs.PREV_SQL_ID) 
SQL_BLOQUEADOR,
gvs.module MODULO,gvs.CLIENT_INFO CLIENT_INFO, gvw.inst_id INST_AGUARDANDO, 
gvw.SID SID_AGUARDANDO,
(select distinct username from gv$session where sid = gvw.sid and inst_id = 
gvw.inst_id) USUARIO_AGUARDANDO,
(select distinct substr(sql_text,0,999) from gv$sql where sql_id in (select 
distinct sql_id from gv$session where sid = gvw.sid and inst_id = gvw.inst_id)) 
SQL_AGUARDANDO,
decode(gvh.type, 'MR', 'Media_recovery',

'RT', 'Redo_thread',
'UN', 'User_name',
'TX', 'Transaction',
'TM', 'Dml',
'UL', 'PLSQL User_lock',
'DX', 'Distrted_Transaxion',
'CF', 'Control_file',

'IS', 'Instance_state',
'FS', 'File_set',
'IR', 'Instance_recovery',
'ST', 'Diskspace Transaction',
'IV', 'Libcache_invalidation',
'LS', 'LogStaartORswitch',
'RW', 'Row_wait',
'SQ', 'Sequence_no',
'TE', 'Extend_table',
'TT', 'Temp_table',
'Nothing-') TIPO_BLOQUEIO_ESPERA,
decode(gvw.request, 0, 'None',
1, 'NoLock',
2, 'Row-Share',
3, 'Row-Exclusive',
4, 'Share-Table',
5, 'Share-Row-Exclusive',
6, 'Exclusive',
'Nothing-') modo_req_espera ,
'alter system kill session '||  || gvh.SID || ',' || 
gvs.serial#||',@'||gvs.INST_ID|| ''' IMMEDIATE;' "COMANDO_KILL_ORACLE",
'EXEC KILL_SESSION ('|| gvh.SID || ',' || gvs.serial#||',' ||gvs.INST_ID||');' 
"COMANDO_KILL_ORACLE1",

'kill -9 '||p.spid "COMANDO_KILL_LINUX",
LPAD(TRUNC(gvw.ctime/3600),6)||':'||LPAD(MOD(TRUNC(gvw.ctime/60),60),2,'0')||':'||LPAD(MOD(gvw.ctime,60),2,'0')
 "TEMPO_ESPERA"
FROM gv$lock gvh, gv$lock gvw, gv$session gvs, gv$process p
WHERE (gvh.id1, gvh.id2) in (
SELECT id1, id2 FROM gv$lock WHERE request=0
INTERSECT
SELECT id1, id2 FROM gv$lock WHERE lmode=0)
AND gvh.id1=gvw.id1
AND gvh.id2=gvw.id2
AND gvh.request=0
AND gvw.lmode=0
AND gvh.SID=gvs.SID
AND gvh.inst_id=gvs.inst_id
and gvs.paddr = p.addr
and gvs.inst_id = p.inst_id







De: oracle_br@yahoogrupos.com.br  em nome de 
Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] 

Enviado: sábado, 21 de novembro de 2015 14:30
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] processo consta na v$locked_object mas não morre






Meu caro,


   A sessao bloqueadora pode estar na outra instance. De uma olhada na nova 
funcionalidade colocando @1... @2... @3 onde esse numero é o numero do node 
onde esta a sessao.


https://oracle-base.com/articles/misc/killing-oracle-sessions
[https://oracle-base.com/images/site_logo_medium.gif]


ORACLE-BASE - Killing Oracle Sessions
Home » Articles » Misc » Here Killing Oracle Sessions. There are a number of 
ways to kill rogue sessions both within Oracle and externally. Identify the 
Session to ...
Leia mais...








[ ]'s
#mufalani


   Desculpe por erros! Este e-mail foi escrito do meu smartphone!


Sorry for typos! This mail was written from my smartphone!!!


Em 21 de nov de 2015, às 14:08, julio marcos 
julio_marc...@hotmail.com [oracle_br] 
> escreveu:






Em um ambiente ODA Oarcle RAc 12 c o processo consta na v$locked_object e ao 
tentar dar um kill na sessão ele da erro e não morre


select vlo.object_id, vlo.session_id, vlo.oracle_username, vlo.process
  , DECODE(vlo.LOCKED_MODE, 0,'NONE', 1,'NULL', 2,'ROW SHARE', 3,'ROW 
EXCLUSIVE', 4,'SHARE', 5,'SHARE ROW EXCLUSIVE', 6,'EXCLUSIVE', NULL) LOCK_MODE
  , do.owner, do.object_name, do.object_type
  , vs.saddr, vs.serial#, vs.paddr, vs.username, vs.ownerid, vs.status, 
vs.server, vs.schemaname, vs.osuser, vs.machine, vs.program, vs.type, 
vs.logon_time, vs.last_call_et
  , vs.blocking_session_status, vs.event#, vs.event, vs.wait_class#, 
vs.wait_class, vs.wait_time, vs.seconds_in_wait, vs.state
  from v$locked_object vlo
inner join dba_objects do on (vlo.object_id = do.object_id)
left outer join v$session vs on (vlo.session_id = vs.sid)


-


[X]


---


 ALTER SYSTEM KILL SESSION '1386,0' IMMEDIATE;




154ORA-00030: O ID de sessão do usuário não existe.
  Total execution time 3.863 sec.










Re: [oracle_br] OFF - PL/SQLDeveloper

2016-06-01 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Boa noite Rodrigo,




Meus desenvolvedores me informaram sobre este erro. Utilizam a versão mais nova 
 PLSQLdeveloper 11.0.6 e mesmo assim apresentava o erro que você mencionou.


O problema é somente utilizando RAC, pois uma sessão esta em um nó e o debug em 
outro.


Ocorrre somente quando utilize RAC com PL/SQL


Contexto:


Altere seu tnsnames


Entrada no tnsnames utilizando o SCAN apresenta erro no DEBUG
BRUNA =
  (DESCRIPTION =
(ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = exa01-scan.bruna.com.br)(PORT = 1521))
)
(CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bruna)
)
  )




Solução inclua entrada no seu tnsnames


bruna_1 =
  (DESCRIPTION =
(ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.141)(PORT = 1521))
)
(CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bruna)
)
  )
bruna_2 =
  (DESCRIPTION =
(ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.143)(PORT = 1521))
)
(CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = bruna)
)
  )




Utilize DEBUG utilizando uma das duas entradas.


Em adição seque um shell para atribuir valores No Linux, pode lhe ser util.


#!/bin/sh
# exadata (bruna - Producao)
#
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
LD_LIBRARY_PATH=$ORACLE_HOME/lib
NLS_LANG="American_America.WE8ISO8859P1"
NLS_COMP=BINARY
PATH=$ORACLE_HOME/bin:$PATH
ORA_NLS10=$ORACLE_HOME/nls/data
ORA_NLS33=$ORACLE_HOME/nls/data




export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0.4/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG="American_America.WE8ISO8859P1"
export NLS_COMP=BINARY
export PATH=/bin:$ORACLE_HOME/bin:$PATH
export ORA_NLS10=$ORACLE_HOME/nls/data
export ORA_NLS33=$ORACLE_HOME/nls/data
export ORACLE_SID=bruna1
export TNS_ADMIN=/home/oracle/network/admin
export TWO_TASK=bruna




Também em adição altere as querys de seu PL/SQLdeveloper


Query no PL/SQL .  você deve incluir o prefixo "G"


select * from Gv$open_cursor where sid = :sid


select sql_text from Gv$sqltext_with_newlines
where address = hextoraw(:sql_address)
and hash_value = :sql_hash_value
order by piece
/* concatenate */


select names.name, stats.statistic#, stats.value
from Gv$sesstat stats, Gv$statname names
where stats.sid = :sid
and names.Statistic# = stats.Statistic#
order by stats.statistic#


select l.*, o.owner object_owner, o.object_Name
from  sys.all_objects o, Gv$lock l
where l.sid = :sid and l.type = 'TM' and o.object_id = l.id1






select * from Gv$session

where username is not null
order by logon_time, sid




select * from Gv$session
where username = user
order by logon_time, sid


select * from Gv$session
where username is not null and status = 'ACTIVE'
order by logon_time, sid




SELECT gvh.inst_id INST_BLOQUEADORA, gvh.SID SID_BLOQUEADORA, gvs.serial# 
SERIAL_BLOQUEADORA,
gvs.status STATUS,gvs.username USUARIO_BLOQUEADOR, (select Distinct 
substr(sql_text,0,999) from gv$sql where sql_id = gvs.PREV_SQL_ID) 
SQL_BLOQUEADOR,
gvs.module MODULO,gvs.CLIENT_INFO CLIENT_INFO, gvw.inst_id INST_AGUARDANDO, 
gvw.SID SID_AGUARDANDO,
(select distinct username from gv$session where sid = gvw.sid and inst_id = 
gvw.inst_id) USUARIO_AGUARDANDO,
(select distinct substr(sql_text,0,999) from gv$sql where sql_id in (select 
distinct sql_id from gv$session where sid = gvw.sid and inst_id = gvw.inst_id)) 
SQL_AGUARDANDO,
decode(gvh.type, 'MR', 'Media_recovery',
'RT', 'Redo_thread',
'UN', 'User_name',
'TX', 'Transaction',
'TM', 'Dml',
'UL', 'PLSQL User_lock',
'DX', 'Distrted_Transaxion',
'CF', 'Control_file',
'IS', 'Instance_state',
'FS', 'File_set',
'IR', 'Instance_recovery',
'ST', 'Diskspace Transaction',
'IV', 'Libcache_invalidation',
'LS', 'LogStaartORswitch',
'RW', 'Row_wait',
'SQ', 'Sequence_no',
'TE', 'Extend_table',
'TT', 'Temp_table',
'Nothing-') TIPO_BLOQUEIO_ESPERA,
decode(gvw.request, 0, 'None',
1, 'NoLock',
2, 'Row-Share',
3, 'Row-Exclusive',
4, 'Share-Table',
5, 'Share-Row-Exclusive',
6, 'Exclusive',
'Nothing-') modo_req_espera ,
'alter system kill session '||  || gvh.SID || ',' || 
gvs.serial#||',@'||gvs.INST_ID|| ''' 
IMMEDIATE;---'||decode(gvs.username,'ATZ','ATENCAO ATZ',null) 
"COMANDO_KILL_ORACLE",
'EXEC KILL_SESSION ('|| gvh.SID || ',' || gvs.serial#||',' ||gvs.INST_ID||');' 
"COMANDO_KILL_ORACLE1",
'kill -9 '||p.spid "COMANDO_KILL_LINUX",
LPAD(TRUNC(gvw.ctime/3600),6)||':'||LPAD(MOD(TRUNC(gvw.ctime/60),60),2,'0')||':'||LPAD(MOD(gvw.ctime,60),2,'0')
 "TEMPO_ESPERA"
FROM gv$lock gvh, gv$lock gvw, gv$session gvs, gv$process p
WHERE (gvh.id1, gvh.id2) in (
SELECT id1, id2 FROM gv$lock WHERE request=0
INTERSECT
SELECT id1, id2 FROM gv$lock WHERE lmode=0)
AND gvh.id1=gvw.id1
AND gvh.id2=gvw.id2
AND gvh.request=0
AND gvw.lmode=0
AND gvh.SID=gvs.SID
AND gvh.inst_id=gvs.inst_id
and gvs.paddr = p.addr
and gvs.inst_id = p.inst_id






Abs.




Sérgio Chaves.





Re: [oracle_br] Re: Lentidão Data Pump

2016-01-28 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Raphael,




Já verificou se existe FK sem o respectivo índice nas tabelas de aplicações?






Sérgio.





De: oracle_br@yahoogrupos.com.br  em nome de 
Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] 

Enviado: quinta-feira, 28 de janeiro de 2016 16:00
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Re: Lentidão Data Pump






Chiappa, encontrei alguns artigos relacionados ao meu problema.


Vi que pelo menos não foi só eu que tive esse problema após a migração para 
11.2.0.4






Unix,Oracle & other stuff: Streams AQ: enqueue blocked on low 
memory








[image]






















Unix,Oracle & other stuff: Streams AQ: enqueue blocked 
o...
Streams AQ: enqueue blocked on low memory wait event causing the issue: I 
triggered the export and its running for more then 12 hours and i found the




Visualizar em 
dba-oracle101.bl...


Visualizado por Yahoo










http://oraculix.com/2014/12/05/data-pump-aq-tm-processes/






Em Quinta-feira, 28 de Janeiro de 2016 14:47, "Rafael Mendonca 
raffaell.t...@yahoo.com [oracle_br]"  escreveu:






Chiappa, muito obrigado pela explicação.
Existiam alguns JOBS do datapump e matei todos de acordo com a explicação e os 
tutoriais passados por você, porém nada adiantou.


Em seguida verifiquei que existiam 2 sessões ativas do data pump:


   SID,SERIAL#   SPID USERNAME   OSUSER   SERVERPROGRAM 
 MACHINE   LAST_CALL_ET
'3782,49823'  19661036 SYSoracle   DEDICATED Data Pump Master   
  nome_servidor   533
'45,4373' 18809042 SYSoracle   DEDICATED ude@nomeservidor(TNS 
V1-V3) nome_servidor52






Fiz em seguida o que você me pediu, monitorar o DATA PUMP, usei uma consulta 
utilizando as views V$SESSION_WAIT , V$SESSION , V$PROCESS , e a V$SQLTEXT.
Descobri o seguinte:


SID EVENT SECONDS_IN_WAIT SQL_TEXT
45 Streams AQ: enqueue blocked on low memory  25 BEGIN :1 := 
sys.kupc$que_int.transceive_int(:2, :3, :4, :5, :6);
  45 Streams AQ: enqueue blocked on low memory  25  END;






Abri um chamado com a Oracle, mas até agora nada.






Em Terça-feira, 26 de Janeiro de 2016 13:16, "jlchia...@yahoo.com.br 
[oracle_br]"  escreveu:






Oi - realmente parece ser alguma questão pontual - tanto pode ser algo simples 
como JOBs anteriores do datapump que não concluíram com sucesso e/ou 
congelados/travados (digamos, perdeu a conexão mas o RDBMS ainda não os 
liberou) como pode ser uma questão mesmo de performance, como (por exemplo) 
espera por recurso compartilhado/locks, I/O intenso de uma outra sessão 
interferindo na sessão do datapump, coisas do tipo...
 Assim, a minha recomendação é que primeiro vc se certifique que não há jobs do 
datapump pendurados no banco nem execuções pendentes no SO (no SO vc usa ps, no 
banco vc consulta views/tabelas internas como por exemplo 
https://www.xtivia.com/removing-orphaned-oracle-datapump-jobs/ , 
http://dbatricksworld.com/how-to-kill-oracle-datapump-export-job/ e 
http://pavandba.com/2011/07/12/how-to-deleteremove-non-executing-datapump-jobs/ 
mostram) Em SEGUNDO lugar, se for comprovado que não há nada pendente nem 
nos jobs de banco nem no SO, é diagnosticar quais waits (principalmente espera 
por LATCHEs e por LOCKs, mas sem descuidar dos outros) vc está tendo (isso é um 
procedimento-padrão, vc pode usar seus scripts preferidos que consultam a 
V$SESSION e cia bela OU pode ser pelo OEM ou pelo AWR/ASH), E se for o caso vc 
pode Também acionar um TRACE na sessão de banco do datapump : 
https://mdesouza.wordpress.com/2013/01/23/tracing-oracle-data-pump-job-for-errors/
 e https://dbasolutions.wikispaces.com/Expdp+-+Trace dão umas indicações...


 []s


   Chiappa














Re: [oracle_br] Como usar Webservice no oracle

2016-02-23 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Junior,




Alguns pontos:


  *   O Ip deve estar liberado no firewall.
  *   Se versão 11 ou maior:
 *   Incluir esse IP no 
ACL(http://docs.oracle.com/cd/B28359_01/appdev.111/b28419/d_networkacl_adm.htm).
80 DBMS_NETWORK_ACL_ADMIN - 
Oracle
docs.oracle.com
80 DBMS_NETWORK_ACL_ADMIN. The DBMS_NETWORK_ACL_ADMIN package provides the 
interface to administer the network Access Control List (ACL).




 *   Atribuir permissão--- grant de ACL de  Connect e resolve?.
  *   ?Se utilizar SSL (https) deve incluir o certificado no Oracle 
Wallet(https://docs.oracle.com/cd/B28359_01/network.111/b28530/asowalet.htm)
Using Oracle Wallet 
Manager
docs.oracle.com
9 Using Oracle Wallet Manager. Security administrators use Oracle Wallet 
Manager to manage public key security credentials on Oracle clients and servers.




Para uso de Soap:


Veja  o  https://oracle-base.com/dba/miscellaneous
encontre soap_api.sql.


Sérgio Chaves.









De: oracle_br@yahoogrupos.com.br  em nome de 
Junior roberjr_...@yahoo.com.br [oracle_br] 
Enviado: segunda-feira, 22 de fevereiro de 2016 19:16
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Como usar Webservice no oracle






Boa noite!
Na realidade preciso enviar um xml via webservice. Mais especificamente um xml 
de uma NF.
Consegui acessar o servidor. Mas não consegui transmitir o xml.
Teria alguma dica ou exemplo ?




Em Sábado, 20 de Fevereiro de 2016 17:09, "Carlos Silva 
carlos-csi...@hotmail.com [oracle_br]"  escreveu:






Boa tarde!


Segue dois exemplos de como você pode criar sua rotina.


http://www.oratable.com/utl_http/
[http://www.oratable.com/wp-content/uploads/2015/04/utl_http.jpg]


UTL_HTTP to Call a Web Service from PL/SQL - 
Oratable
www.oratable.com
You can call a web service from within PL/SQL using the Oracle-supplied package 
UTL_HTTP. Here's a demo of calling a public web service that returns latest 
city ...





http://wiki.scn.sap.com/wiki/display/XI/Triggering+webservice+from+Oracle+Database+with+UTL_HTTP+supplied+package





To: oracle_br@yahoogrupos.com.br
From: oracle_br@yahoogrupos.com.br
Date: Sat, 20 Feb 2016 12:53:21 +
Subject: [oracle_br] Como usar Webservice no oracle






Bom dia Pessoal.


Estou tentando usar Webservice no oracle.


A idéia é consumir um arquivo xml via webservice. Pesquisei algumas coisas na 
internet porém está dando erro.


Alguém teria algum exemplo ou se preciso configurar alguma coisa para poder 
utilizar o webservice ?


Obrigado.












Re: [oracle_br] Re: Novo licenciamento

2016-02-18 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
20.000 em 20 minutos.




vamos ver.




Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br  em nome de 
jlchia...@yahoo.com.br [oracle_br] 
Enviado: quinta-feira, 18 de fevereiro de 2016 14:14
Para: oracle_br@yahoogrupos.com.br
Assunto: RE: [oracle_br] Re: Novo licenciamento






"...Por isso acredito que a questão aqui não tem relação específica com a 
edição do Oracle, apenas com a versão"


=> NEGATIVO : como eu disse, sempre, todo e qualquer Licenciamento de produto 
Oracle (e EM ESPECIAL o RDBMS) é feito PELO "TIPO" do Produto, ie, Justamente a 
Edição, ok ? Seja Licencimento perpétuo, seja licenciamento por data 
determinada, isso é pré-suposto, é Condição dada, ok ? Então, se não fosse o 
fato do produto SE1 ter sido Assasinado, morto, ELIMINADO pela Oracle e 
substituído pelo SE2, Não Estaríamos nem tendo esta conversa, vc poderia 
TRANQUILAMENTE com a sua Licença de SE1 usar um RDBMS SE1 10.1.x, SE1 10.2.y, 
SE1 11qualquercoisa, SE1 12.nãoseioque... okdoc ?


 Por isso que eu disse : como o produto SE1 (idependente de versão) foi 
eliminado (então não tem como vc comprar licença de SE1, seja qual for a versão 
!!), foi 'transformado no/substituído pelo' SE2, para vc obter ** continuidade 
** de uso (que Sempre houve nos outros produtos, quando novas versões entram) 
vc vai verificar os custos e a viabilidade (ie, se as restrições do SE2 estão 
sendo cumpridas) no sentido de migrar a licença SE1 para SE2 e depois a 
renovar, já que ela é expirável...
  Não dá pra dizer que a migração + renovação (se for possível/viável) vai 
ficar mais cara ou mais barata do que a simples compra de uma nova licença SE2, 
mas veja lá






"Quanto a disponibilidade do software para download sem contrato de suporte, o 
problema neste caso específico é que no eDelivery existe apenas a 11.2.0.1 para 
Linux x64.


Por isso da dúvida:


licenciando a 12c sem suporte o cliente teria acesso apenas a 11.2.0.1 via 
eDelivery


OU


como a 12c é mais recente o cliente poderia usar qualquer versão 11g, inclusive 
a 11.2.0.4
"


Deixa eu esclarecer : ao que entendo no futuro breve/imediato o teu cliente 
pretende continuar com o SE1 11gR2 que já tem instalado (e no mesmo servidor, 
se o hardware for adequado à licença SE2 que vc vai comprar OU para a qual vai 
migrar a licença SE1 de hoje), mas em breve pretende migrar pro SE2 
(provavelmente assim que as homologações/testes que devem estar rolando 
concluírem), certo ?
 SE for isso vc NÃO PRECISA desinstalar o que já tem, vc VAI continuar usando o 
11.2.0.4 que vc já tem, e em algum momento futuro quando liberada a 
homologação/testes vc vai baixar do technet/e-delivery o SE2, versão 11.2.0.2, 
okdoc ? Pra NENHUMA destas Ações vc precisa de Contrato de Suporte
 Nem preciso dizer, imagino, que A recomendação é que vc já tenha o Suporte 
quando for fazer a migração (para poder abrir Chamados se der de cara com erro 
grave/problema na operação, E para quando vc for baixar os PATCHES do SE2), mas 
tecnicamente, para vc baixar & instalar a versão BASE do SE2 no technet sem 
probs... Apenas não deixe de fazer a comparação de CUSTO de se adquirir o 
Suporte agora junto com a Renovação e/ou a Compra na nova Licença SE2 VERSUS o 
custo de se adquirir o Suporte avulsamente no futuro e veja o que compensa 
mais...


[]s


  Chiappa






Re: [oracle_br] Queda de Conexão

2016-02-01 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Eliane,




Tivemos este mesmo problema com o ORACLE EXADATA, verifique se o  Reverse 
lookup. Como workaound, verifique que não usar o scan e sim a entrada no 
tnsnanmes :






DESCRIPTION = (ADDRESS_LIST = (LOAD_BALANCE=on) (FAILOVER=on) (ADDRESS = 
(PROTOCOL = TCP)(HOST = end1)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST 
=end2)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = end3)(PORT = 1521))) 
(CONNECT_DATA = (service_name = meubanco)))






Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br  em nome de 
'Eliane SILVA' ecssi...@frg.com.br [oracle_br] 
Enviado: segunda-feira, 1 de fevereiro de 2016 15:40
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Queda de Conexão






Pessoal,


Peço um apoio a vocês num problema que estamos tendo de queda de
conexão do cliente oracle para
o servidor Oracle 11g. A situação é a seguinte:


1 - Temos um ambiente de homologação que não tem RAC. Neste ambiente
não existe queda de conexão.


2 - Temos um ambiente de produção que tem um RAC (2 nós) e este
ambiente após o período de uma hora de inatividade no programa cliente
tem uma queda de conexão gerando códigos variados (ORA-12571,
ORA-03135, ORA-25408).


Já alteramos o parâmetro dentro do SQLNET.ORA do servidor
EXPIRE_TIME=10.


Alguém poderia nos dar uma ajuda ?


Abraços,


Eliane e Enio.


[As partes desta mensagem que não continham texto foram removidas]








Re: [oracle_br] Create DIRECTORY

2016-03-03 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Verifique o parameter UTL_FILE_DIR.




Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br  em nome de 
Mario Rodrigues marioirodrig...@gmail.com [oracle_br] 

Enviado: quinta-feira, 3 de março de 2016 13:17
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Create DIRECTORY






Pessoal


Boa Tarde


Posso criar um diretorio em outra maquina que não seja o o servidor do banco?
fiz o seguinte


create DIRECTORY TESTE as '\\IP\pasta1\TESTE';


depois dei permissão ao usuário que irá executar e tals .. o servidor é linux e 
o local onde criei o diretorio é windows.


criei uma procedure que geraria um arquivo no diretorio


onde é basicamente


v_arquivo := utl_file.fopen('TESTE', 'arquivo.txt', 'w');


Dessa forma ai em cima da erro
ORA-29283: operação de arquivo inválida
ORA-06512: em "SYS.UTL_FILE", line 536


porem se eu só mudo o diretorio TESTE para um existente no servidor funciona 
perfeitamente.


Como eu faria para que esse arquivo fosse criado em uma outra maquina???


Obrigado.








[oracle_br] Informação: ORACLE APEX

2016-04-14 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Prezados Colegas,






Vocês sabem de algum procedimento da ORACLE de descontinuar o Oracle APEX?




Desde já agradeço.




Sérgio Chaves.




Re: [oracle_br] Client 11g

2017-01-25 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Eduardo,




Se tiver acesso ao metalink(Oracle Suporte), procure pelo patchset


13390677: 11.2.0.4.0, se lembro bem o  disk6 ou disk7.


Se não tiver acesso talvez os link do OTN, pode resolver, mas acho melhor o 
oracle suporte.


http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098987.html


Oracle Database 11g Release 2 for Microsoft Windows 
(32-bit)
www.oracle.com
Oracle Database 11g Release 2 (11.2.0.1.0) for Microsoft Windows (32-bit) 
win32_11gR2_database_1of2.zip (1,625,721,289 bytes)






http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html
Oracle Database 11g Release 2 for Microsoft Windows 
(x64)
www.oracle.com
Oracle Database 11g Release 2 (11.2.0.1.0) for Microsoft Windows (x64) 
win64_11gR2_database_1of2.zip (1,213,501,989 bytes)












Sérgio Chaves.







De: oracle_br@yahoogrupos.com.br  em nome de 
Eduardo Dornelles eod.edua...@gmail.com [oracle_br] 

Enviado: quarta-feira, 25 de janeiro de 2017 17:41:03
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Client 11g






Boa tarde.


Alguém tem o oracle universal installer 11g? Acho que não tem mais no site, e 
não estou encontrando na internet.


Obrigado.




At.te,
Eduardo Dornelles.






Re: [oracle_br] Re: Client 11g

2017-01-26 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Eduardo,




Como não recebemos imagens, não sei exatamente o erro que esta aparecendo.


Mas veja as informações do Chiappa e reforço que se você tem acesso ao Oracle 
Suporte baixe o patchset que informei, pois verificamos que a versão anterior 
tem alguns "bug" relacionados a characterset para exp (dp) / Imp (dp), o que 
pode evitar problemas futuros.




Além disso, verifique se seu tnsnames esta ok.




exemplo básico:


XUXA =
  (DESCRIPTION =
(ADDRESS_LIST = (LOAD_BALANCE=on) (FAILOVER=on)
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.999.97.99 )(PORT = 1521))
  (ADDRESS = (PROTOCOL = TCP)(HOST = 10.999.99.99 )(PORT = 1521))
)
(CONNECT_DATA =
  (SERVER = DEDICATED)
  (SERVICE_NAME = XUXA)
)
  )




Outra ponto importante é verificar as variáveis de ambiente TNS_ADMIN e 
ORACLE_HOME.




Boa sorte.






Sérgio Chaves.







De: oracle_br@yahoogrupos.com.br  em nome de 
jlchia...@yahoo.com.br [oracle_br] 
Enviado: quinta-feira, 26 de janeiro de 2017 18:27:08
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Re: Client 11g






E o ponto *** CRUCIAL *** que eu tinha dito antes eu vou repetir : NÃO BASTA vc 
só instalar o client 11g, via de regra ** COMO EU DISSE ** ainda tem algum tipo 
de MIDDLEWARE (ODBC, OLEDB, JDBC, BDO, etc, etc) que TEM que ser Atualizado 
também Além de (SE exigido!!) remover o client 10g e instalar o client 11g 
** mais Atualizado *** que puder obter, vc TEM que receber do Fornecedor 
instruções sobre qual é o middleware presente E como o Atualizar também, okdoc 

 Via de regra, a versão de middleware homologada com client 10g PODE sim ter 
probs com client mais atual e alguma atualização (as vezes de DLL que seja, de 
arquivo de config, ou coisas assim se não do software todo) é sim exigida 
Só quem conhece a Aplicação e o middleware dela é que pode te confirmar ou 
negar a necessidade, sim sim sim ???


  []s


Chiappa






Re: [oracle_br] Migração

2016-09-21 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Rafael,




Você realmente precisa saber o downtime, para definir qual a melhor solução 
para você.
Mas também é importante saber quanto eles querem gastar.
Recentemente passei por situações semelhantes:


  1.  Migração de HP(9i) para ORACLE EXADATA (11R2);
  2.  E De IBM AIX(11gR2)  para ORACLE EXADATA( 11R2);










Na primeira situação utilizamos duas estratégias: Na primeira utilizam o Golden 
Gate, sem downtime, a base tinha mais ou menos o 2.5 TB;


Na segunda utilizamos data dump bases menores.






Na segunda utilizamos Export / Import.






Mas tudo isso vai depender dos servidores de destino, como não sabemos  
fica difícil informar qual a melhor solução. Ainda podemos estudar a utilização 
do RMAN.










Boa sorte.






Sérgio.





De: oracle_br@yahoogrupos.com.br  em nome de 
Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] 

Enviado: quarta-feira, 21 de setembro de 2016 14:24:00
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Migração






Ontem por algum motivo não estava sendo possível o envio de email para o grupo, 
portanto foram enviados dois e-mails, favor desconsiderar o outro email, vamos 
usar este aqui e ignorar o outro.




Em Quarta-feira, 21 de Setembro de 2016 14:16, "Rafael Mendonca 
raffaell.t...@yahoo.com [oracle_br]"  escreveu:






Senhores, boa tarde.


Gostaria da ajuda de vocês para o seguinte cenário:


Um cliente solicitou que um SGBD Oracle EE 11.2.0.4.16 ASM standalone em um 
ambiente de produção em um sistema operacional AIX 6.1 64 bits ( que também 
possui dois DATAGUARDS Físicos com a mesma configuração) fosse migrado para um 
outro servidor LInux Redhat 6.x ou 7.0 64 bits. O tamanho da base é de 2,4 TB.



Gostaria de saber de vocês qual seria o melhor modo de se fazer essa migração.


Obs1: O tempo de downtime não foi informado, mas acho que o cliente teria um 
dia do final de semana livre para realizar essa tarefa.


Alguém poderia ajudar?












Re: [oracle_br] Re: Dúvida sobre suporte nível 3

2016-11-23 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Obrigado Chiappa e Carlos,


Tenho também a mesma analise que fizeram, é uma questão de diretos autorais, e 
mais cedo ou mais tarde empresas que tentam burlar estas questões verão 
acionadas judicialmente pela Oracle. Não somente a que tentou prestar o serviço 
como também a que aceitou.
Mas, tenho novas dúvidas. Vamos imaginar que a Contratante tem um contrato de 
1o e 2o nível com uma empresa PartnerNetwork Oracle Nível Gold. Com a 
associação da Contratante com a Rimini Street, a empresa do 1o e 2o nível pode 
continuar prestando o serviço a contratante? Corre algum risco na parceria com 
a Oracle.
A contratada de 1o e 2o nível, pode cancelar o contrato, justificando o embate 
jurídico da Oracle X Rimini?


Esse é o pior dos mundos, com relação ao suporte de 1o,2o,3o nível?


Obrigado.


Sérgio Chaves.









De: oracle_br@yahoogrupos.com.br  em nome de 
jlchia...@yahoo.com.br [oracle_br] 
Enviado: terça-feira, 22 de novembro de 2016 21:07
Para: oracle_br@yahoogrupos.com.br
Assunto: [oracle_br] Re: Dúvida sobre suporte nível 3






Yep : acho que ficou Claro para todos que leram a thread que uma empresa 
terceira *** PODE  tranquilamente dar Suporte para dúvidas, best-practices 
e implementação de tecnologia Oracle (normalmente baseada em sua experiência 
anterior), ** PODE ** dar Consultoria / apoio para uma terceira empresa que vai 
adquirir Suporte da Oracle , é tranquilinho, e tem muitas Empresas terceiras 
parceiras que prestam esse tipo de serviço... Até aqui, tá claro, acho...


 O ponto de violação é em relação a download de Patches, Upgrades do software, 
Bugfixes e Documentos Técnicos criados pelo Suporte Oracle, E também a abrir 
Chamados para ser atendido por Analista de Suporte Oracle : tudo isso vc só 
consegue baixar/obter comprando um Contrato de Suporte, e é *** CLARAMENTE  
indicado nesse Contrato que vc só pode usar esse material NA SUA EMPRESA, que é 
a mesma Empresa que comprou o contrato : É ABSOLUTAMENTE PROIBIDO vc publicar 
esse material publicamente, copiar/distribuir (de graça OU não!!!) para outras 
Empresas que não a sua que comprou o Contrato, aplicar esse material em 
equipamentos/produtos Oracle não comprados/não-pertencentes á Empresa que 
adquiriu o contrato de suporte IDEM pra abrir um Chamado de atendimento no 
Suporte Oracle : é ESPERADO que vc abra chamados apenas para os SEUS PRÓPRIOS 
ambientes/databases/servidores : receber do cliente uma queixa tal e qual e 
abrir um Chamado enganando o Analista de Suporte, dizendo que o atendimento tá 
sendo feito na máquina dela quando na verdade é uma máquina de cliente, Não É 
permitido...


 Foi justamente essa a violação da tal "Rimini" pelo que vi : ela comprou um 
Contrato de Suporte com a Oracle , baixou bugfixes/patches/documentos técnicos 
E os distribuiu pros seus Clientes, E também andou abrindo Chamados no Suporte 
Oracle dizendo que o atendimento tava sendo feito na máquina dela quando era 
máquina de cliente : não só ela levou uma Invertida legal, mas certamente os 
Clientes dela vão receber uma visitinha da Auditoria Oracle - se o pessoal da 
Auditoria achar patches/bugfixes aplicados no software Oracle E a empresa não 
tiver um Contrato de Suporte válido, ela não vai ter como explicar de onde 
baixou isso, lá vem a multinha pra deixar de ser besta


 []s


   Chiappa


IMPORTANTE : óbvio Ululante, a violação é a tal empresinha DISTRIBUIR / 
REVENDER diretamente e na íntegra pros clientes dela o material vindo do 
Suporte Oracle - se ela tivesse usado o material internamente, para estudar e 
adquirir conhecimento, e vendesse pros clientes Esse conhecimento, CLARO que 
ela estaria 100% legal... Como eu disse, tem TROCENTAS empresas que fazem 
isso


 Por exemplo, digamos que os clientes dela tavam com dúvidas de Upgrade pro 
12c, digamos : SE ao invés de Ilegamente baixar do metalink e enviar pros 
clientes as notas e documentos técnicos metalink sobre Upgrade a tal empresinha 
tivesse Estudado as notas/documentos e criado um Relatório próprio com a mesma 
info, estaria 100% legal... OU ainda, digamos que os clientes dela talvez 
estivessem caindo num bug X já conhecido, se ao invés de ter (ilegalmente!!) 
repassado o bugfix direto pro cliente ela tivesse feito uma CONSULTORIA (ie, 
aplicado o bugfix nas máquinas dela , testado e depois mandado um Relatório pro 
clientes "ó, aplica o bugfix tal e qual que resolve"), também estaria 100% 
legal


Blz ?






[oracle_br] Dúvida sobre suporte nível 3

2016-11-21 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Pessoal,


Dúvida sobre suporte nível 3.


Meu ambiente é:


X5-2 Eighth
Nós de Banco de Dados 2
Cores para Banco de Dados   36
Memória para Banco de Dados (GB) 1TB
Switches Infiniband2 (40GB)
Switch Ethernet   4
Exadata Storage Servers 3
Storage Grid CPU Cores  18
Capacidade Bruta de Flash 9.6 TB
Capacidade Bruta Extreme Flash   19 TB
High Cap  72 TB
Capacidade Líquida com Espelhamento  Extreme Flash   8TB
High Cap  30 TB


Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE  11.2.0.4.0 Production
TNS for Linux: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production


Minha dúvida:
Algum colega já participou de atendimento de nivel 3 da Rimini?
A empresa que contratar os serviços desta empresa, corre algum risco, de 
acionamento pela ORACLE?
Conte algum caso de sucesso que você tenha participado.


Desde já agradeço.


Sérgio Chaves.




Re: [oracle_br] Funcao para carregar variavel

2016-11-23 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Roberto,


Verifique por gentileza, se com a utilização do Context, não atende sua 
necessidade. Pois após criar a variável no Context poderá utiliza-la em todo 
seu processo.


Exemplo abaixo:




http://psoug.org/reference/sys_context.html


CREATE OR 
REPLACE CONTEXT App_Ctx using My_pkg
ACCESSED GLOBALLY;


CREATE OR 
REPLACE 
PACKAGE my_pkg 
IS


PROCEDURE 
set_session_id(p_session_id NUMBER);
PROCEDURE set_ctx(p_name 
VARCHAR2, p_value 
VARCHAR2);
PROCEDURE close_session(p_session_id 
NUMBER);


END;
/


CREATE OR 
REPLACE 
PACKAGE 
BODY my_pkg 
IS


g_session_id NUMBER;


PROCEDURE 
set_session_id(p_session_id NUMBER) 
IS
BEGIN
  g_session_id := p_session_id;
  dbms_session.set_identifier(p_session_id);
end set_session_id;
--===
PROCEDURE set_ctx(p_name 
VARCHAR2, p_value 
VARCHAR2) 
IS
BEGIN
  dbms_session.set_context('App_Ctx',p_name,p_value,USER,g_session_id);
END set_ctx;
--===
PROCEDURE close_session(p_session_id 
) IS
BEGIN
  dbms_session.set_identifier(p_session_id);
  dbms_session.clear_identifier;
END close_session;
--===
END;
/


col var1 format a10
col var2 format a10


exec my_pkg.set_session_id(1234);
exec my_pkg.set_ctx('Var1', 'Val1');
exec my_pkg.set_ctx('Var2', 'Val2');


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;


-- Now we'll log out/log in
-- At first, the context is empty-but we rejoin the session & there it is


disconnect
connect uwclass/uwclass


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;


exec my_pkg.set_session_id(1234);


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;


-- Now we'll show that this context is tied to our user (we specified
-- USER above, if we used null anyone can join this session).


grant execute on my_pkg to scott;


conn scott/tiger


exec uwclass.my_pkg.set_session_id(1234);


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;


-- Return to the set context again and clear it


conn uwclass/uwclass


exec my_pkg.set_session_id(1234);


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;


exec my_pkg.close_session(1234);


SELECT sys_context('app_ctx', 'var1') 
var1,
sys_context('app_ctx', 'var2') var2
FROM 
DUAL;




Sérgio Chaves.







De: oracle_br@yahoogrupos.com.br  em nome de 
Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] 

Enviado: quarta-feira, 23 de novembro de 2016 14:03:01
Para: oracle_br@yahoogrupos.com.br; oracle_br@yahoogrupos.com.br
Assunto: Re: [oracle_br] Funcao para carregar variavel






Boa tarde,


   Porque não usar um sql 

Re: [oracle_br] AJuda script shell

2017-12-12 Por tôpico Sérgio Luiz Rodrigues Chaves sergio.cha...@elumini.com.br [oracle_br]
Bom dia,




O select abaixo é para identificação de locks mas pode ser adaptado para o que 
você precisa. Atenção para o texto que está para ambiente de RAC.




SELECT gvh.inst_id INST_BLOQUEADORA, gvh.SID SID_BLOQUEADORA, gvs.serial# 
SERIAL_BLOQUEADORA,
gvs.status STATUS,gvs.username USUARIO_BLOQUEADOR, (select Distinct 
substr(sql_text,0,999) from gv$sql where sql_id = gvs.PREV_SQL_ID) 
SQL_BLOQUEADOR,
gvs.module MODULO,gvs.CLIENT_INFO CLIENT_INFO, gvw.inst_id INST_AGUARDANDO, 
gvw.SID SID_AGUARDANDO,
(select distinct username from gv$session where sid = gvw.sid and inst_id = 
gvw.inst_id) USUARIO_AGUARDANDO,
(select distinct substr(sql_text,0,999) from gv$sql where sql_id in (select 
distinct sql_id from gv$session where sid = gvw.sid and inst_id = gvw.inst_id)) 
SQL_AGUARDANDO,
decode(gvh.type, 'MR', 'Media_recovery',
'RT', 'Redo_thread',
'UN', 'User_name',
'TX', 'Transaction',
'TM', 'Dml',
'UL', 'PLSQL User_lock',
'DX', 'Distrted_Transaxion',
'CF', 'Control_file',
'IS', 'Instance_state',
'FS', 'File_set',
'IR', 'Instance_recovery',
'ST', 'Diskspace Transaction',
'IV', 'Libcache_invalidation',
'LS', 'LogStaartORswitch',
'RW', 'Row_wait',
'SQ', 'Sequence_no',
'TE', 'Extend_table',
'TT', 'Temp_table',
'Nothing-') TIPO_BLOQUEIO_ESPERA,
decode(gvw.request, 0, 'None',
1, 'NoLock',
2, 'Row-Share',
3, 'Row-Exclusive',
4, 'Share-Table',
5, 'Share-Row-Exclusive',
6, 'Exclusive',
'Nothing-') modo_req_espera ,
decode(gvs.username,'ATZ','ATENCAO ATZ',null)||'alter system kill session 
'||  || gvh.SID || ',' || gvs.serial#||',@'||gvs.INST_ID|| ''' 
IMMEDIATE;---'||decode(gvs.username,'ATZ','ATENCAO ATZ',null) 
"COMANDO_KILL_ORACLE",
'EXEC KILL_SESSION ('|| gvh.SID || ',' || gvs.serial#||',' ||gvs.INST_ID||');' 
"COMANDO_KILL_ORACLE1",
'kill -9 '||p.spid "COMANDO_KILL_LINUX",
LPAD(TRUNC(gvw.ctime/3600),6)||':'||LPAD(MOD(TRUNC(gvw.ctime/60),60),2,'0')||':'||LPAD(MOD(gvw.ctime,60),2,'0')
 "TEMPO_ESPERA"
FROM gv$lock gvh, gv$lock gvw, gv$session gvs, gv$process p
WHERE (gvh.id1, gvh.id2) in (
SELECT id1, id2 FROM gv$lock WHERE request=0

INTERSECT
SELECT id1, id2 FROM gv$lock WHERE lmode=0)
AND gvh.id1=gvw.id1
AND gvh.id2=gvw.id2
AND gvh.request=0
AND gvw.lmode=0
AND gvh.SID=gvs.SID
AND gvh.inst_id=gvs.inst_id
and gvs.paddr = p.addr
and gvs.inst_id = p.inst_id






Desde já agradeço.


Sérgio Chaves.





De: oracle_br@yahoogrupos.com.br  em nome de 
Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] 

Enviado: terça-feira, 12 de dezembro de 2017 11:01:48
Para: Yahoo! Brazil
Assunto: [oracle_br] AJuda script shell






Pessoal, preciso de um script shell no aix para matar *TODAS* as sessoes com 
status killed, no caso kill -9 pid:


exemplo:




  SELECT  p.spid
FROM v$session s,
 v$process p
   WHERE s.paddr   = p.addr
 AND s.usernameIS NOT NULL
 AND s.status  = 'KILLED'
/




Alguem poderia me ajudar?