Welcome 微信登录

首页 / 数据库 / MySQL / 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
  • 下一页
Oracle临时表空间重建Oracle死锁及死锁处理相关资讯      Oracle表空间  sysaux表空间不足 
  • 关于Oracle可传输表空间的总结  (今 20:12)
  • Aix下删除Oracle表空间以及对应的  (04月17日)
  • Oracle表空间过大时候的处理  (10/27/2015 20:42:50)
  • Oracle删除表空间遇到的问题及解决  (04月17日)
  • Oracle使用SQL传输表空间  (03月01日)
  • Oracle 设置表空间自增长  (10/09/2015 11:42:07)
本文评论 查看全部评论 (0)
表情: 姓名: 字数

版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图