一 oracle负载太高
负载太高的原因:程序较多,导致内存与磁盘的io太过频繁。是否可以通过调大内存来解决。
要怎么样安排自己的工作:将小的程序在白天工作,大的程序放在晚上执行。可以设置job来解决,但之前有尝试过,却无法停止job
二 表分区
优势:提高查询效率。若只是能提高查询效率,会不会占用其他的资源,那么建立分区表就需要注意,只在查询较多的表上建立
分区键:是否一定要设置为主键才会提高查询效率,那汉字为主键的表要怎么设置分区键?
三 审计
什么情况下使用审计?
一 oracle官方文档的使用
左导航栏:getting started
installing and upgrading 安装升级
database administration DBA
application development 应用开发
grid computing?
performance
high availability 高可用性
data warehousing and business intelligence 数据挖掘和商业智能
unstructured data and content management 非结构化数据和内容管理
information integration信息集成
security 安全性
DBA栏:concepts 概念
administrator's guide 管理员向导
refernce 参考
sql language reference sql语言参考
performance tuning guide 性能优化向导
error message 错误信息
二 sql 代码可读性与可维护性
每一步都要加注释,无论多么简单的操作,无论是否临时操作!
需要修改的地方,现在就修改,不要等到下次!
自己写的代码,要经常维护优化,而不是一劳永逸的!
一 进程管理
疑问:通过后台进程停止的程序,会释放资源吗?
v$session 用户进程
SID
SERIAL#
PROGRAM
v$process 服务器后台进程
二 undo表空间
undo的三个初始化参数:
undo_management auto undo段自动扩展
undo_retention 900 undo段保留时间
undo_tablespace 表空间
表空间的使用:
依次使用 freed 空数据块,expired 超过保留时间的块,自增长块,inactive 无活动块,报错
但实际通过语句:select distinct status from dba_undo_extents;
搜索出的结果是active,expired,unexpired 三种状态
free状态的块需要在 dba_free_space表中查询
一 oracle体系架构
客户端进程--->服务器进程--->实例 sga 共享池 库高速缓存(判断是硬解析还是软解析,以及?)--->数据字典高速缓存(存储了数据文件,表等数据库对象的定义)--->数据缓存区(undo表空间)--->日志缓存(记录undo的变化)