4_维护表空间注意事项

维护表空间注意事项:
1.对于系统表空间,在创建数据库时只能使用本地化管理方式。
2.由于本地管理表空间不需要操作fet$uet$基表,从而减少了对数据字典的依赖,所以本地管理表空间支持在一个表空间里面进行更多的并发操作。
3.从严格意义上来讲,使用本地管理的表空间不会存在碎片
4.临时表空间中,临时表本身的操作不会记录到redo 日志,因此在数据处理过程中将中间表创建成临时表可以加快数据处理速度。但临时表中数据的改变会有undo 记录(其目的是为了能够回滚临时表所做的改变)。由于undo 变化会产生redo 日志,所以会生成临时表的redo日志。但普通表产生的redo大小会比临时表产生redo日志大小大很多。
5.为防止system 表空间争用,不要将回滚段建在system表空间中
6.从空间管理和性能上考虑,建议不要将表格和索引放在同一个表空间中
7.注意表空间级的nologging属性,在开启了nologging 属性的表空间中进行DML操作时只会生成少量的redo日志。此时即使有物理全备份,当灾难发生时也会丢失数据。
8.当系统I/O压力比较大时,如果有其他存储,可以在线将undo表空间切换至其他存储中,从而减轻原存储的压力(新切换的undo表空间名字必须和参数文件中的undo_tablespace 参数保持一致,否则会导致数据库重启失败)。
9.添加表空间时会消耗大量的I/O,在I/O比较紧张的系统中则会严重影响业务,所以应该尽量避免在业务高峰期进行添加操作。
10.控制文件重建后,不要忘记重建temp表空间。
11.对临时表空间和undo表空间设置一个最大阈值,否则容易导致自动扩展过大
12.删除表空间之前先offline 表空间可能更为保险。同时,删除表空间之前最好先检查该表空间下的对象。
13.务必定期物理备份system表空间,当数据库因基表损坏无法启动时,备份的system 表空间将会发挥重要作用
14.oracle 11g r2 版本中,参数audit_trail 默认设置为DB级,所以很多数据库的操作都被记录在了审计表 sys.aud$中,这导致sys.aud$所在的表空间快速增长。可以通过truncate 命令清空该表。为了防止system表空间扩展过大,建议把该表转移到其他表空间。

欢迎关注我的公众号
这是一个专注写Oracle,mysql,python,shell,cloud 的小公号。欢迎交流沟通
4_维护表空间注意事项_第1张图片

你可能感兴趣的:(ORACLE_优化篇)