Oracle Architectural components
第0章:分析过程
资源,CPU,内存,磁盘
1. 讲解 dell亚太区数据库迁移的工作,跨版本,跨操作系统迁移,大数据量迁移 gotegate
2.
1.增加资源
2.分配资源
3. 修改算法,减少资源使用,如:减少顺序扫描,聚簇段使用
4. 限制资源使用 限制用户数等 定义不同的资源组,不同的用户使用不同的资源组 DBMS Resource组,建立用户和组
规范化流程
DML 语句需要使用回退段,需要记录日志,有IO
DDL(drop…) 注意隐式commit,提交前面所有的语句
DCL(grant,revoke…)
事务处理(commit,rollback,savepoint)
altersystem set ...
Pl/sql例外处理(无名块,有名块(存储过程)
死锁处理: 1. 杀相关会话 2: 捕获异常,编写异常处理,rollback相关会话
共享池里面为PLSQL中Begin END中的部分,作为一条语句存放在共享池内
第一章: 体系结构
Oracle :
1: 数据库实例(instance)
1.1 后台进程
1.1.1 dbwr 负责把缓冲区写到数据文件写进程; 相关日志记录磁盘写方面的错误问题
1.1.2 lgwr 负责把日志缓冲区写到日志文件中
1.1.3 ckpt 检查点进程
当检查点发生的时候,触发dbwr把缓冲区数据写到磁盘上
数据库同步的标志,三类文件(数据,日志,控制)要求检查点一致
1.1.4 smon 系统监控进程
例程恢复,当例程失败的时候,负责实例恢复,recover
回收临时段的空间,如排序生成的临时空间,会话结束后自动释放临时段的空间
合并相邻的空间碎片(合并数据库文件的零散磁盘空间)
(对于仓库数据库需要重视阵列的吞吐量,对于联机操作,需要寻道时间短,反应快的阵列)
1.1.5 PMON 程序监控进程
释放资源(正常资源释放:如commit后的锁资源释放; 异常资源释放: 如当某个应用出现异常,如网路中断出现后,1分钟内就自动释放被异常应用占用的资源)
1.1.6 Others
归档进程
rac进程
等...
1.2 SGA(物理内存+虚拟内存)
show parameter lock_sga 改为true则表示sga尽可能的放在物理内存里面
1.2.1 共享池(lib cache ,data dict cache装的程序) 最近使用的SQL语句 最近使用的数据字典信息
1.2.2 数据库缓冲区(databasebuff装的是数据) 最近使用的数据 视图,同义词等这类也数据数据
1.2.3 日志缓冲区(redo log buff装的是改变的数据)
1.3 larg pool(并行库,备份)
1.4 java pool(java程序)
2: 数据库文件
2.1: 物理存储
数据文件: 系统表,用户表,临时表空间,Undo,Redo表空间
控制文件: 结构信息
日志文件: 改变的数据,用于恢复
2.2:逻辑存储
表空间 > 段(装各种类型数据的地方) > 区 (为段分配空间) > 块(最小单位)
10G 3个G(特性: EM 磁盘阵列ASM管理 主机RAC)
SQL语句编写规范:
要求: 如列名全部小写, 表名称全部大写,关键字大写等.
系统表:
select sql_text,excutions from V$SQLAREA where sql_text like '%...%'
V$SQLTEXT
SQLPLUS用法:
定义变量的方法
varable:vaa;
decare
begin
:vaa :=7369;
end
刷新SGA:
alter system flush shared_pool;
查看动态内存区:
select *from v$sgastat where name like '%free%';