首页 > 数据库 >oracle查询执行过sql语句

oracle查询执行过sql语句

时间:2023-10-22 17:46:46浏览次数:54  
标签:语句 02 sql sqlarea SQL oracle where first

一、oracle中查找某段时间执行的操作记录

select sql_text,module, first_load_time

from v$sqlarea

where first_load_time > '2019-02-02/02:02:02' and first_load_time < '2019-02-02/02:02:02'

order by first_load_time

二、查看某一时间的执行过的所有sql

select t.SQL_TEXT, t.FIRST_LOAD_TIME

from v$sqlarea t

where t.FIRST_LOAD_TIME like '2019-01-28%'

order by t.FIRST_LOAD_TIME desc

三、查询当前执行sql的机器信息

SELECT SID, OSUSER, USERNAME, MACHINE, PROCESS

FROM V$SESSION

WHERE audsid = userenv( 'SESSIONID' );

四、查询执行某一时间,某台机器,执行的sql

方法1、

select b.sql_text,a.osuser,a.sid,a.machine

from v$session a ,v$sqlarea b

where a.sql_hash_value = b.hash_value ;

方法2、

select b.sql_text,a.osuser,a.sid,a.machine ,b.first_load_time

from v$session a ,v$sqlarea b

where a.sql_hash_value = b.hash_value and b.first_load_time like '2019-01-29%'

order by b.first_load_time desc ;

方法3、

SELECT b.sid oracleID, b.username Oracle用户, b.serial#, spid 操作系统ID, paddr, sql_text 正在执行的SQL, b.machine 计算机名

FROM v$process a, v$session b, v$sqlarea c

WHERE a.addr = b.paddr AND b.sql_hash_value = c.hash_value;

五、oracle中查找某用户执行某张表的操作操作记录

1,首先查找表的操作记录

select * from v$sqlarea a where a.SQL_TEXT like '%TB_ACCT_SYSDATE%';

2,从上面的记录中找到update语句对应的sql_id

select * from v$sqltext a,v$sqlarea b where a.SQL_ID=b.SQL_ID and b.SQL_ID in('cq53826tk4u3c','afftnrfhu5utk') order by b.LAST_ACTIVE_TIME desc;

3,从上面的记录中找到最新的sql操作记录,然后找到用户名和主机

select * from sys.v$session l,sys.v$sql s where s.SQL_ID='cq53826tk4u3c' and l.USERNAME is not null;

标签:语句,02,sql,sqlarea,SQL,oracle,where,first
From: https://www.cnblogs.com/yclizq/p/17780737.html

相关文章

  • MySQL分享
    本次分享主要涉及InnoDB如何在磁盘上保存数据InnoDB表空间结构:介绍了InnoDB表文件中的一些组件,比如段、区、页、行记录。除了告诉你怎样存之外,更重要的是希望解释为什么要这样索引页结构:数据以及索引都存在于索引页中,介绍索引页如何组织,当数据删除、更新时会发生啥索引分裂、......
  • 查询查询Oracle数据表中字段的所属表(oracle字段所在表)
    在使用Oracle数据库时,我们经常需要在Oracle中查询某个字段的所属表名。本文将会介绍如何通过两种不同的方法来查询Oracle数据表中字段的所属表。使用Oracle自带的dba_tab_cols视图查询Oracle自带有dba_tab_cols视图,我们可以通过该视图查询Oracle数据库某个字段的所属表。例如,......
  • PostgreSQL 不支持 union 查询 json
    当在使用PostgreSQL数据库查询数据的时候,因为查询出来的列中包含格式为json的字段进行union报错了,该操作不支持json类型,使用unionall也是同样错误最后查阅资料得出,需要转换为jsonb才行,需要使用函数to_jsonb(你的json字段),之后,union和unionall就都可以了json与jsonbPostgre......
  • 巧用枚举解决业务场景的 Switch 语句—Java 实践
    巧用枚举解决业务场景的Switch语句——Java实践Switch语句是一种常见的流程控制语句,用于根据不同的条件执行不同的代码块。然而,当业务场景变得复杂时,使用大量的Switch语句可能导致代码冗长、难以维护和扩展。本文将介绍如何巧妙地使用枚举类型来优化和简化Switch语句的使......
  • MySQL存储引擎
    showengines;查看支持的存储引擎。mysql表的存储引擎:InnoDBmyISAMMemoryMRG_MYISAMarchivefederated,CSV,BLACKHOLE1、InnoDB支持事务和外键:InnoDB具有事务,支持4个事务隔离级别,回滚,崩溃修复能力和多版本并发的事务安全,包括ACID。如果应用中需要执行大量的INSER......
  • mysql8解决null, message from server: “Host is not allowed to connect to this My
    1.登录mysql(注意:账号密码不包括,-u和-p)mysql-uroot-proot2.切换到mysql库:usemysql;3.查询root用户的host值:selectuser,hostfromuser;如果host的值是localhost,说明只支持本地连接,不能远程登录。4.更改host的值为%:updateusersethost='%'whereuser='root';5.刷......
  • Python教程(15)——Python流程控制语句详解
    Python流程控制是Python编程中非常重要的一部分,它用于控制程序的执行流程。Python提供了多种流程控制语句,包括if语句、while循环、for循环、break和continue语句等。这种流程控制在各个语言中都是大同小异的,如果你已经学过其他的语言,那么这章节就可以直接跳过。if语句if语句用于......
  • MySQL中有哪几种锁,列举一下;意向锁是什么?
    一、MySQL中有哪几种锁如果按锁粒度划分,有以下3种:表锁:开销小,加锁快;锁定力度大,发生锁冲突概率高,并发度最低;不会出现死锁。行锁:开销大,加锁慢;会出现死锁;锁定粒度小,发生锁冲突的概率低,并发度高。页锁:开销和加锁速度介于表锁和行锁之间;会出现死锁;锁定粒度介于表锁和行锁之间,并发度......
  • 03_流程控制语句
    ......
  • Python教程(15)——Python流程控制语句详解
    Python流程控制是Python编程中非常重要的一部分,它用于控制程序的执行流程。Python提供了多种流程控制语句,包括if语句、while循环、for循环、break和continue语句等。这种流程控制在各个语言中都是大同小异的,如果你已经学过其他的语言,那么这章节就可以直接跳过。if语句if语句用......