Hoje vou falar de um problema silencioso, e bem, nao e bemum problema, so se voce nao conhecer.Em ambientes clusterizados utilizando asm , e gerado um logde acesso que fica em $GRID_HOME/rdbms/audit.Sao pequenos arquivos com o conteudo bem banal, porem, senao tratarmos essa situacao pode ocorrer do servidor ficar sem espaco pois acada acesso de sys ao banco sera criado um log, e esses podem chegar atretralhoes de arquivos(tetralhoes = a um numero muito grande de arquivos)Abaixo estou mostrando como diagnosticar o problema:[grid@rac01~]$ du -hs $GRID_HOME/rdbms/audit8 G /u01/app/grid/11.2.0/grid/rdbms/audit[grid@rac01~]$ cd $GRID_HOME/rdbms/audit[grid@rac01audit]$ ls -l | wc -l1112896Puxa 8Gb de espaco desperdicado e 1 milhao de arquivos.Neste caso nem da para dar um rm pois o Linux se nao me falha a memoria sotrabalha com 65k de arquivos. Caso tentemos dar um rm sera apresentado o erro:Argument list too long (Lista de argumento muito longa) Neste cenario, podemos ficar sem espaco em disco se nada forfeito e consequentemente parar o banco por essa razao.Nada bom nao e?E o que diabos e tao importante para ser guardado nessearquivo, vejamos :[grid@rac01audit]$ cat +asm1_ora_9981_2.audAudit file/u01/app/grid/11.2.0/grid/rdbms/audit/+asm1_ora_9981_2.audOracleDatabase 11g Enterprise Edition Release 11.2.0.2.0 - 64bit ProductionWith theReal Application Clusters and Automatic Storage Management optionsORACLE_HOME= /u01/app/grid/11.2.0/gridSystemname: LinuxNode name: rac01Release: 2.6.18-194.el5Version: #1 SMP Mon Mar 29 22:10:29 EDT2010Machine: x86_64Instancename: +ASM1Redo threadmounted by this instance: 0 Oracleprocess number: 32Unixprocess pid: 9981, image: oracle@rac01.initso.at (TNS V1-V3)TueJul 5 12:12:06 2011 +02:00LENGTH :'144'ACTION :[7]'CONNECT'DATABASEUSER:[1] '/'PRIVILEGE:[6] 'SYSDBA'CLIENTUSER:[6] 'oracle'CLIENTTERMINAL:[0] ''STATUS:[1] '0'DBID:[0] ''Puxa quem bom. Eu posso viver sem essas informacoes, vamosdar um jeito nesse problema:Execute o comando abaixo para apagar os arquivos mais velhosque 30 dias:[grid@rac01audit]$ find /u01/app/grid/11.2.0/grid/rdbms/audit -maxdepth 1 -name '*.aud'-mtime +30 -delete -print/u01/app/grid/11.2.0/grid/rdbms/audit/+asm1_ora_24456_2.aud....../u01/app/grid/11.2.0/grid/rdbms/audit/+asm1_ora_9006_1.audEu recomendo criar uma entrada na cron para agendar esseprocesso uma vez por mes! Lembrando que isso Oracle ser realizado em todos osnos do cluster.Esse e um exemplo de como um pequeno problema pode parar umambiente de alta disponibilidade, uma bobagem!!! Mas que pode dar uma rasteirano dba!Ate a proxima. O tema de Hoje, em mundo ideal, seria desnecessario, porem como nao vivemos em um mundo ideal, vamos la.Imaginem a seguinte situacao: Em uma empresa, instituicao organizacao ou whatever que seja, existem aplicacoes , programas e pessoas, todas com suas necessidades de acesso em relacao ao banco de dados, a rede, servidor de impressao, arquivos etc..OK , mas para manter a ordem e a seguranca, e necessario seguir alguns criterios para que o caos nao se instaure.Em relacao a seguranca podemos dizer que o usuario deve possuir permissoes para realizar o seu trabalho, nem mais nem menos.Assim o correto e que se defina os niveis de acesso baseado na atividade a ser realizada.E muito comum todos solicitarem acesso a tudo sem criterio ou sem a minima preocupacao em mapear a real necessidade do usuario. Eu uso as seguintes perguntas para definir o acesso: O que o usuario faz?(qual sua funcao)Por que ele faz ?(Quantos usuarios desse tipo teremos?)Como ele Faz? (aqui as vezes detectamos rotinas de trabalho erradas e ai podemos sugerir melhorias-O famoso ensinar o peao a trabalhar)Qual o objetivo?(o que deve ser atingido?) Certo com isso eu continuo: O que o usuario pensa