SYS.AUD$无法扩容导致无法登录的问题
昨天同事说有个测试库无法登录了,用PLSQL Developer登陆后提示:
ERROR:
ORA-00604: error occurred at recursive SQL level 1
ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
ORA-02002: error while writing to audit trail
ORA-00604: error occurred at recursive SQL level 1
ORA-01653: unable to extend table SYS.AUD$ by 8192 in tablespace SYSTEM
貌似以前听@dbsnake说过这问题。
首先SYS.AUD$是数据字典表,存储于SYSTEM表空间,存储的是审计信息,11g默认是开启审计
SQL> show parameter audit_trail
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
audit_trail string DB
上面的提示明显是指SYSTEM表空间的SYS.AUD$表无法继续扩容了,可能是磁盘空间不足,或SYSTEM表空间分配的数据文件空间不足。针对上面这个问题,有两种方法:
1、扩容SYSTEM表空间。
2、降低SYS.AUD$的容量。
之所以有第二种方法,从MOS:73408.1这篇文章可以得到结论:
SYS.AUD$ is the only SYS object that should ever be directly modified
SYS.AUD$是唯一一个可以直接修改的SYS对象。
那如何降低SYS.AUD$的容量呢?
1、最简单的方法就是truncate table SYS.AUD$,最直接,前提是不需要保留审计信息。
2、MOS中也介绍一种方法:DELETE FROM sys.aud$ WHERE obj$name='<object_name>';,删除SYS.AUD$中指定对象的审计信息。这样带来的问题很明显,就是不会降低高水位线。
3、也可以备份审计表,然后再降低容量。
CREATE TABLE backup_aud$ AS SELECT * from sys.aud$;
truncate table aud$;
exp file=aud_backup.dmp tables=backup_aud$
drop table backup_aud$;
如果仅需要降低SYS.AUD$占用的空间,此时可以再次执行insert into aud$ select * from backup_aud$;将数据导入进来。
4、要删除SYS.AUD$表需要相应的权限:要么是SYS用户,要么具有DELETE
ANY
TABLE系统权限,或者SYS用户将SYS.AUD$表的DELETE权限赋予这个用户。具有delete_catalog_role角色亦可以,但11.2.0.2之前的版本可能有bug导致这个角色没有SYS.AUD$的删除权限,需要人工添加,具体也可参见9697811这个bug描述。
5、MOS有介绍:The DELETE ANY TABLE privilege only applies to SYS objects if O7_DICTIONARY_ACCESSIBILITY=TRUE,表示如果O7_DICTIONARY_ACCESSIBILITY参数是TRUE,则只有SYS用户可以具有DELETE ANY TABLE权限。查了一些资料,也说O7_DICTIONARY_ACCESSIBILITY这个参数的作用就是保护数据字典基表,FALSE要求SYS不能以普通用户角色登录,必须用sysdba角色登录,如果TRUE则普通用户也可以访问数据字典基表,就会引起安全问题了。
SYS.AUD$无法扩容导致无法登录的问题的更多相关文章
- discuz 更换域名 导致qq登录不能用的问题
今天论坛换了域名,导致qq登录不能用.于是各种百度,终于找到了解决方案,特此记录一下 解决方法:1,首先清空你站点的id和key,并且设置为未注册云平台: 2,找一个新域名(未开过云平台的就可),如果 ...
- 【转载】Sqlserver强制密码过期导致数据库登录失败
Sqlserver在设置登录账户信息的时候,有个复选框信息会被默认勾上,即强制实施密码策略,默认勾选上的还有强制密码过期.如果勾上了这个强制密码过期后,则你的账户密码在一定时间登录后会提示Sqlser ...
- sys用户权限不足,本地登录失败 |ORA-01031 insufficient privileges|
机器总喜欢挑放假的时候出问题,"双节"(中秋.国庆)快到了,对于搞系统运维的工程师来说其实并不轻松,于是今天赶紧装起一台数据库备用服务器以备半夜"机"叫. 安装 ...
- sys系统用户长时间未登录导致密码过期
ORA-28001: the password has expired (DBD ERROR: OCISessionBegin) 问题描述:当登陆em时使用sys帐号登陆进去后,数据库实例提示ORA- ...
- ORA-1653: unable to extend table SYS.AUD$
今早运维组的同事反映有个系统功能很多地方都报错,怀疑是不是数据库有什么问题.于是登录数据库检查,通过crsctl status res -t检查,发现所有集群资源都是OK的,没有哪个资源挂掉了.于是到 ...
- Oracle 不小心删除undo数据文件以及磁盘空间不足导致不能登录的解决办法
在一次测试中,由于导入的数据量过大导致事务一直提交失败因为磁盘空间不够用了,一检查发现是undo表空间不够用,于是重新创建了一个表空间,准备把之前的undo表空间删除,删除时却发现一直删不掉,因为它一 ...
- Hadoop 服务SYS CPU过高导致宕机问题
最近某hadoop集群多次出现机器宕机,现象为瞬间机器的sys cpu增长至100%,机器无法登录.只能硬件重启,ganglia cpu信息如下: 首先怀疑有用户启动了比较奇葩的job,导致不合理的系 ...
- HashMap为什么线程不安全(hash碰撞与扩容导致)
一直以来都知道HashMap是线程不安全的,但是到底为什么线程不安全,在多线程操作情况下什么时候线程不安全? 让我们先来了解一下HashMap的底层存储结构,HashMap底层是一个Entry数组,一 ...
- Jenkins 配置用户权限错误导致无法登录解决方案
最初配置Jenkins的用户管理权限时,因为不熟悉很容易将用户角色配置错误,导致配置用户后无法登录系统: 登录系统时候提示"Access Denied": 解决办法: 进入Jenk ...
随机推荐
- 2016-2017-2 20155309南皓芯《java程序设计》第九周学习总结
教材内容介绍 一 JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商则对接口进行操作,开发人员无须接触底层数据库驱动程序的差异性 JDBC标准分为两个部分:J ...
- Kylin使用笔记-1: 安装
2016年1月14日 9:57:23 星期四 背景介绍 Apache Kylin是一个开源的分布式分析引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据,最 ...
- MySQL 存储过程传参数实现where id in(1,2,3,...)示例
一个MySQL 存储过程传参数的问题想实现例如筛选条件为:where id in(1,2,3,...),下面有个不错的示例,感兴趣的朋友可以参考下 正常写法: ,,,,...); 当在写存储过程 ...
- CentOS7.5安装cairo-dock,比mac托盘还美
1.下载安装nux-desktop 到http://li.nux.ro/download/nux/dextop/el7/x86_64/找到nux-dextop-release-xxxx.nux.noa ...
- MyEclipse个性化设置
1.修改项目文件默认编码 Note:myEclipse默认的编码是GBK, 也就是未设置编码格式的文件都默认使用GBK进行编码, 而更糟糕的是JSP.JavaScriptt默认编码竟然是ISO-885 ...
- HDU - 4809 树形dp
找了半天bug 发现把q打成了p... 思路:用dp[ i ][ j ][ k ] 表示在 i 这个点 这个点的状态为 j (0:不选 1:属于奇联通块 2:属于偶联通块) 且 奇联通块 - 偶联通块 ...
- 黑马程序员_java基础笔记(01)...java的环境搭建
—————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流!—————————— JavaSE(Java Standard Edtion java标准版)技术概况 ...
- python 学习之dict和set类型
什么是dict 我们已经知道,list 和 tuple 可以用来表示顺序集合,例如,班里同学的名字: ['Adam', 'Lisa', 'Bart'] 或者考试的成绩列表: [95, 85, 59] ...
- oneDay
难受过 迷茫过 失望过 耍脾气过 开心过 伤心过 疼过 走了这么久的路: 我只想说 程序的道路上 很难走: 本来准备都放弃了: 自己逼自己了很久想明白了: 不能什么时候都想着靠外力 自己的不足就是自己 ...
- 安装部署VMware vSphere 5.5文档 (6-5) 安装配置vCenter
部署VMware vSphere 5.5 实施文档 ########################################################################## ...