Vamos lá você quer gravar todos os usuários que se conectão em sua base de dados, e não deseja ativar a auditoria apenas para isso. Então minha sugestão seria criar uma trigger de logon, você pode criar uma trigger de logon com varias informaçoes basta incluir no select.
Na trigger de exemplo, eu só inclui data de logon, e o nome de usuário. Mas poderia ter incluso maquina, modulo que conectou, programa que conectou, qual sid, qual spid, serial, etc… as possibilidades são muitas. Basta você conhecer um pouso as visoes internas do oracle. (recomendo sempre utilizar a visão v$session para pegar estas informações).
Segue abaixo passos rápidos de como criar uma trigger de login. Após este procedimento você poderá criar a trigger com quantos campos achar necessário, basta programar.
SQL> select instance_name from v$instance; INSTANCE_NAME ---------------- lana SQL> CREATE TABLE connection_lana (login_date DATE,user_name VARCHAR2(30)); Table created. SQL> select * from connection_lana; no rows selected SQL> CREATE OR REPLACE TRIGGER teste_login after LOGON ON DATABASE when (USER LIKE 'SYS') DECLARE v_sid number; v_module varchar2(48); BEGIN INSERT INTO connection_lana (login_date, user_name) VALUES (SYSDATE, USER); END teste_login; / Trigger created. SQL> select trigger_name,status from dba_triggers where trigger_name='TESTE_LOGIN'; TRIGGER_NAME STATUS ------------------------------ -------- TESTE_LOGIN ENABLED SQL> conn / as sysdba Connected. SQL> select * from connection_lana; LOGIN_DAT USER_NAME --------- ------------------------------ 27-OCT-09 SYS
Autor: Leandro Lana
Trabalho com banco de dados Oracle desde 2006, já trabalhei com as plataformas 9i, 10G, 11G, 12C, 18C, 19C e 21(ainda em testes).
Trabalhando atualmente como consultor Oracle na MigraTI Soluções em TI como administrador de banco de dados Oracle, SQL-Server, MySQL e Postgresql.
Contato: leandro.lana@migrati.com.br
Fone: (47) 9191-6052 / (47) 3328 0996
Certificações:
OCA 10G.
OCP 10G.
OCE Linux.
OCE RAC/Cluster.
MCP SQL-Server 2008.
MCITP SQL-Server 2008.
DB2 Fundamentals.
One thought on “Trigger de logon”