培训笔记:存储等

概述
这上周末换了老师,赵元杰老师有20多年的Oracle经验,这两天主要讲解了存储等内容。鉴于我们已经有了一些SQL基础,赵老师只重点提了他觉得重要的内容,然后便直接进入了相关主题。
我没有Oracle的管理经验,课堂上提不出什么问题,只是间或记一些老师提示或自己觉得重要的内容,因此下面的笔记没有详细的分类,看起来有点儿乱。

笔记
1、约束、存储
2、建表时,要将表和索引分离
3、块的使用的存储
4、好的性能是设计出来的,不是优化出来的,应该在设计时考虑性能的问题
5、块的初始值、主键的初始值必须要设置

1、几个语句形成完整的事务,应增加begin/end,并使用exception处理异常
2、旧版本truncate不属于DML,只能动态调用
3、wrap:重要的存储过程、包等,可以使用该命令处理,相当于加密
4、可使用dbms_job设置“作业”,完成定时运行的功能
5、变异表的解决方法:使用触发器完成监视的功能,在存储过程负责具体的操作

1、Oracle block应是操作系统blog的倍数
2、extents:初始化的空间用完后,在extents中再分配
3、segment:多次扩展之后的累加
4、排序区(sort_area_size、sort_area_retained_size)和sga无关

1、为使Oracle取得最佳性能,应将最低配置×10,(如:内存)
2、OFA(灵活目录结构),实际上是按照规定要求建目录,并不灵活
3、sid,由字母、数字组成,8个字符以内
4、建数据库时,若300个以内的并发使用共享模式,否则使用独占模式
5、联机帮助也要写到数据库中,因此建议不要安装
6、系统表空间的大小,应是初始大小的3~4倍
7、数据库配置时,应根据实际情况规划,不要使用默认值
8、temp/undo tablespace应是初始值的10倍

1、sort_area_size,该参数的设置一定要谨慎,每个session都要分配内存,当并发过多时,内存将严重不足

1、不建议重新分配空间大小(加大、缩小)
2、通过命令才能清晰的管理tablespace和数据文件
3、一年扩展6次是比较合理的

1、对Oracle的管理,不建议使用操作系统命令,应使用SQL命令

1、内存不够用时才使用临时表空间,用户不能指定使用临时表空间,不要在临时表空间建立对象
2、pctincrease=0,临时段配置时,现阶段的配置,建议就使用“0”

1、在9i中只能使用撤消表空间或回滚段其一
2、一个实例同时只能使用一个撤消表空间,建立过多没有意义,但回滚段可以使用多个
3、撤消表空间的信息将保留一段时间,通过undo_retention设置
4、9i/10g内部数据字典的维护使用回滚段

1、建立用户时不在随意加with admin选项
2、with grant可一并撤消相关的权限设置,而with admin则不能,但仍不建议使用

1、国内很少使用审计(audit)功能
2、启用该功能后,dba应经常监督system表空间
3、sys不能被审计

1、分析的目的是重组、优化
2、一个数据块的最大事务数由maxtrans设置,若该值设置过小,即使系统的负载很轻松,但由于该参数的限制,多余的用户仍然需要排队
3、不要轻易修改表结构
4、行链接(chained rows)的现象,在大对象、图片等存储时常见
5、嵌套表可解决第三范式(1..n)速度慢的问题,但该功能使用较少,且需要开发工具的支持
6、删除数据时不会重建索引,因此系统运行3~6个月dba应重建索引
7、从其它系统导入数据时,可先disable约束,导入成功后,再enable约束,通过设置exception,将启用过程中的错误写入异常表,方便查找非法数据
8、建立视图时,建议使用read only关键字
9、不建议使用sequence的cache功能
10、dbms_metadata.get_ddl可生成创建时的sql语句,不必查系统的数据字典

posted on 2006-07-10 04:49  gucs  阅读(483)  评论(0编辑  收藏  举报

导航