今天做sql_trace跟踪的时候遇到的问题。
----查询V$SESSION视图,获取进程信息:
SQL> select s.SID,s.SERIAL#,s.USERNAME from v$session s where s.USERNAME is not null;
SID SERIAL#
---------- ----------
USERNAME
------------------------------------------------------------
118 237
JOYCE1
128 69
JOYCE1
SQL> exec dbms_system.set_sql_trace_in_session(118,237,true)
BEGIN dbms_system.set_sql_trace_in_session(118,237,true); END;
*
第 1 行出现错误:
ORA-06550: 第 1 行, 第 7 列:
PLS-00201: 必须声明标识符 'DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION'
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
解决:
SQL> conn / as sysdba
已连接。
------对相应的应用会话启用SQL_TRACE跟踪:
SQL> exec dbms_system.set_sql_trace_in_session(118,237,true)
PL/SQL 过程已成功完成。
SQL> exec dbms_system.set_sql_trace_in_session(128,69,true)
PL/SQL 过程已成功完成。
网上的说法
sys 用户登录
SQL> exec dbms_system.set_sql_trace_in_session(159,3,true);
BEGIN dbms_system.set_sql_trace_in_session(159,3,true); END;
*
第 1 行出现错误:
ORA-06550: 第 1 行, 第 7 列:
PLS-00201: 必须声明标识符 'DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION'
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored
desc dbms_system 说找不到
执行创建脚本却报ora-00600的错误,
Oracle Database 10g Release 10.2.0.1.0 - Production
SQL> @E:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\prvtutil.plb
程序包体已创建。
程序包体已创建。
程序包体已创建。
视图已创建。
类型已创建。
类型已创建。
程序包体已创建。
create or replace package dbms_system wrapped
*
第 1 行出现错误:
ORA-00600: 内部错误代码, 参数: [15261], [], [], [], [], [], [], []
解决:metalink 上查到了了相应的bug
Range of versions believed to be affected : Versions >= 7
This issue is fixed in: Bug not yet fixed / confirmed as fixed
It is possible to create objects OWNED by PUBLIC - such an object
can cause ORA-600 [15261] / ORA-4050 / ORA-4043 errors when attempting
to DROP the object, or attempting to create a public SYNONYM with the
same name as one of the PUBLIC objects.
但是却没有补丁,也没有说明
没办法,抱着试试看的想法,shutdown immediate;
再起来 执行
SQL> @E:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\prvtutil.plb
然后desc dbms_system,一切ok了,看来重起不光windows需要啊。
SQL_TRACE跟踪
最新推荐文章于 2022-02-21 10:58:41 发布