首页 热点资讯 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

重建AWR后报ORA-13518

2020-11-09 来源:华佗小知识

今天导入AWR没成功还把自己数据库的awr给破坏了,只能重建,重建后发现awr报错

今天导入AWR没成功还把自己数据库的awr给破坏了,只能重建,重建后发现awr报错

SYS@hcndb>begin
dbms_workload_repository.modify_snapshot_settings (
3 interval => 30,
4 retention => 14*24*60
5 );
6 end;
7 /
begin
*
ERROR at line 1:
ORA-13518: Invalid database id (231820269)
ORA-06512: at "SYS.DBMS_WORKLOAD_REPOSITORY", line 85
ORA-06512: at "SYS.DBMS_WORKLOAD_REPOSITORY", line 133
ORA-06512: at line 2

查看MOS文档:

ORA-13518 : 'Invalid Database Id' On Call to DBMS_WORKLOAD_REPOSITORY Package [ID 984447.1]

Changes
Recently AWR was recreated using catnoawr.sql and catawrtb.sql.
Cause
When a function / procedure is called from DBMS_WORKLOAD_REPOSITORY package, it refers table WRM$_DATABASE_INSTANCE to get dbid information. As the AWR repositories has been recreated , the table doesn't not have any data present in it.

SQL> select * from WRM$_DATABASE_INSTANCE ;
no rows selected

Solution

The WRM$_DATABASE_INSTANCE gets populated with instance information when the instance is rebooted. So, If you have recreated AWR using catnoawr.sql , catawrtb.sql , then you need to bounce the Instance . On restart , the table will be populated with the requisite information. Hence , better option for recreating AWR is to use startup restrict method. After the recreation activity is completed , shutdown the database and open it normally.

重启instance后恢复正常,,记录下

linux

显示全文