数据文件,重做日志文件,控制文件。注:其中数据文件对应表空间,一个表空间至少有一个数据文件,数据库有多处表空间默认的是SYSTEM表空间。重做日志文件可以被备份做为归档日志文件归档文件又分为两种模式:非归档和归档。控制文件是数据库的核心,它包括了数据库的名称和编号,数据库的结构信息(数据文件和重做日志文件的地址)
数据库启动时查看它的SCN(system change number )看它是否同数据文件头上的SCN对应如果对应就启动数据库不对应就回滚数据。其它的物理文件有:初始化文件,同口令文件其中初始化文件中的信息是同实例有关而口令文件是特权身份信息的如SYS用户同密码具体来说口令中的信息可以在数据库打开之前使用进入数据库而其它的口令同用户只有数据库打开之后才可用
逻辑结构:
表空间,段,区,块.注:块是最小IO操作单位大于2k-32k之间,块分为标准块同非标准块标一个标准块同4个非标准块可以组成一个数据库在SYSTEM同TMPROAY表空间中一定要用标准块在数据库高速缓存中可以使用非标准块但非标准块参数不能同标准块参数一致,表空间创建时分配.段是相临区的组成可分为:表段,索引段,回滚段,临时段,引导段,簇表段.其中回滚段用于事务放原数据总的来说一个回滚段可以放几个事务而多个事务使用区不同但一个事务只能放于一个回滚段中,并且一个回滚段中只能有一个区是活的如果一个事务要使用几个区而当前的下面的区有事务时就会扩展一个区,回滚段至少要两个,但出现并发时可以从回滚段中取数据保持读写一致性.组成段的所有区是在段表空间上的数据文件中,索引段包含的是索引的字段以及对应行的值并不是对应行的ROWID,临时段是临时表主要用于排序工作当一个表段要进行排序时就可以在临时段中创建一个段用来存放一些排序信息,引导段是数据库启动时初始化时要用到的一个表段.区是段在表空间上连续使用的空间在创建段时进行区的分配也就是说对段的操作就是对区的操作.
回滚段:
回滚段有两种类型:NOSYSTEM,SYSTEM分别作用于两个表空间一个是SYSTEM一个是非SYSTEM表空间.NOSYSTEM中可以用两种管理模式:自动各手动.手动的要一个永久的回滚表空间可以设为私有或公有:私有只能被一个实例使用公有可能给多个
PMON 进程监视进程
监视用户进程(客户端连接服务器的进程)到服务进程(在服务器端响应用户进程的进程)的连接。
创建会话。
监视会话是否异常中断,如果中断:PMON会回滚事务、解锁、释放资源。
SMON 系统监视进程
任务:会检测SCN号,相等:启动
不相等,实例恢复(1)前滚将日志应用
(2)打开数据库
(3)恢复数据库
恢复的起点是走后一次CHECKPOINT的位置。
每3秒合并空闲空间
释放临时段
临时段:暂时存放在排序时中没有空间的字段值。
在排序中产生的。
数据量大的时候,排序是分成若干块执行的,当字段值排好序之后就放到临时段中。
DBWR 数据库写进程
/DBW0/DBWn n:0-9
将脏数据写回到数据文件中。
当发生以下情况执行:
当发生检查点事件的时候,checkpoint
脏块达到极限值;
没有空间的缓冲空间
超时
RAC PING 请求
表空间离线
表空间只读
在表执行DROP或TRUNCATE
表空间上执行BEGIN BACKUP
LGWR 重作日志写进程
把重做日志缓冲区的内容写出到日志文件(顺序写出,按时间)。
执行条件:
事务提交
先写日志后写数据的好处:
最快地保证数据不丢失
快
重作日志缓冲区三分之一满
每3秒
有一条超过1MB的重作日志记录
DBWn进程操作前
CKPT 检查点进程
先执行DBWR,写数据,再进行同步。
提供数据库同步性;
在执行检查点时通知DBWn 执行写操作。
ARCn 归档进程(可选)
保存数据库的所有修改记录
当数据库在ARCHIVELOG模式的时候自动归档当前
关于块区段的进一步论述:
把块或段认为是行或表是不正确的为了方便了解一开始是可以如些理解的。
块只不过是最小的IO块而己同逻辑上的列或行是不一样的块可以有几行数据也可以有不到一行的数据。
同理段也一样可以是几个表的集合也可以是一个表也可是不到一个表,它的形成只不过是相邻区集合的意义。正是如些才出现了行链接同行转移的术语:行链接是由于块中不能放入一行记录引起的再在块的空间区中定义一个指针来链接它们而行转移是说因为改动更新了字段出现原来的块不够入新的数据而使新的一部分的新数据出现在相邻的块中的,两者区别在于行链接是一开始由于块定义小了插入的新值不够放形成的而行转移是因为更新数据时数据大了只能放入到相邻的块只而形成的块中没有指针指到多余数据的地方。对于行链接的处理唯一的是可以通过扩大块的大小对于行转移的处理使用CHAINED_ROWSG的表先把数据放入一个临时表中在把原数据删除再导入新数据。可以修改块中的PCTFREE的值
分享到:
相关推荐
前段时间对Telephony的分析加上参考部分资料总结的ppt,内容包括Android 3G Framework分析,主要以网络连接为主线讲解Telephony框架,网络连接的建立,状态机机制,与底层RIL的通信,及Notify到Application机制
LeetCode and lintcode Record1. learn leetcode记录在LintCode 刷过的题。本身比较菜,好多稍难一点的题,要想很久才能想出来,方法不一定是最优的2. 面试题记录刷过的面试,笔试题目录数组和字符串链表树和图回溯...
7. **第十章**:date structer.ppt可能讲解了动态规划、贪心算法等高级算法,这些算法在解决复杂问题时具有重要意义。 每一章的PPT都应该是对相应主题的详细阐述,包括概念定义、操作特性、典型应用以及C语言实现的...
单例生成器-Swift 2.1面向协议的编程这是使用生成器的方法: /* create/extend some structer type (struct or enum) */extension SomeValueType : SingletonType { // implement the designated initializer `init`...
基于springboot大学生就业信息管理系统源码数据库文档.zip
基于java的驾校收支管理可视化平台的开题报告
时间序列 原木 间隔5秒钟 20241120
毕业设计&课设_基于 Vue 的电影在线预订与管理系统:后台 Java(SSM)代码,为毕业设计项目.zip
基于springboot课件通中小学教学课件共享平台源码数据库文档.zip
基于java的网上购物商城的开题报告
Delphi人脸检测与识别Demo1fdef-main.zip
基于java的咖啡在线销售系统的开题报告
基于java的自助医疗服务系统的开题报告.docx
内容概要:本文档全面介绍了Visual Basic(VB)编程语言的基础知识和高级应用。首先概述了VB的基本特性和开发环境,随后详细讲述了VB的数据类型、变量、运算符、控制结构、数组、过程与函数、变量作用域等内容。接着介绍了窗体设计、控件使用、菜单与工具栏的设计,文件操作、数据库访问等关键知识点。最后讨论了VB的学习方法、发展历史及其在桌面应用、Web应用、数据库应用、游戏开发和自动化脚本编写等领域的广泛应用前景。 适合人群:初学者和中级程序员,尤其是希望快速掌握Windows桌面应用开发的人群。 使用场景及目标:①掌握VB的基础语法和开发环境;②学会使用VB创建复杂的用户界面和功能完整的应用程序;③理解数据库操作、文件管理和网络编程等高级主题。 其他说明:Visual Basic是一种简单易学且功能强大的编程语言,尤其适合用于开发Windows桌面应用。文中不仅覆盖了基础知识,还包括了大量的实用案例和技术细节,帮助读者快速提升编程技能。
基于java的疫情期间高校防控系统开题报告.docx
基于springboot+vue社区老年人帮扶系统源码数据库文档.zip
基于java的超市商品管理系统的开题报告.docx
基于SpringBoot房屋买卖平台源码数据库文档.zip
xdu限通院23微处理器系统与应用大作业(两只老虎),适应于汇编语言keil软件,
<项目介绍> - 新闻类网站系统,基于SSM(Spring、Spring MVC、MyBatis)+MySQL开发,高分成品毕业设计,附带往届论文 - 不懂运行,下载完可以私聊问,可远程教学 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------