Re: [oracle_br] problemas disco asm
Pelo visto amigo vc perdeu as permissões, vai ter que setar novamente. Em 09/06/2014 20:42, Orfeu Lima orfeu.l...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: segue as informações de permissões dos nós. nós 1 e 2 [root@sbsb241 dev]# ls -la sd* brw-r- 1 root disk 8, 0 May 5 09:23 sda brw-r- 1 root disk 8, 1 May 5 09:23 sda1 brw-r- 1 root disk 8, 2 May 5 09:23 sda2 brw-r- 1 root disk 8, 3 May 5 09:23 sda3 brw-r- 1 root disk 8, 16 May 5 09:23 sdb brw-r- 1 root disk 8, 17 May 5 09:23 sdb1 brw-r- 1 root disk 8, 18 May 5 09:23 sdb2 brw-r- 1 root disk 8, 32 May 5 09:23 sdc brw-r- 1 root disk 8, 33 May 5 09:23 sdc1 brw-r- 1 root disk 8, 34 May 5 09:23 sdc2 brw-r- 1 root disk 8, 48 May 5 09:23 sdd brw-r- 1 root disk 8, 49 May 5 09:23 sdd1 brw-r- 1 root disk 8, 50 May 5 09:23 sdd2 brw-r- 1 root disk 8, 64 May 5 09:23 sde brw-r- 1 root disk 8, 65 May 5 09:23 sde1 brw-r- 1 root disk 8, 66 May 5 09:23 sde2 brw-r- 1 root disk 8, 80 May 5 09:23 sdf brw-r- 1 root disk 8, 81 May 5 09:23 sdf1 brw-r- 1 root disk 8, 82 May 5 09:23 sdf2 brw-r- 1 root disk 8, 96 May 5 09:23 sdg brw-r- 1 root disk 8, 97 May 5 09:23 sdg1 brw-r- 1 root disk 8, 98 May 5 09:23 sdg2 brw-r- 1 root disk 8, 112 May 5 09:23 sdh brw-r- 1 root disk 8, 113 May 5 09:23 sdh1 brw-r- 1 root disk 8, 114 May 5 09:23 sdh2 brw-r- 1 root disk 8, 128 May 5 09:23 sdi brw-r- 1 root disk 8, 129 May 5 09:23 sdi1 brw-r- 1 root disk 8, 130 May 5 09:23 sdi2 --nó 3 -- [root@sbsb198 ~]# ls -la /dev/sd* brw-r- 1 root disk 8, 0 Jun 3 17:20 /dev/sda brw-r- 1 root disk 8, 1 Jun 3 17:21 /dev/sda1 brw-r- 1 root disk 8, 2 Jun 3 17:20 /dev/sda2 brw-r- 1 root disk 8, 3 Jun 3 17:21 /dev/sda3 brw-r- 1 root disk 8, 16 Jun 3 17:20 /dev/sdb brw-r- 1 root disk 8, 32 Jun 3 17:20 /dev/sdc brw-r- 1 root disk 8, 48 Jun 3 17:20 /dev/sdd brw-r- 1 root disk 8, 64 Jun 3 17:20 /dev/sde brw-r- 1 root disk 8, 80 Jun 3 17:20 /dev/sdf brw-r- 1 root disk 8, 96 Jun 3 17:20 /dev/sdg brw-r- 1 root disk 8, 112 Jun 3 17:20 /dev/sdh brw-r- 1 root disk 8, 128 Jun 3 17:20 /dev/sdi brw-r- 1 root disk 8, 144 Jun 3 17:20 /dev/sdj brw-r- 1 root disk 8, 160 Jun 3 17:20 /dev/sdk brw-r- 1 root disk 8, 176 Jun 3 17:20 /dev/sdl brw-r- 1 root disk 8, 192 Jun 3 17:20 /dev/sdm Em 9 de junho de 2014 19:54, Marcelo Santino e...@marcelosantino.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Orfeu, Você configurou certinho o oracleasm (oracleasm configure -i) ? E a lib asmlib foi instalada também? Uma vez perdi mó tempão quebrando a cabeça porque os discos criados no node1 não estavam aparecendo no node2, até que eu me liguei que não tinha instalado a asmlib nele... Depois que instalei, rebootei e os discos já apareceram na boa... Mas só tomei problema quando iniciei a instalação e não conseguia achar os discos pra adicionar ao ASM... Sei que é uma pergunta ridicula, mas as vezes passa um detalhe bobo que não demos atenção... Abs, *Marcelo Santino* DBA SQL Server / Oracle www.bau-de-dev.com http://www-bau-de-dev.com +55 21 98206-9930 http://www.facebook.com/CelaoRJ http://br.linkedin.com/in/msantino http://twitter.com/#!/msantino 2014-06-09 19:48 GMT-03:00 Orfeu Lima orfeu.l...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br: Bom dia Srs do grupo. ambiente S.O - rhel 5 SGBD - Oracle Rac 11.2.0.3 com 2 nós. Estou tentando adicionar um terceiro nó ao meu rac. Fiz as atualizações e configurei o asm. Configurei o multipath do mesmo modo que os outros dois nós, tendo me apresentando os volumes no terceiro nó. Ao tentar listar os discos pelo terceiro nó ele me apresentou os erros que estão no /var/log/oracleasm oracleasm-read-label: Unable to read device /dev/sdb: Input/output error oracleasm-read-label: Unable to read device /dev/sde: Input/output error oracleasm-read-label: Unable to read device /dev/sdf: Input/output error oracleasm-read-label: Unable to read device /dev/sdi: Input/output error Notei também que na partição /dev/mapper, as partições não estão aparecendo. Tentei forçar a listagem pelo /etc/init.d/oracleasm listdisk DG_DADOS, mas ele me retorna o seguinte Disk DG_DADOS does not exist or is not instantiated Se alguém já passou por isso ou souber aonde posso pesquisar eu agradeço. Já pesquisei alguns sites na internet, mas nada fala desse tópico. OBS : não tenho acesso ao metalink. Obrigado
[oracle_br] Usuários com privilégios arriscados
Senhores, estou buscando em minha base de produção, usuários que tenham permissões que possam de alguma maneira, causar algum tipo de impacto no database/sistema. A priori estou procurando por privilégios do tipo DDL, ou algum outro privilégio com ANY fazendo com que possa alterar dados de outro schema/sistema. Gostaria da opnião de vocês se estaria faltando algum(ns) privilégio(s) a mais que seria interessante rastrear. Montei a seguinte query: SELECT PRIVILEGE, grantee FROM dba_sys_privs WHERE (privilege LIKE '%CREATE%' OR privilege LIKE '%DROP%' OR privilege LIKE '%ALTER%' OR privilege LIKE '%TRUNC%' OR privilege LIKE '%ANY%' ) AND GRANTEE NOT IN ('SYS','SYSTEM','SYSAUX','DMSYS','EXFSYS','IMP_FULL_DATABASE','EXP_FULL_DATABASE','MDSYS','WMSYS','XDB','CTXSYS','APEX_030200','APPQOSSYS','AQ_ADMINISTRATOR_ROLE','DATAPUMP_EXP_FULL_DATABASE','DBA','APEX_PUBLIC_USER') ORDER BY 2; Alguém tem alguma outra sugestão ou achou essa consulta falha ??
Re: [oracle_br] Usuários com privilégios arriscados
Rafael Considerar as roles atribuídas aos usuários também? [ ] André Em 10 de junho de 2014 10:13, Rafael Mendonca raffaell.t...@yahoo.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Senhores, estou buscando em minha base de produção, usuários que tenham permissões que possam de alguma maneira, causar algum tipo de impacto no database/sistema. A priori estou procurando por privilégios do tipo DDL, ou algum outro privilégio com ANY fazendo com que possa alterar dados de outro schema/sistema. Gostaria da opnião de vocês se estaria faltando algum(ns) privilégio(s) a mais que seria interessante rastrear. Montei a seguinte query: SELECT PRIVILEGE, grantee FROM dba_sys_privs WHERE (privilege LIKE '%CREATE%' OR privilege LIKE '%DROP%' OR privilege LIKE '%ALTER%' OR privilege LIKE '%TRUNC%' OR privilege LIKE '%ANY%' ) AND GRANTEE NOT IN ('SYS','SYSTEM','SYSAUX','DMSYS','EXFSYS','IMP_FULL_DATABASE','EXP_FULL_DATABASE','MDSYS','WMSYS','XDB','CTXSYS','APEX_030200','APPQOSSYS','AQ_ADMINISTRATOR_ROLE','DATAPUMP_EXP_FULL_DATABASE','DBA','APEX_PUBLIC_USER') ORDER BY 2; Alguém tem alguma outra sugestão ou achou essa consulta falha ??
[oracle_br] Re: Usuários com privilégios arriscados
Bem, vc não diz mas em primeiro lugar, entendo que vc está focando nos privilégios de sistema : obviamente, um privilégio de acesso/DDL/DML impróprio nas tabelas do aplicativo pode ** detonar ** o aplicativo, deixando-o fora de combate rapidinho, mas isso vai ser tratado/está sendo tratado numa outra atuação... Com isso em mente, eu diria : a) faltam aí checar os privilégios UNLIMITED TABLESPACE (que permite criar objs na tablespace SYSTEM, talvez até eventualmente lotando-a e assim derrubando o banco, ou no mínimo causando problemas de performance/administração), de DEBUG, ADMINISTER, , de FLASHBACK e de EXPORT : em tese não se derruba um banco com eles MAS podem causar lentidão e pros de acesso se mal-usados b) falta checar os privilégios de EXECUTE nas packages internas pertencentes ao SYS e aos schemas internos (algumas dessas são mega-poderosas, com LARGA margem para exploit c) muito importante : falta checar os privilégios de sistema recebidos por ROLES, principalmente a role DBA e as roles de operadores do database : acredite ou não, ainda hoje vc encontra aplicativo que exige que o usuário dono das tabs dele receba role de DBA, de DBOPER, ou coisa assim... []s Chiappa OBS : = vc pode se basear no script abaixo, que lista TODOS os privs, seja recebidos diretamente, seja por role, seja privs de execute, adapte-o pra sua necessiadde... set echo off set verify off set pages col granted_role form a28 col owner form a15 col table_name form a33 col privilege form a33 ACCEPT username prompt 'Enter Username : ' PROMPT Roles granted to user SELECT granted_role,admin_option,default_role FROM dba_role_privs WHERE grantee=UPPER('username') 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') ORDER BY 1,2,3; PROMPT System privileges assigned directly to a user SELECT privilege, admin_option FROM dba_sys_privs WHERE grantee=UPPER('username') ORDER BY 1; undefine username /
Re: [oracle_br] Re: Problema de Comunicaç ão entre Aplicação e BD
Pessoal, Agradeço demais as explanações feitas por vocês afim de me direcionar para a solução do problema. Acabou que ontem a tarde detectamos o real motivo do problema e como vocês mesmo já haviam dito, me parece ter sido implementação de código. Porém, é a segunda vez que ocorre e gostaria de ver se você saberiam me explicar o que ocorre tecnicamente no Oracle. *CASO* Temos 2 aplicações que fazem interoperabilidade através de stored procedure, durante o processo de gravação de registros. A *aplicação A* abre uma transação e executa diversos INSERTs/UPDATEs na própria base de dados e em um determinado momento executa uma stored procedure através de um DBLINK que faz diversas validações na base de dados da *aplicação B*. Tudo funcionava perfeitamente até que um dia foi implementado neste procedimento uma leitura de uma tabela da *aplicação A *novamente e a partir deste dia começou a ocorrer o problema citado, onde a transação não retorna erro mas não grava nenhum dado na base da *aplicação A*. O Oracle não permite que durante um processo de gravação seja estabelecido a comunicação de A - B e de B - A em uma mesma transação? Abraços, Marcos Em 9 de junho de 2014 09:19, Marcos Antônio de Araújo maac...@gmail.com escreveu: Chiappa, Valeu demais esta sua explicação. Vou sentar com as chefias aqui e repassar tudo isto afim de detectarmos o problema. Obrigado! Abraços, Marcos Em 9 de junho de 2014 00:06, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: No RDBMS Oracle, o trace de SQL pode ser aplicado a um SQL específico, a uma sessão, ou a todas as sessões que se conectarem ao banco de dados : não há, por parte do RDBMS, nenhuma opção de trace a nível de instância nem a nível de servidor. Não haverá, portanto, a necessidade de restart do servidor, nem nada do tipo. A nível de database, os únicos parâmetros exigidos são o TIMED_STATISTICS=TRUE, os parâmetrso de dump apontando para um filesystem/disco com bastante espaço livre e o max_dump_file_size setado para um valor o mais alto possível. Evidentemente : a) traces do tipo podem interferir SERIAMENTE com a performance, já que tipicamente um database Oracle de produção processa centenas de SQLs a cada curto período : assim sendo, JAMAIS vc ativará o trace num período de uso comum, mas sim num período/dia escolhido aonde haja o menor número de utilizadores, ou até mesmo (preferencialmente) só o usuário testador b) os arquivos gerados por esse trace tendem a crescer muito, então o servidor deve ser Preparado, liberando-se o máximo de espaço possível (ou mesmo adicionando-se espaço extra) c) deve ser levantado se o ambiente usa algum tipo de POOL DE CONEXÕES, aonde a aplicação não cria uma sessão para cada conexão, mas sim cada comando enviado ao database por cada conexão são atendidos por uma sessão pré-criada pelo pool : se isso for verdadeiro, o pessoal aí terá que instrumentar/identificar a sessão, com um dos mecanismo de end-to-end trace : veja http://www.dbspecialists.com/files/presentations/tracing_ind_sessions.html para um exemplo d) deve ser levantada a comunicação com o database, no sentido de checar se cada tela do aplicativo abre uma conexão ou não, se é viável indicar uma sessão específica para os testes... Isso é no sentido de facilitar a sessão a tracejar, Evtando trace a nível de database que via de regra é por demais intrusivo []s Chiappa OBS : como referência, indico além da documentação Oracle (em especial o manual de Tuning), também os links http://www.oracle-base.com/articles/misc/sql-trace-10046-trcsess-and-tkprof.php , http://www.databasejournal.com/features/oracle/article.php/3469891/Collecting-Oracle-Extended-Trace-10046-event.htm , http://www.dicka.eclipse.co.uk/oracle_trace_event_10046_notes.htm e The Oracle Instructor: Oracle TRACE EVENT 10046 http://shoaib-dba.blogspot.com.br/2012/06/oracle-trace-event-10046.html The Oracle Instructor: Oracle TRACE EVENT 10046 http://shoaib-dba.blogspot.com.br/2012/06/oracle-trace-event-10046.html Visualizar em shoaib-dba.blogspot.com.br http://shoaib-dba.blogspot.com.br/2012/06/oracle-trace-event-10046.html Visualização pelo Yahoo
Re: [oracle_br] problemas disco asm
Wadson, se ele usa multipath, conforme ele mesmo informou, as permissões que ele deve olhar são dos devices multipath, e não dos devices apresentados. Qual o caminho dos discos apresentados para o ASM? /dev/mapper? Como estão as permissões dentro desses devices? Qual a saída dos comandos nos 3 nodes: ls -ltrh /dev/oracleasm/disks/* ls -ltrh /dev/mapper/* 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: vjunior1981 https://mybizcard.co/vitor.jr.385628 Em 10 de junho de 2014 08:37, Wadson Ramon wra...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Pelo visto amigo vc perdeu as permissões, vai ter que setar novamente. Em 09/06/2014 20:42, Orfeu Lima orfeu.l...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: segue as informações de permissões dos nós. nós 1 e 2 [root@sbsb241 dev]# ls -la sd* brw-r- 1 root disk 8, 0 May 5 09:23 sda brw-r- 1 root disk 8, 1 May 5 09:23 sda1 brw-r- 1 root disk 8, 2 May 5 09:23 sda2 brw-r- 1 root disk 8, 3 May 5 09:23 sda3 brw-r- 1 root disk 8, 16 May 5 09:23 sdb brw-r- 1 root disk 8, 17 May 5 09:23 sdb1 brw-r- 1 root disk 8, 18 May 5 09:23 sdb2 brw-r- 1 root disk 8, 32 May 5 09:23 sdc brw-r- 1 root disk 8, 33 May 5 09:23 sdc1 brw-r- 1 root disk 8, 34 May 5 09:23 sdc2 brw-r- 1 root disk 8, 48 May 5 09:23 sdd brw-r- 1 root disk 8, 49 May 5 09:23 sdd1 brw-r- 1 root disk 8, 50 May 5 09:23 sdd2 brw-r- 1 root disk 8, 64 May 5 09:23 sde brw-r- 1 root disk 8, 65 May 5 09:23 sde1 brw-r- 1 root disk 8, 66 May 5 09:23 sde2 brw-r- 1 root disk 8, 80 May 5 09:23 sdf brw-r- 1 root disk 8, 81 May 5 09:23 sdf1 brw-r- 1 root disk 8, 82 May 5 09:23 sdf2 brw-r- 1 root disk 8, 96 May 5 09:23 sdg brw-r- 1 root disk 8, 97 May 5 09:23 sdg1 brw-r- 1 root disk 8, 98 May 5 09:23 sdg2 brw-r- 1 root disk 8, 112 May 5 09:23 sdh brw-r- 1 root disk 8, 113 May 5 09:23 sdh1 brw-r- 1 root disk 8, 114 May 5 09:23 sdh2 brw-r- 1 root disk 8, 128 May 5 09:23 sdi brw-r- 1 root disk 8, 129 May 5 09:23 sdi1 brw-r- 1 root disk 8, 130 May 5 09:23 sdi2 --nó 3 -- [root@sbsb198 ~]# ls -la /dev/sd* brw-r- 1 root disk 8, 0 Jun 3 17:20 /dev/sda brw-r- 1 root disk 8, 1 Jun 3 17:21 /dev/sda1 brw-r- 1 root disk 8, 2 Jun 3 17:20 /dev/sda2 brw-r- 1 root disk 8, 3 Jun 3 17:21 /dev/sda3 brw-r- 1 root disk 8, 16 Jun 3 17:20 /dev/sdb brw-r- 1 root disk 8, 32 Jun 3 17:20 /dev/sdc brw-r- 1 root disk 8, 48 Jun 3 17:20 /dev/sdd brw-r- 1 root disk 8, 64 Jun 3 17:20 /dev/sde brw-r- 1 root disk 8, 80 Jun 3 17:20 /dev/sdf brw-r- 1 root disk 8, 96 Jun 3 17:20 /dev/sdg brw-r- 1 root disk 8, 112 Jun 3 17:20 /dev/sdh brw-r- 1 root disk 8, 128 Jun 3 17:20 /dev/sdi brw-r- 1 root disk 8, 144 Jun 3 17:20 /dev/sdj brw-r- 1 root disk 8, 160 Jun 3 17:20 /dev/sdk brw-r- 1 root disk 8, 176 Jun 3 17:20 /dev/sdl brw-r- 1 root disk 8, 192 Jun 3 17:20 /dev/sdm Em 9 de junho de 2014 19:54, Marcelo Santino e...@marcelosantino.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Orfeu, Você configurou certinho o oracleasm (oracleasm configure -i) ? E a lib asmlib foi instalada também? Uma vez perdi mó tempão quebrando a cabeça porque os discos criados no node1 não estavam aparecendo no node2, até que eu me liguei que não tinha instalado a asmlib nele... Depois que instalei, rebootei e os discos já apareceram na boa... Mas só tomei problema quando iniciei a instalação e não conseguia achar os discos pra adicionar ao ASM... Sei que é uma pergunta ridicula, mas as vezes passa um detalhe bobo que não demos atenção... Abs, *Marcelo Santino* DBA SQL Server / Oracle www.bau-de-dev.com http://www-bau-de-dev.com +55 21 98206-9930 http://www.facebook.com/CelaoRJ http://br.linkedin.com/in/msantino http://twitter.com/#!/msantino 2014-06-09 19:48 GMT-03:00 Orfeu Lima orfeu.l...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br: Bom dia Srs do grupo. ambiente S.O - rhel 5 SGBD - Oracle Rac 11.2.0.3 com 2 nós. Estou tentando adicionar um terceiro nó ao meu rac. Fiz as atualizações e configurei o asm. Configurei o multipath do mesmo modo que os outros dois nós, tendo me apresentando os volumes no terceiro nó. Ao tentar listar os discos pelo terceiro nó ele me apresentou os erros que estão no /var/log/oracleasm
Re: [oracle_br] Re: Usuários com privilégios arriscados
Chiappa, não consegui realizar a consulta com a sua query: Primeira observação: PROMPT System privileges assigned directly to a user Essa consulta mostra todos os privilegios dados diretamente pros usuarios, inclusive para as ROLES. Que é a que eu tinha feito no primeiro tópico, beleza (: O problema é que agora preciso dos privilégios dos usuários dados através de ROLES, que seria essa que você mandou: SELECT granted_role, privilege FROM ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER ('username') ) ) 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('username') ORDER BY 1,2,3; Só que o problema é que quero de todos os usuários e não colocar um determinado usuário. O que fiz foi comentar as cláusulas WHERE grantee=UPPER('username'), para me mostrar tudo e colocar o grantee no SELECT. Ficou muito tosco, não me mostra os usuários só as roles e seus determinados privilégios, e acabei sem identificar os usuários, poderia me ajudar? Realmente esse select nao consegui modificar de acordo com a minha necessidade. Em Terça-feira, 10 de Junho de 2014 11:32, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Bem, vc não diz mas em primeiro lugar, entendo que vc está focando nos privilégios de sistema : obviamente, um privilégio de acesso/DDL/DML impróprio nas tabelas do aplicativo pode ** detonar ** o aplicativo, deixando-o fora de combate rapidinho, mas isso vai ser tratado/está sendo tratado numa outra atuação... Com isso em mente, eu diria : a) faltam aí checar os privilégios UNLIMITED TABLESPACE (que permite criar objs na tablespace SYSTEM, talvez até eventualmente lotando-a e assim derrubando o banco, ou no mínimo causando problemas de performance/administração), de DEBUG, ADMINISTER, , de FLASHBACK e de EXPORT : em tese não se derruba um banco com eles MAS podem causar lentidão e pros de acesso se mal-usados b) falta checar os privilégios de EXECUTE nas packages internas pertencentes ao SYS e aos schemas internos (algumas dessas são mega-poderosas, com LARGA margem para exploit c) muito importante : falta checar os privilégios de sistema recebidos por ROLES, principalmente a role DBA e as roles de operadores do database : acredite ou não, ainda hoje vc encontra aplicativo que exige que o usuário dono das tabs dele receba role de DBA, de DBOPER, ou coisa assim... []s Chiappa OBS : = vc pode se basear no script abaixo, que lista TODOS os privs, seja recebidos diretamente, seja por role, seja privs de execute, adapte-o pra sua necessiadde... set echo off set verify off set pages col granted_role form a28 col owner form a15 col table_name form a33 col privilege form a33 ACCEPT username prompt 'Enter Username : ' PROMPT Roles granted to user SELECT granted_role,admin_option,default_role FROM dba_role_privs WHERE grantee=UPPER('username') 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') ORDER BY 1,2,3; PROMPT System privileges assigned directly to a user SELECT privilege, admin_option FROM dba_sys_privs WHERE grantee=UPPER('username') ORDER BY 1; undefine username /
Re: [oracle_br] Re: Usuários com privilégios arriscados
Uma outra coisa é que também não consigo mais copiar/selecionar os textos aqui no grupo, só está acontecendo comigo? Em , Rafael Mendonca raffaell.t...@yahoo.com escreveu: Chiappa, não consegui realizar a consulta com a sua query: Primeira observação: PROMPT System privileges assigned directly to a user Essa consulta mostra todos os privilegios dados diretamente pros usuarios, inclusive para as ROLES. Que é a que eu tinha feito no primeiro tópico, beleza (: O problema é que agora preciso dos privilégios dos usuários dados através de ROLES, que seria essa que você mandou: SELECT granted_role, privilege FROM ( SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER ('username') ) ) 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('username') ORDER BY 1,2,3; Só que o problema é que quero de todos os usuários e não colocar um determinado usuário. O que fiz foi comentar as cláusulas WHERE grantee=UPPER('username'), para me mostrar tudo e colocar o grantee no SELECT. Ficou muito tosco, não me mostra os usuários só as roles e seus determinados privilégios, e acabei sem identificar os usuários, poderia me ajudar? Realmente esse select nao consegui modificar de acordo com a minha necessidade. Em Terça-feira, 10 de Junho de 2014 11:32, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Bem, vc não diz mas em primeiro lugar, entendo que vc está focando nos privilégios de sistema : obviamente, um privilégio de acesso/DDL/DML impróprio nas tabelas do aplicativo pode ** detonar ** o aplicativo, deixando-o fora de combate rapidinho, mas isso vai ser tratado/está sendo tratado numa outra atuação... Com isso em mente, eu diria : a) faltam aí checar os privilégios UNLIMITED TABLESPACE (que permite criar objs na tablespace SYSTEM, talvez até eventualmente lotando-a e assim derrubando o banco, ou no mínimo causando problemas de performance/administração), de DEBUG, ADMINISTER, , de FLASHBACK e de EXPORT : em tese não se derruba um banco com eles MAS podem causar lentidão e pros de acesso se mal-usados b) falta checar os privilégios de EXECUTE nas packages internas pertencentes ao SYS e aos schemas internos (algumas dessas são mega-poderosas, com LARGA margem para exploit c) muito importante : falta checar os privilégios de sistema recebidos por ROLES, principalmente a role DBA e as roles de operadores do database : acredite ou não, ainda hoje vc encontra aplicativo que exige que o usuário dono das tabs dele receba role de DBA, de DBOPER, ou coisa assim... []s Chiappa OBS : = vc pode se basear no script abaixo, que lista TODOS os privs, seja recebidos diretamente, seja por role, seja privs de execute, adapte-o pra sua necessiadde... set echo off set verify off set pages col granted_role form a28 col owner form a15 col table_name form a33 col privilege form a33 ACCEPT username prompt 'Enter Username : ' PROMPT Roles granted to user SELECT granted_role,admin_option,default_role FROM dba_role_privs WHERE grantee=UPPER('username') 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') UNION SELECT granted_role FROM role_role_privs WHERE role in (SELECT granted_role FROM dba_role_privs WHERE grantee=UPPER('username') ) ) 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('username') ORDER BY 1,2,3; PROMPT System privileges assigned directly to a user SELECT privilege, admin_option FROM dba_sys_privs WHERE grantee=UPPER('username') ORDER BY 1; undefine username /
Re: [oracle_br] Re: Usuários com privilégio s arriscados
Ao menos pela interface web (site https://br.groups.yahoo.com/neo/groups/oracle_br/conversations , que é o que uso), Com Certeza é algo aí do seu lado : eu a todo momento copio o texto de uma questão e jogo num editor de texto para responder olhando o que foi dito , acho que facilita bastante... A única coisa que eu faço de extra é (nos casos onde há uma resultado de sqlplus) , na janela que está exibindo a conversa atual, clicar no botão 'Exibir' e escolher a opção Fonte com largura Fixa ... []s Chiappa
Re: [oracle_br] Re: Problema de Comunicaç ão entre Aplicação e BD
Vamos lá, bora tentar matar mais essa charada Pergunta em cima da pergunta... Na aplicação A, quando o procedimento que faz a leitura da tabela, ela vai sempre ao DBLINK para acessar também base B? Ou não necessariamente, podendo variar tipo, pode ir ou não? O fato de ter alterado, se nao mexeram no DBLINK, teoricamente nao deveria alterar em nada.. Quanto ao processo do gravação, acho que o Oracle não interfere não, até porque o controle ta dentro do codigo, na transação aberta tudo vai ser processado como se fosse uma coisa só.. e a conta fecha, quando vier o commit encerrando o processo. Bom, to dando pitaco sem testar.. O que se pode fazer é checar a conectividade, se o DBLINK está de pé (se bem que se nao tivesse daria erro na primeiro select bla, bla from tabela@B ) no momento da execução.. 2014-06-10 10:04 GMT-03:00 Marcos Antônio de Araújo maac...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br: Pessoal, Agradeço demais as explanações feitas por vocês afim de me direcionar para a solução do problema. Acabou que ontem a tarde detectamos o real motivo do problema e como vocês mesmo já haviam dito, me parece ter sido implementação de código. Porém, é a segunda vez que ocorre e gostaria de ver se você saberiam me explicar o que ocorre tecnicamente no Oracle. *CASO* Temos 2 aplicações que fazem interoperabilidade através de stored procedure, durante o processo de gravação de registros. A *aplicação A* abre uma transação e executa diversos INSERTs/UPDATEs na própria base de dados e em um determinado momento executa uma stored procedure através de um DBLINK que faz diversas validações na base de dados da *aplicação B*. Tudo funcionava perfeitamente até que um dia foi implementado neste procedimento uma leitura de uma tabela da *aplicação A *novamente e a partir deste dia começou a ocorrer o problema citado, onde a transação não retorna erro mas não grava nenhum dado na base da *aplicação A*. O Oracle não permite que durante um processo de gravação seja estabelecido a comunicação de A - B e de B - A em uma mesma transação? Abraços, Marcos Em 9 de junho de 2014 09:19, Marcos Antônio de Araújo maac...@gmail.com escreveu: Chiappa, Valeu demais esta sua explicação. Vou sentar com as chefias aqui e repassar tudo isto afim de detectarmos o problema. Obrigado! Abraços, Marcos Em 9 de junho de 2014 00:06, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: No RDBMS Oracle, o trace de SQL pode ser aplicado a um SQL específico, a uma sessão, ou a todas as sessões que se conectarem ao banco de dados : não há, por parte do RDBMS, nenhuma opção de trace a nível de instância nem a nível de servidor. Não haverá, portanto, a necessidade de restart do servidor, nem nada do tipo. A nível de database, os únicos parâmetros exigidos são o TIMED_STATISTICS=TRUE, os parâmetrso de dump apontando para um filesystem/disco com bastante espaço livre e o max_dump_file_size setado para um valor o mais alto possível. Evidentemente : a) traces do tipo podem interferir SERIAMENTE com a performance, já que tipicamente um database Oracle de produção processa centenas de SQLs a cada curto período : assim sendo, JAMAIS vc ativará o trace num período de uso comum, mas sim num período/dia escolhido aonde haja o menor número de utilizadores, ou até mesmo (preferencialmente) só o usuário testador b) os arquivos gerados por esse trace tendem a crescer muito, então o servidor deve ser Preparado, liberando-se o máximo de espaço possível (ou mesmo adicionando-se espaço extra) c) deve ser levantado se o ambiente usa algum tipo de POOL DE CONEXÕES, aonde a aplicação não cria uma sessão para cada conexão, mas sim cada comando enviado ao database por cada conexão são atendidos por uma sessão pré-criada pelo pool : se isso for verdadeiro, o pessoal aí terá que instrumentar/identificar a sessão, com um dos mecanismo de end-to-end trace : veja http://www.dbspecialists.com/files/presentations/tracing_ind_sessions.html para um exemplo d) deve ser levantada a comunicação com o database, no sentido de checar se cada tela do aplicativo abre uma conexão ou não, se é viável indicar uma sessão específica para os testes... Isso é no sentido de facilitar a sessão a tracejar, Evtando trace a nível de database que via de regra é por demais intrusivo []s Chiappa OBS : como referência, indico além da documentação Oracle (em especial o manual de Tuning), também os links http://www.oracle-base.com/articles/misc/sql-trace-10046-trcsess-and-tkprof.php , http://www.databasejournal.com/features/oracle/article.php/3469891/Collecting-Oracle-Extended-Trace-10046-event.htm , http://www.dicka.eclipse.co.uk/oracle_trace_event_10046_notes.htm e The Oracle Instructor: Oracle TRACE EVENT 10046 http://shoaib-dba.blogspot.com.br/2012/06/oracle-trace-event-10046.html The Oracle Instructor: Oracle TRACE EVENT 10046
Re: [oracle_br] Re: Problema de Comunicaç ão entre Aplicação e BD
Marcos Depende muito de como foi elaborado o código PL/SQL... até mesmo um SELECT pode gerar erro... e como é feito o tratamento dos erros (exceptions)? [ ]'s André Em 10 de junho de 2014 17:14, angelo angelolis...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Vamos lá, bora tentar matar mais essa charada Pergunta em cima da pergunta... Na aplicação A, quando o procedimento que faz a leitura da tabela, ela vai sempre ao DBLINK para acessar também base B? Ou não necessariamente, podendo variar tipo, pode ir ou não? O fato de ter alterado, se nao mexeram no DBLINK, teoricamente nao deveria alterar em nada.. Quanto ao processo do gravação, acho que o Oracle não interfere não, até porque o controle ta dentro do codigo, na transação aberta tudo vai ser processado como se fosse uma coisa só.. e a conta fecha, quando vier o commit encerrando o processo. Bom, to dando pitaco sem testar.. O que se pode fazer é checar a conectividade, se o DBLINK está de pé (se bem que se nao tivesse daria erro na primeiro select bla, bla from tabela@B ) no momento da execução.. 2014-06-10 10:04 GMT-03:00 Marcos Antônio de Araújo maac...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br: Pessoal, Agradeço demais as explanações feitas por vocês afim de me direcionar para a solução do problema. Acabou que ontem a tarde detectamos o real motivo do problema e como vocês mesmo já haviam dito, me parece ter sido implementação de código. Porém, é a segunda vez que ocorre e gostaria de ver se você saberiam me explicar o que ocorre tecnicamente no Oracle. *CASO* Temos 2 aplicações que fazem interoperabilidade através de stored procedure, durante o processo de gravação de registros. A *aplicação A* abre uma transação e executa diversos INSERTs/UPDATEs na própria base de dados e em um determinado momento executa uma stored procedure através de um DBLINK que faz diversas validações na base de dados da *aplicação B*. Tudo funcionava perfeitamente até que um dia foi implementado neste procedimento uma leitura de uma tabela da *aplicação A *novamente e a partir deste dia começou a ocorrer o problema citado, onde a transação não retorna erro mas não grava nenhum dado na base da *aplicação A*. O Oracle não permite que durante um processo de gravação seja estabelecido a comunicação de A - B e de B - A em uma mesma transação? Abraços, Marcos Em 9 de junho de 2014 09:19, Marcos Antônio de Araújo maac...@gmail.com escreveu: Chiappa, Valeu demais esta sua explicação. Vou sentar com as chefias aqui e repassar tudo isto afim de detectarmos o problema. Obrigado! Abraços, Marcos Em 9 de junho de 2014 00:06, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: No RDBMS Oracle, o trace de SQL pode ser aplicado a um SQL específico, a uma sessão, ou a todas as sessões que se conectarem ao banco de dados : não há, por parte do RDBMS, nenhuma opção de trace a nível de instância nem a nível de servidor. Não haverá, portanto, a necessidade de restart do servidor, nem nada do tipo. A nível de database, os únicos parâmetros exigidos são o TIMED_STATISTICS=TRUE, os parâmetrso de dump apontando para um filesystem/disco com bastante espaço livre e o max_dump_file_size setado para um valor o mais alto possível. Evidentemente : a) traces do tipo podem interferir SERIAMENTE com a performance, já que tipicamente um database Oracle de produção processa centenas de SQLs a cada curto período : assim sendo, JAMAIS vc ativará o trace num período de uso comum, mas sim num período/dia escolhido aonde haja o menor número de utilizadores, ou até mesmo (preferencialmente) só o usuário testador b) os arquivos gerados por esse trace tendem a crescer muito, então o servidor deve ser Preparado, liberando-se o máximo de espaço possível (ou mesmo adicionando-se espaço extra) c) deve ser levantado se o ambiente usa algum tipo de POOL DE CONEXÕES, aonde a aplicação não cria uma sessão para cada conexão, mas sim cada comando enviado ao database por cada conexão são atendidos por uma sessão pré-criada pelo pool : se isso for verdadeiro, o pessoal aí terá que instrumentar/identificar a sessão, com um dos mecanismo de end-to-end trace : veja http://www.dbspecialists.com/files/presentations/tracing_ind_sessions.html para um exemplo d) deve ser levantada a comunicação com o database, no sentido de checar se cada tela do aplicativo abre uma conexão ou não, se é viável indicar uma sessão específica para os testes... Isso é no sentido de facilitar a sessão a tracejar, Evtando trace a nível de database que via de regra é por demais intrusivo []s Chiappa OBS : como referência, indico além da documentação Oracle (em especial o manual de Tuning), também os links http://www.oracle-base.com/articles/misc/sql-trace-10046-trcsess-and-tkprof.php ,
Re: [oracle_br] Re: Problema de Comunicaç ão entre Aplicação e BD
Boa tarde Angelo, Na aplicação A quando esta executando a transação de gravação só executa o acesso a B em uma condição especifica. Logo quando se passava pela execução da stored procedure via DBLINK para a B o processo sempre era concluído com sucesso. O problema somente ocorre quando a stored procedure é executada. A minha dúvida é tecnicamente falando o Oracle consegue controlar sem problemas esta via de mão dupla, onde a aplicação A faz o acesso a B e na mesma transação a B faz acesso a A? Ao estabelecer esta comunicação entre as aplicações é somente um canal que é aberto? Ou cada comando trata de forma isolada a comunicação entre ambas aplicações? Abraços Em 10 de junho de 2014 17:14, angelo angelolis...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Vamos lá, bora tentar matar mais essa charada Pergunta em cima da pergunta... Na aplicação A, quando o procedimento que faz a leitura da tabela, ela vai sempre ao DBLINK para acessar também base B? Ou não necessariamente, podendo variar tipo, pode ir ou não? O fato de ter alterado, se nao mexeram no DBLINK, teoricamente nao deveria alterar em nada.. Quanto ao processo do gravação, acho que o Oracle não interfere não, até porque o controle ta dentro do codigo, na transação aberta tudo vai ser processado como se fosse uma coisa só.. e a conta fecha, quando vier o commit encerrando o processo. Bom, to dando pitaco sem testar.. O que se pode fazer é checar a conectividade, se o DBLINK está de pé (se bem que se nao tivesse daria erro na primeiro select bla, bla from tabela@B ) no momento da execução.. 2014-06-10 10:04 GMT-03:00 Marcos Antônio de Araújo maac...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br: Pessoal, Agradeço demais as explanações feitas por vocês afim de me direcionar para a solução do problema. Acabou que ontem a tarde detectamos o real motivo do problema e como vocês mesmo já haviam dito, me parece ter sido implementação de código. Porém, é a segunda vez que ocorre e gostaria de ver se você saberiam me explicar o que ocorre tecnicamente no Oracle. *CASO* Temos 2 aplicações que fazem interoperabilidade através de stored procedure, durante o processo de gravação de registros. A *aplicação A* abre uma transação e executa diversos INSERTs/UPDATEs na própria base de dados e em um determinado momento executa uma stored procedure através de um DBLINK que faz diversas validações na base de dados da *aplicação B*. Tudo funcionava perfeitamente até que um dia foi implementado neste procedimento uma leitura de uma tabela da *aplicação A *novamente e a partir deste dia começou a ocorrer o problema citado, onde a transação não retorna erro mas não grava nenhum dado na base da *aplicação A*. O Oracle não permite que durante um processo de gravação seja estabelecido a comunicação de A - B e de B - A em uma mesma transação? Abraços, Marcos Em 9 de junho de 2014 09:19, Marcos Antônio de Araújo maac...@gmail.com escreveu: Chiappa, Valeu demais esta sua explicação. Vou sentar com as chefias aqui e repassar tudo isto afim de detectarmos o problema. Obrigado! Abraços, Marcos Em 9 de junho de 2014 00:06, jlchia...@yahoo.com.br [oracle_br] oracle_br@yahoogrupos.com.br escreveu: No RDBMS Oracle, o trace de SQL pode ser aplicado a um SQL específico, a uma sessão, ou a todas as sessões que se conectarem ao banco de dados : não há, por parte do RDBMS, nenhuma opção de trace a nível de instância nem a nível de servidor. Não haverá, portanto, a necessidade de restart do servidor, nem nada do tipo. A nível de database, os únicos parâmetros exigidos são o TIMED_STATISTICS=TRUE, os parâmetrso de dump apontando para um filesystem/disco com bastante espaço livre e o max_dump_file_size setado para um valor o mais alto possível. Evidentemente : a) traces do tipo podem interferir SERIAMENTE com a performance, já que tipicamente um database Oracle de produção processa centenas de SQLs a cada curto período : assim sendo, JAMAIS vc ativará o trace num período de uso comum, mas sim num período/dia escolhido aonde haja o menor número de utilizadores, ou até mesmo (preferencialmente) só o usuário testador b) os arquivos gerados por esse trace tendem a crescer muito, então o servidor deve ser Preparado, liberando-se o máximo de espaço possível (ou mesmo adicionando-se espaço extra) c) deve ser levantado se o ambiente usa algum tipo de POOL DE CONEXÕES, aonde a aplicação não cria uma sessão para cada conexão, mas sim cada comando enviado ao database por cada conexão são atendidos por uma sessão pré-criada pelo pool : se isso for verdadeiro, o pessoal aí terá que instrumentar/identificar a sessão, com um dos mecanismo de end-to-end trace : veja http://www.dbspecialists.com/files/presentations/tracing_ind_sessions.html para um exemplo d) deve ser levantada a comunicação com o database, no sentido de checar se cada tela do aplicativo abre
[oracle_br] Adicionando um novo DB ao RAC
Boa noite pessoal, Tenho um oracle rac de 2 nos, com grid 11.2.0.3 , e 4 bancos de dados: 2 com versao 10.2.0.1 E 2 com versao 11.2.0.3 . Tenho que adicionar a este servidor um novo banco de dados (zerado). E posteriormente ao outro no também. Nunca fiz uma operação dessa, sera que alguem poderia indicar o caminho? Ja tenho os discos reservados para o dg, amanha criarei o dg e chamarei o dbca, e dai pra frente vou buscar algumas notas da Oracle (projeto saiu de ultima hora). Agradeço desde ja, qualquer informacao Obrigado
Re: [oracle_br] problemas disco asm
seguem informações das permissões nos discos dos 3 nós. -nó 1 brw-rw 1 oracle oinstall 253, 2 May 5 09:24 /dev/oracleasm/disks/DG_DADOS1 brw-rw 1 oracle oinstall 253, 3 May 5 09:24 /dev/oracleasm/disks/DG_DADOS2 brw-rw 1 oracle oinstall 253, 4 May 5 09:24 /dev/oracleasm/disks/DG_ASM brw-rw 1 oracle oinstall 253, 5 May 5 09:24 /dev/oracleasm/disks/DG_DADOS [oracle@sbsb241 ~]$ ls -ltrh /dev/mapper/* crw--- 1 root root 10, 63 May 5 09:23 /dev/mapper/control brw-rw 1 root disk 253, 1 May 5 09:23 /dev/mapper/mpathd brw-rw 1 root disk 253, 0 May 5 09:23 /dev/mapper/mpathc brw-rw 1 root disk 253, 3 May 5 09:23 /dev/mapper/mpathdp2 brw-rw 1 root disk 253, 2 May 5 09:23 /dev/mapper/mpathdp1 brw-rw 1 root disk 253, 5 May 5 09:23 /dev/mapper/mpathcp2 brw-rw 1 root disk 253, 4 May 5 09:23 /dev/mapper/mpathcp1 ---nó 2 -- [oracle@sbsb242 ~]$ ls -ltrh /dev/oracleasm/disks/* brw-rw 1 oracle oinstall 253, 2 May 5 09:25 /dev/oracleasm/disks/DG_DADOS1 brw-rw 1 oracle oinstall 253, 3 May 5 09:25 /dev/oracleasm/disks/DG_DADOS2 brw-rw 1 oracle oinstall 253, 4 May 5 09:25 /dev/oracleasm/disks/DG_ASM brw-rw 1 oracle oinstall 253, 5 May 5 09:25 /dev/oracleasm/disks/DG_DADOS [oracle@sbsb242 ~]$ ls -ltrh /dev/mapper/* crw--- 1 root root 10, 63 May 5 09:23 /dev/mapper/control brw-rw 1 root disk 253, 0 May 5 09:24 /dev/mapper/mpathd brw-rw 1 root disk 253, 1 May 5 09:24 /dev/mapper/mpathc brw-rw 1 root disk 253, 3 May 5 09:24 /dev/mapper/mpathdp2 brw-rw 1 root disk 253, 2 May 5 09:24 /dev/mapper/mpathdp1 brw-rw 1 root disk 253, 5 May 5 09:24 /dev/mapper/mpathcp2 brw-rw 1 root disk 253, 4 May 5 09:24 /dev/mapper/mpathcp1 --nó 3 --- [oracle@sbsb198 ~]$ ls -ltrh /dev/oracleasm/disks/* ls: /dev/oracleasm/disks/*: No such file or directory [oracle@sbsb198 ~]$ ls -ltrh /dev/mapper/* crw--- 1 root root 10, 63 Jun 3 17:20 /dev/mapper/control brw-rw 1 root disk 253, 1 Jun 3 17:21 /dev/mapper/mpathd brw-rw 1 root disk 253, 0 Jun 3 17:21 /dev/mapper/mpathc [oracle@sbsb198 ~]$ Em 10 de junho de 2014 12:43, Vitor Junior vitorj...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Wadson, se ele usa multipath, conforme ele mesmo informou, as permissões que ele deve olhar são dos devices multipath, e não dos devices apresentados. Qual o caminho dos discos apresentados para o ASM? /dev/mapper? Como estão as permissões dentro desses devices? Qual a saída dos comandos nos 3 nodes: ls -ltrh /dev/oracleasm/disks/* ls -ltrh /dev/mapper/* 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: vjunior1981 https://mybizcard.co/vitor.jr.385628 Em 10 de junho de 2014 08:37, Wadson Ramon wra...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: Pelo visto amigo vc perdeu as permissões, vai ter que setar novamente. Em 09/06/2014 20:42, Orfeu Lima orfeu.l...@gmail.com [oracle_br] oracle_br@yahoogrupos.com.br escreveu: segue as informações de permissões dos nós. nós 1 e 2 [root@sbsb241 dev]# ls -la sd* brw-r- 1 root disk 8, 0 May 5 09:23 sda brw-r- 1 root disk 8, 1 May 5 09:23 sda1 brw-r- 1 root disk 8, 2 May 5 09:23 sda2 brw-r- 1 root disk 8, 3 May 5 09:23 sda3 brw-r- 1 root disk 8, 16 May 5 09:23 sdb brw-r- 1 root disk 8, 17 May 5 09:23 sdb1 brw-r- 1 root disk 8, 18 May 5 09:23 sdb2 brw-r- 1 root disk 8, 32 May 5 09:23 sdc brw-r- 1 root disk 8, 33 May 5 09:23 sdc1 brw-r- 1 root disk 8, 34 May 5 09:23 sdc2 brw-r- 1 root disk 8, 48 May 5 09:23 sdd brw-r- 1 root disk 8, 49 May 5 09:23 sdd1 brw-r- 1 root disk 8, 50 May 5 09:23 sdd2 brw-r- 1 root disk 8, 64 May 5 09:23 sde brw-r- 1 root disk 8, 65 May 5 09:23 sde1 brw-r- 1 root disk 8, 66 May 5 09:23 sde2 brw-r- 1 root disk 8, 80 May 5 09:23 sdf brw-r- 1 root disk 8, 81 May 5 09:23 sdf1 brw-r- 1 root disk 8, 82 May 5 09:23 sdf2 brw-r- 1 root disk 8, 96 May 5 09:23 sdg brw-r- 1 root disk 8, 97 May 5 09:23 sdg1 brw-r- 1 root disk 8, 98 May 5 09:23 sdg2 brw-r- 1 root disk 8, 112 May 5 09:23 sdh brw-r- 1 root disk 8, 113 May 5 09:23 sdh1 brw-r- 1 root disk 8, 114 May 5 09:23 sdh2 brw-r- 1 root