步骤: 或者 如果你不能预处理SYS.AUD$, 那么可以采取下面的步骤 绕过的方法: 1) 导出SYS.AUD$表 2) Truncate SYS.AUD$ 表 3) 升级数据库 4) 在数据库升级完成后,再导入SYS.AUD$表 关于更具体的步骤,请参考文档 Note 73408.1 : How to Truncate, Delete, or Purge Rows from the Audit Trail Table AUD$
1: 查看审计表中的行数
标准审计
SELECT count(*) FROM sys.aud$ WHERE dbid is null;
标准审计,只有当Oracle Label Security (OLS) 和/或 Database Vault (DV)被安装时
SELECT count(*) FROM system.aud$ WHERE dbid is null;
Fine Grained Auditing
SELECT count(*) FROM sys.fga_log$ WHERE dbid is null;
2: 如果审计记录条数庞大(例如:超过250,000),考虑使用粘贴的脚本预处理审计记录。
通过预处理,那些在升级过程中需要做的改变可以在升级前完成,同时保证实例为正常运行状态。根据需要处理的记录数量和新生成的审计记录数量,脚本需要一段比较长的时间来完成,而且可能需要在升级前被执行多次。
通常我们推荐在升级前的一周内执行此脚本,之后观察审计记录条数的变化。
如果执行这个脚本带来了性能的问题,它可以在执行的过程中使用ctrl-c来停止,并在另一个空闲时间重新开始。
我们推荐在做预处理审计记录前,检查数据库sys / system是否有无效对象,并使用utlrp.sql脚本来解决。如果utlrp脚本无法使对象有效,您可以创建SR寻求Oracle Support的帮助。
下面文档中包含有用的脚本,可以在升级前检查数据库:
NOTE:556610.1 - Script to Collect DB Upgrade/Migrate Diagnostic Information (dbupgdiag.sql)
NOTE:884522.1 - How to Download and Run Oracle's Database Pre-Upgrade Utility
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




