oracle sysaux表空间不足,sysaux 表空间不足问题处理

sysaux 表空间不足问题处理

一现场,备份库alter 日志出现错误

ORA-1688: unable to extend table SYS.WRH$_SQLSTAT partition WRH$_SQLSTA_3344221469_3956 by 128 in                tablespace SYSAUX

ORA-1688: unable to extend table SYS.WRH$_SQLSTAT partition WRH$_SQLSTA_3344221469_3956 by 128 in                tablespace SYSAUX

根据错误提示是sysaux 表空间满了

Oracle从10G 开始引入的,以前一些使用独立表空间或系统表空间的数据库组件现在在SYSAUX表空间中创建.

通过分离这些组件和功能,SYSTEM表空间的负荷得以减轻.反复创建一些相关对象及组件引起SYSTEM表空间的碎片问题得以避免。

如果SYSAUX表空间不可用,数据库核心功能将保持有效;使用SYSAUX表空间的特点将会失败或功能受限.

可以从V$SYSAUX_OCCUPANTS view 查看情况

V$SYSAUX_OCCUPANTS

V$SYSAUX_OCCUPANTS displays SYSAUX tablespace occupant information.

Column  Datatype  Description

OCCUPANT_NAME  VARCHAR2(64)  Occupant name

OCCUPANT_DESC  VARCHAR2(64)  Occupant description

SCHEMA_NAME  VARCHAR2(64)  Schema name for the occupant

MOVE_PROCEDURE  VARCHAR2(64)  Name of the move procedure; null if not applicable

MOVE_PROCEDURE_DESC  VARCHAR2(64)  Description of the move procedure

SPACE_USAGE_KBYTES  NUMBER  Current space usage of the occupant (in KB)

查看那些 occupant空间占用情况

select OCCUPANT_NAME,SPACE_USAGE_KBYTES/1024/1024 from V$SYSAUX_OCCUPANTS;

SELECT s.object_name from dba_objects s where s.object_name like '%OPTSTAT%' and s.object_type='TABLE';

在Oracle10中表空间SYSAUX引入,oracle把统计信息存储在这里,这也是为了更好的优化system表空间,

我们可以用视图V$SYSAUX_OCCUPANTS 查看,oracle有哪些数据存贮在SYSAUX中。

oracle的SM/AWR, SM/ADVISOR, SM/OPTSTAT and SM/OTHER的统计信息都存储在SYSAUX中

查询当前SM/OPTSTAT的统计信息的保存时间

SQL> select dbms_stats.get_stats_history_retention from dual;

GET_STATS_HISTORY_RETENTION

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

31

修改SM/OPTSTAT的统计信息的保存时间为10天

SQL> exec dbms_stats.alter_stats_history_retention(10);

PL/SQL procedure successfully completed

SQL> select dbms_stats.get_stats_history_retention from dual;

GET_STATS_HISTORY_RETENTION

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

10

删除16天前的统计数据

SQL> exec dbms_stats.purge_stats(sysdate-20);

PL/SQL procedure successfully completed

SQL>

查看当前有效的统计数据是到什么时间的

SQL> select DBMS_STATS.GET_STATS_HISTORY_AVAILABILITY from dual;

GET_STATS_HISTORY_AVAILABILITY

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

12-2月 -12 07.15.49.000000000 下午 +08:00

再删除7天前的统计数据

SQL> exec dbms_stats.purge_stats(sysdate-7);

PL/SQL procedure successfully completed

这个时候发现有效的统计信息时间已经变了

SQL> select DBMS_STATS.GET_STATS_HISTORY_AVAILABILITY from dual;

GET_STATS_HISTORY_AVAILABILITY

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

14-2月 -12 07.15.57.000000000 下午 +08:00

1

2

下一页

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值