oracle-session-统计某时间段连接数据库的客户端信息-非精准

简介:

统计某时间段连接数据库的客户端信息-非精准

适用于:迁移数据库同时ip变更时,统计原数据库的连接信息和dblink连接信息,以方便迁移后,修改相关dblink及申请安全开通网络权限
DBA_HIST_ACTIVE_SESS_HISTORY 可换成 v$active_session_history

查看统计的时间范围

set line 300
SELECT MIN (sample_time), MAX (sample_time) FROM dba_hist_active_sess_history;

MIN(SAMPLE_TIME)                                   MAX(SAMPLE_TIME)                                  
-------------------------------------------------- --------------------------------------------------
2022/2/23 1:59:58.022                              2022/3/4 15:59:54.789                             
已选择 1 行。

统计客户端连接的用户名,机器名,采样的次数(可指定区间,是否排除dblink)

--查看job连接

select * from DBA_HIST_ACTIVE_SESS_HISTORY where user_id=0 and session_type='FOREGROUND'  and program like 'oracle@%J%'   and machine  IN (SELECT host_name FROM v$instance) ;

--查看dblink连接

select  *   FROM DBA_HIST_ACTIVE_SESS_HISTORY where  program like 'oracle@%'   and  machine not IN (SELECT host_name FROM v$instance);   --dblink

1. 只统计非dblink,非job,非后台进程的连接

set line 300 pagesize 4000
  SELECT u.username,
         d.user_id,
         d.machine,
         COUNT (*)
    FROM DBA_HIST_ACTIVE_SESS_HISTORY d, dba_users u
   WHERE     d.user_id = u.user_id
         AND u.username NOT IN ('VIVO_DB_MONITOR')
         and d.session_type='FOREGROUND'
         AND d.user_id > 0   
         and  machine NOT IN (SELECT host_name FROM v$instance)  
         and  d.program not like 'oracle@%J%' ----排除job连接
         AND  d.program  not LIKE 'oracle@%'   ----排除dblink连接
         --AND a.sample_time >TO_DATE ('2022/01/01 09:29:01', 'yyyy/mm/dd hh24:mi:ss') AND a.sample_time < TO_DATE ('2021/12/14 09:30:01', 'yyyy/mm/dd hh24:mi:ss') ----指定区间
GROUP BY u.username, d.user_id, d.machine
ORDER BY 4 DESC ;


USERNAME                          USER_ID MACHINE                                                            COUNT(*)
------------------------------ ---------- ---------------------------------------------------------------- ----------
abc                                    97 abc                                                                 21444

2. 只统计dblink连接

set line 300 pagesize 4000
  SELECT u.username,
         d.user_id,
         d.machine,
         COUNT (*)
    FROM DBA_HIST_ACTIVE_SESS_HISTORY d, dba_users u
   WHERE     d.user_id = u.user_id
         AND u.username NOT IN ('VIVO_DB_MONITOR')
         and d.session_type='FOREGROUND'
         AND d.user_id > 0   
         and  machine NOT IN (SELECT host_name FROM v$instance)  
         and  d.program not like 'oracle@%J%' ----排除job
         AND  d.program  LIKE 'oracle@%'   ----只统计dblink连接
         --AND a.sample_time >TO_DATE ('2022/01/01 09:29:01', 'yyyy/mm/dd hh24:mi:ss') AND a.sample_time < TO_DATE ('2021/12/14 09:30:01', 'yyyy/mm/dd hh24:mi:ss') ----指定区间
GROUP BY u.username, d.user_id, d.machine
ORDER BY 4 DESC ;



USERNAME                          USER_ID MACHINE                                                            COUNT(*)
------------------------------ ---------- ---------------------------------------------------------------- ----------
abc                                    97  abc                                                                 21444
目录
相关文章
|
2月前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
126 11
|
3月前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
3月前
|
存储 Oracle 关系型数据库
oracle数据恢复—Oracle数据库文件大小变为0kb的数据恢复案例
存储掉盘超过上限,lun无法识别。管理员重组存储的位图信息并导出lun,发现linux操作系统上部署的oracle数据库中有上百个数据文件的大小变为0kb。数据库的大小缩水了80%以上。 取出&并分析oracle数据库的控制文件。重组存储位图信息,重新导出控制文件中记录的数据文件,发现这些文件的大小依然为0kb。
|
3月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
67 7
|
2月前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
3月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
1166 2
|
15天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
1天前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
61 42
|
19天前
|
缓存 关系型数据库 MySQL
【深入了解MySQL】优化查询性能与数据库设计的深度总结
本文详细介绍了MySQL查询优化和数据库设计技巧,涵盖基础优化、高级技巧及性能监控。
152 0
|
2月前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
66 3

推荐镜像

更多