【Oracle】SP2-0613,SP2-0611问题解决

查看sql的执行计划遇到如下报错:

sys@im1>explain plan for SELECT JOB, LOG_USER, SCHEMA_USER FROM DBA_JOBS;

explain plan for SELECT JOB, LOG_USER, SCHEMA_USER FROM DBA_JOBS

                                                      *

ERROR at line 1:

ORA-02402: PLAN_TABLE not found

sys@im1>set autot trace on;

SP2-0613: Unable to verify PLAN_TABLE format or existence

SP2-0611: Error enabling EXPLAIN report

sys@im1>exit

该错误的的主要原因是由于当前用户下没有PLAN_TABLE这张表及相应的PLUSTRACE角色权限。

解决方法就是直接创建此表和对应的PLUSTRACE角色即可

1 以sys 用户登录数据库,运行utlxplan.sql脚本创建 PLAN_TABLE并赋予相关权限,以便让其他用户使用

oracle@t01a03053-vm1.corp-hz01.aliyun.com:/home/oracle/admin/bin>sqlplus "/as sysdba"

Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production

sys@im1>@?/rdbms/admin/utlxplan.sql 

Table created.

sys@im1>create public synonym plan_table for plan_table; 

grant all on plan_table to public;

Synonym created.

sys@im1>

Grant succeeded.

2 通过执行 plustrce.sql脚本创建 plustrace 角色,这将V$视图上的选择权限授予该角色,也将plustrace角色授予DBA角色:

sys@im1>@/opt/oracle/products/9.2.0/sqlplus/admin/plustrce.sql

sys@im1>

sys@im1>drop role plustrace;

drop role plustrace

          *

ERROR at line 1:

ORA-01919: role 'PLUSTRACE' does not exist

sys@im1>create role plustrace;

Role created.

sys@im1>

sys@im1>grant select on v_$sesstat to plustrace;

Grant succeeded.

sys@im1>grant select on v_$statname to plustrace;

Grant succeeded.

sys@im1>grant select on v_$mystat to plustrace;

Grant succeeded.

sys@im1>grant plustrace to dba with admin option;

Grant succeeded.

sys@im1>

sys@im1>set echo off

sys@im1>

sys@im1>

再次执行:

sys@im1>explain plan for SELECT JOB, LOG_USER, SCHEMA_USER FROM DBA_JOBS;

Explained.

sys@im1>select * from table(dbms_xplan.display());

PLAN_TABLE_OUTPUT

--------------------------------------------------------------------

| Id  | Operation            |  Name       | Rows  | Bytes | Cost  |

--------------------------------------------------------------------

|   0 | SELECT STATEMENT     |             |       |       |       |

|   1 |  TABLE ACCESS FULL   | JOB$        |       |       |       |

--------------------------------------------------------------------

Note: rule based optimization

9 rows selected.

ok!

时间: 2024-10-29 13:22:34

【Oracle】SP2-0613,SP2-0611问题解决的相关文章

oracle的ORA-01562和ORA-01628问题解决

执行一对帐程序,老执行到一半的时候就出错,作者还没有把oracle的error打印出来,只是打印了他自己能看得懂的错误提示,经过修改代码,把oracle错误,put_line出来后,发现是 ORA-01562: failed to extend rollback segment number 12ORA-01628: max # extents (505) reached for rollback segment RBS12 看来是回滚段的maxtxtents太小了,系统有20多个回滚段,为了减

oracle rac节点频繁重启问题解决办法

这是一个网友的信息,其RAC频繁重启,从9月份以来几乎每间隔2天就要重启,我们先来看看日志. 节点1的alert log: Tue Oct 28 10:51:40 2014 Thread 1 advanced to log sequence 22792 (LGWR switch)  Current log# 107 seq# 22792 mem# 0: +ORADATA/portaldb/redo107.log Tue Oct 28 10:57:16 2014 Thread 1 advanced

oracle启动报错ora-7445问题解决办法

前不久有个朋友从遇到了个问题,在数据库启动过程种出现ora-7445, 然后数据库CRASH, 环境11.1.0.7 windows 版本, 临时禁用了smon tx recovery打开数据库, 没有再继续跟踪,这里记录一下. # DB ALERT alter database open Beginning crash recovery of 1 threads  parallel recovery started with 15 processes Started redo scan Com

linux操作系统中oracle数据库的密码过期问题解决

1:首先确定linux登录的用户是root 切换到数据库用户 su oracle(切记,如果这里su oracle不可以,那么就使用此命令su - oracle,这个命令切换到数据库用户肯定可以成功.) 2:进入sqlplus,注意 /和 as 之间有空格,否则报错进不去 sqlplus / as sysdba 修改过期账户的密码, sys代表的是自己的用户名,双引号内的password的是自己将要修改的密码: alter user sys identified by "password&quo

将MS SQL Server 2005 SP2整合到安装文件——脚本修正

刚入手新本本,一阵忙活,装好系统.小黑的驱动真不少,七七八八也有二三十个文件要下载.安装.轮到安装开发软件更是崩溃,一堆堆的sp等着我们打!微软留给我们的噩梦啊,所以,开始下载整合了SP补丁的软件,唯独没有找到SQL Server2005的整合版下载,只能自己动手,做个整合版了.网上一阵Google,见到园子里面这篇文章:将 MS SQL Server 2005 SP2 整合到安装文件,写的很不错,方法都有了,一看还有个脚本集成,很不错,可惜一执行下来,一堆错误,自己手动稍微调整了下,已经测试通

安装XP SP2的三大要领和八项注意_WindowsXP

操作系统的重要性已不用多讲,面对每一次重大的升级,用户们总会有一些担心,一旦有什么"三长两短"可不是好玩的.WinXP SP2(以下简称SP2)这个微软不遗余力推广的升级程序,其重要性的介绍已经随处可见,然而同所有系统重大升级一样,为了避免不必要的麻烦,还是有一些要注意的地方. 三大要领 要领一:正确的操作系统序号 序列号对所有使用Windows的用户来说,再熟悉不过了,它对系统的重要性就像我们生活中使用的身份证,一个正确的序列号才能确保SP2得以成功安装.另外,就是系统的版本号,要知

Oracle利用游标返回结果集的的例子(C#)

oracle|游标 本例在VS2005+Oracle 92010 + WindowsXp Sp2测试通过1.创建一个游标变量,为返回值使用create or replace package types as  type cursorType is ref cursor;end;2.创建函数(或者存储过程)create or replace function testpro return types.cursorType islc types.cursorType;begin  open lc f

oracle数据导入mysql数据库日期格式问题

问题描述 oracle数据导入mysql数据库日期格式问题 从oralce数据库导出日期格式数据为 to_date('13-04-2015 16:40:12', 'dd-mm-yyyy hh24:mi:ss'), 如何把它修改为yyyy-mm-dd的形式存储到mysql数据库中,由于数据比较多,一条条修改太过麻烦,有没有什么好的方法 解决方案 参考import CSV to MySQL and convert date LOAD DATA LOCAL INFILE '/Users/Path/To

电脑防火墙应该怎么设置 在哪里设置

在winxp中把防火墙进行改进后很多用户都开始对设置防火墙的方法有了点不明白,不知道该在哪里设置防火墙了,在这里来对这个问题进行一个介绍. WinXP SP2(以下简称SP2)中的Windows防火墙取代了原来的Internet Connection Firewall(ICF,互联网连接防火墙).这个改进的防火墙默认设置为开启状态,并且支持IPv4和IPv6两种网络协议,可以为我们的电脑提供更 多的安全保护.本文就为大家介绍一下防火墙在哪里设置,如何设置? 依次单击"开始→控制面板",