Oracle 数据库如何跟踪SQL语句

问题描述

我想把前台对Oracle数据库的每一条执行的sql语句跟踪出来,如何实现?谢谢大家指导! 问题补充:unika_ly12 写道

解决方案

首先,你要以dba身份登陆数据库。第二,为某个用户开启sql跟踪。那个用户就是你要跟踪的、正在执行sql语句的那个用户。命令如下:execute dbms_system.set_sql_trace_in_session(sid,serial#,true)其中参数的意义是,sid-会话id,serial#-序列号,这两个参数可以从v$session中得到。第三,上面的命令执行成功之后数据库就自动对该用户所发出的所有sql语句进行跟踪,并把结果写在用户跟踪文件里。用户跟踪文件存放在数据库服务器上,路径请参考init.ora文件中的udump参数值。文件名为ora_sid_xxxx.trc(for unix)或者oraxxxxx.trc(for NT),其中xxxx文件系统进程编号,这个编号可以从v$process和v$session两个表通过关联的方式查询得到。当然你也可以简单的查看一下哪个trc文件的日期最新,哪个文件就是你要的结果了。第四,如果你觉得可以了,那么就关闭对该用户的跟踪吧。execute dbms_system.set_sql_trace_in_session(sid,serial#,false)Good Luck
解决方案二:
还有v$sql视图
解决方案三:
那你直接查询 v$sqltext 和 v$session 好了
解决方案四:
用hibernate没有,用的设置属性show_sql为true

时间: 2024-12-31 19:34:40

Oracle 数据库如何跟踪SQL语句的相关文章

oracle数据库优化辅助SQL语句_oracle

具体详情请看下文代码分析. --查询正在执行的SQL语句 SELECT OSUSER 电脑登录身份, PROGRAM 发起请求的程序, USERNAME 登录系统的用户名, SCHEMANAME, B.Cpu_Time 花费cpu的时间, STATUS, B.SQL_TEXT 执行的sql, B. FROM V$SESSION A LEFT JOIN V$SQL B ON A.SQL_ADDRESS = B.ADDRESS AND A.SQL_HASH_VALUE = B.HASH_VALUE

ASP.NET访问Oracle数据库:执行SQL语句过程

Web服务器的配置: 1.安装Oracle 客户端 参考<Oracle 9i & PLSQL 全简体中文版数据库安装过程(图解)>,在选择安装的时候仅安装客户端即可 2.为安装客户端的服务器配置Net 服务 参考 <Oracle 9i/10g 数据库 创建数据库 Net 配置 创建表 SQL查询 创建存储过程> 3.新建一个用户,并赋予OBA角色 1.通过PL SQL 建立用户 使用SysDBA系统用户登陆 PLSQL ,建立一个用户 赋给此用户OBA角色.

三层嵌套oracle数据库记录分页sql语句

select * from (select row_.*, rownum rownum_ from (  select * from flow_activity  t order by id desc  )row_ where rownum<=100 ) where rownum_>90   其中这个红色部分 为可变化的部分.

oracle数据库用pl/sql中的cmd窗口写语句的时候

问题描述 oracle数据库用pl/sql中的cmd窗口写语句的时候 如图所示,如果想回去把第二行的代码删除怎么办?我用删除键根本没有用 解决方案 3 : SQL>del 2 SQL>run 可以去找找SQL/PLUS缓冲区当前命令操作相关资料 解决方案二: SQL>del 2 SQL>run 可以去找找SQL/PLUS缓冲区当前命令操作相关资料

转换数据库-数据库:Oracle数据库转换成SQL server数据库

问题描述 数据库:Oracle数据库转换成SQL server数据库 把oracle数据库转换成SQL server数据库(2008 r2)版本的,数据迁移,大概百万条数据,有什么好的办法或者是执行语句嘛: 解决方案 我只知道可以把脚本倒出来 然后在sql中执行 解决方案二: http://wenku.baidu.com/link?url=TA7z0XmVyfKHyTQqiPwE6gAdkKbFG7ngBBL75mvjbRbAGFVElPyxOLFSvNT4YskRl8KLdeVdOlHc8a6

在指定的数据库上运行SQL语句的类

数据|数据库|语句 <% '在指定的数据库上运行SQL语句的类'使用方法:'dim runs'set runs=new runsql'runs.setdbn=数据库名'if runs.ifok then' response.write runs.errs' response.end'end if'runs.setsql=sql'runs.run'if runs.ifok then' response.write runs.errs' response.end'else' response.wri

通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷

原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下:     步骤1:通过MyEclipse中的window->show View->other 调出.DB浏览器.   步骤2:     步骤3:输入db,然后选择DB Brower.   步骤4:单击空白处右键.     步骤5:选择相应的数据库类型.     步骤6: Driver name :填上自己需要的名字 Co

oracle goldengate-mybatis 打印的Sql语句可以再数据库查询到数据,但是没有返回结果?【急】

问题描述 mybatis 打印的Sql语句可以再数据库查询到数据,但是没有返回结果?[急] <select id="selectPageTblSfFiles" parameterType="TblSfFile" resultMap="TblSfFileResult"> SELECT <include refid="TblSfFile_columns" /> FROM TBL_SF_FILE WHERE

Oracle数据库之PL/SQL游标学习笔记

1. 游标概念 字面意思是游动的光标,是指向上下文区域的句柄或指针. 在PL/SQL块中执行CRUD操作时,ORACLE会在内存中为其分配上下文区.用数据库语言来描述游标就是:映射在上下文区结果集中一行数据上的位置实体. 用户可以使用游标访问结果集中的任意一行数据,将游标指向某行后,即可对该行数据进行操作.游标为应用提供了一种对具有多行数据查询结果集中的每一行数据分别进行单独处理的方法,是设计嵌入式SQL语句的应用程序的常用编程方式. 在每个用户会话中,可以同时打开多个游标,其最大数量由数据库初