----触发器--- ---创建中间插入的表

create table session_history tablespace bap_data as (select sid,username,program,machine,'000.000.000.000'ipadd,sysdate moditime from v$session where 0=1);

---创建触发器---只要登陆数据库就触发

create or replace trigger on_logon_trigger  after logon on database  begin insert into session_history select sid,username,program,machine,sys_context('userenv','ip_address'),sysdate from v$session where audsid = userenv('sessionid'); end;

---查询登陆信息

select * from  session_history q where q.username not in ('SYS')

------------直接在数据库SYS用户层面修改----(实际操作是步骤3)

-- 1. 利用triger

begin

dbms_application_info.set_client_info(sys_context( 'userenv', 'ip_address' ) );

end;

2. 利用 DBMS_SESSION 过程包.

BEGIN

DBMS_SESSION.set_identifier(SYS_CONTEXT('USERENV', 'IP_ADDRESS'));

END;

3.我们可以通过触发器

create or replace trigger on_logon_trigger

after logon on database

begin

dbms_application_info.set_client_info(sys_context( 'userenv', 'ip_address' ) );

end;

/

4.验证 这样当客户端登陆后,在v$session的client_info列会记录其相应的IP信息。

这里才查询v$session ,你会发现 v$session 多了一列 记录客户端的IP.

select client_info from v$session;

select count(client_info) from v$session;

set pagesize 1000 line 1000 select a.description,a.trigger_body from dba_triggers a where a.owner='SYS' AND A.status='ENABLED';

select count(1) from dba_triggers a where a.owner='SYS' AND A.status='ENABLED';

select client_info from v$session where client_info is not  null ;

----11G 直接添加就行;12C 需要给 CDB 和每个PDB 单独添加

转载于:https://www.cnblogs.com/ss-33/p/8931889.html

oracle 添加登陆数据库触发器--记录IP 地址相关推荐

  1. 【oracle】查看数据库服务器的ip地址的SQL

    前言 Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production PL/SQL 11.0.2.1766 查 ...

  2. 数据库修改服务器ip地址吗,服务器数据库与改ip地址吗

    服务器数据库与改ip地址吗 内容精选 换一换 云数据库 GaussDB NoSQL与其他服务的关系,如图1所示. 安全组的默认规则是在出方向上的数据报文全部放行,同一个安全组内的弹性云服务器和数据库实 ...

  3. mysql数据库如何修改ip地址

    在MySQL数据库中修改IP地址,需要修改MySQL的配置文件(my.cnf或my.ini),并在其中更改相关的IP设置. 具体步骤如下: 打开MySQL的配置文件:在Windows系统中,可以在&q ...

  4. oracle数据库存储ip地址,oracle – 以十进制形式存储的IP地址 – PL / SQL以虚线四边形显示...

    这是您需要的功能: create or replace function inttoip(ip_address integer) return varchar2 deterministic is be ...

  5. Oracle 11g RAC 修改服务器各类ip地址【转载】

    此文转载自"架构君" ,地址:https://javajgs.com/archives/72358 此文说明较为详细,所以留作参考,详细内容如下. Oracle 11g RAC 修 ...

  6. oracle 主机名改ip,[oracle 10.2]主机名或者IP地址改变造成的dbconsole服务无法启动解决...

    最近在使用oracle时发现当主机Ip地址更改后,dbconsole服务无法启动.在网上搜了一些文章,加上自己的摸索,如下这篇文章的方法帮我解决了问题.贴出来给大家参考. 注: 1,第2步中的那些dr ...

  7. 在数据库中存储IP地址

    IP addresses can be stored in a database in any of several ways.  These ways may vary based on the v ...

  8. Oracle 添加RAC数据库集群节点(一)

    本系列文章详细记录了在已有两个rac节点的基础上,添加rac第3个节点的过程,期间对rac的使用没有任何影响,rac节点的操作系统均为centos4.8 64位版,数据库版本均为10.2.0.1 一: ...

  9. 添加日志_第五章springboot2.0添加aop日志实现记录请求地址

    1. 添加spring-boot-starter-aop包 <dependency> <groupId>org.springframework.bootgroupId> ...

最新文章

  1. [Android Pro] InputStream.skip方法的思考
  2. 基于SEAL库实现PSI-报错实录2
  3. 基于ASP.NET Core 3.0的ABP v0.21已发布
  4. leetcode54. 螺旋矩阵(详解)
  5. 超详细!上线一个机器学习项目你需要哪些准备?
  6. JAVASCRIPT干了不下四五种工作
  7. js中ajax的异步性
  8. HDOJ 1713 相遇周期 (最大公约数与最小公倍数)
  9. 用LoadRunner实现接口测试
  10. 电子商务入门、实操、行业分析及公司案例等精彩系列问答有哪些?
  11. 用word怎么做c语言框图作业,在Word中绘制简单C语言流程图(精)
  12. 详解PWM原理、频率与占空比
  13. NetSuite 巧做打印模板
  14. linux 查看 java opts,linux查看java opts
  15. Diligent宣布2021年现代治理100强公司名单
  16. 区块链学习系列:对称与非对称加密区别?
  17. 【前端框架】前端框架学习
  18. deepin 下 WPS for linux字体显示问题[已解决]
  19. 什么是浮动、为什么要清除浮动
  20. 你们有半数以上的人留下的是gmail而不是QQMail/Foxmail的电子邮件

热门文章

  1. 处理图片(updated)
  2. Session Cookies Cache 的区别
  3. 使用.Net平台构建企业应用系统场(下)
  4. DEBIAN vim的语法高亮和自动縮进
  5. 利用委托机制处理.NET中的异常
  6. 用Apache Hadoop和Apache Solr处理和索引医学图像
  7. Google I/O大会,炫酷产品汇总
  8. 图像处理之应用篇-大米计数续
  9. 企业需要建设网站该如何咨询价格呢?
  10. 微服务,微架构[五]之springboot读取properties文件