已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一课体系结构 深圳ITjob就业培训中心 长期开设java C net 嵌入式 手游开发 数据库 软件测试等课程 为深圳计算机行业协会培养和输送人才 数据库资料索取方式 QQ 6052708440755 25630755 学习目标 数据库简介 实现数据库管理的软件叫DBMS 1 RDBMS 关系型数据库 2 ORDBMS 对象型关系数据库 在原来的RDBMS的基础上加入了对象的概念 如现在的Oracles10g Oracle10g不是一个简单的数据库软件 它是一个平台 如 JAVA开发和 NET开发 1 对内存的最低要求是256M 推荐为512M2 选择基本安装进行傻瓜式安装 Oracle10g安装 Oracle10g的服务 启动Server 几个主要的服务 OracleServicexxx SID 必开 Oracle服务器服务进程的开启 关闭 OracleOraDb10g home1TNSListener 必开 Oracle网络服务监听程序服务 当需通过网络连接Oracle服务器或访问OracleEnterpriseManager10g时需启动 OracleServer的启动 启动Server 几个主要的服务 OracleOraDb10g home1iSQL Plus运行iSQL Plus工具时需开启的服务OracleDBConsoleorcl1访问OracleEnterpriseManager时需开启的服务 OracleServer的启动 EntepriseManager10gDatabaseControlURL http computer 5500 emiSQL PlusURL http computer 5560 isqlplus Oracle10g的B S工具 SQL Plus在Oracle安装的路径下可以找到该工具登陆界面如下 客户端连接工具 单机版 iSQL Plus首先要启动服务然后在浏览器里输入http localhost 5560 isqlplus进入登陆页面 客户端连接工具 浏览器版 Dos窗口操作Oracle从开始 点击运行 客户端连接工具 DOS版 在Dos窗口里输入sqlplusname pass 如下图所示 客户端连接工具 DOS版 该工具的登陆界面如下 客户端连接工具 第三方版 Oracle实例 在启动数据库时 Oracle首先要在内存中获取 划分 保留各种用途的区域 运行各种用途的后台进程 即创建一个例程 instance 然后再由该例程装载 mount 打开 open 数据库 最后由这个例程来访问和控制数据库的各种物理结构 当用户连接到数据库并使用数据库时 实际上是连接到该数据库的例程 通过例程来连接 使用数据库 所以 例程是用户和数据库之间的中间层 一台计算机上可以创建多个Oracle数据库 当同时要使用这些数据库时 就要创建多个例程 为了不使这些例程相混淆 每个例程都要用称为SID SystemIDentify 系统标识符 的符号来区分 即创建这些数据库时填写的数据库SID 内存结构 内存结构是Oracle数据库体系结构中最为重要的一部分 内存也是影响数据库性能的第一因素 内存的大小 速度直接影响数据库的运行速度 特别是当用户数增加时 如果内存不足 例程分配不到足够的内存 就会使有些用户连接不到数据库 或连接 查询的速度明显下降 内存结构 1 SGA 系统全局区 随着数据库实例的启动向操作系统申请分配一块内存结构 又会随着数据库实例的关闭而释放 每一个ORACLE数据库实例有且仅有一个SGA 2 PGA 程序全局区 用于保存每一个用户连接到数据库的信息 SGA 主要由五部分组成 1 共享池 SharedPool 2 数据库高速缓存 DatabaseBufferCache 3 重做日志缓存 RedoLogBufferCache 4 Java池 JavaPool 5 大池 LagerPool 共享池是SGA中最关键的内存片段 特别是在性能和可伸缩性上 一个太小的共享池会扼杀性能 使系统停止 太大的共享池也会有同样的效果 将会消耗大量的CPU来管理这个共享池 不正确的使用共享池只会带来灾难 共享池主要又可以分为以下两个部分 SQL语句缓冲 LibraryCache 数据字典缓冲区 DataDictionaryCache 共享池 当一个用户提交一个SQL语句 Oracle会将这句SQL进行分析 parse 这个过程类似于编译 会耗费相对较多的时间 在分析完这个SQL Oracle会把他的分析结果给保存在Sharedpool的LibraryCache中 当数据库第二次执行该SQL时 Oracle自动跳过这个分析过程 从而减少了系统运行的时间 这也是为什么第一次运行的SQL比第二次运行的SQL要慢一点的原因 SQL语句缓冲 LibraryCache 数据字典缓冲区是ORACLE特地为数据字典准备的一块缓冲池 供ORACLE内部使用 数据字典缓冲区 DataDictionaryCache 数据库高速缓存 这些缓冲是对应所有数据文件中的一些被使用到的数据块 让他们能够在内存中进行操作 任何文件的数据块都有可能被缓冲 数据库的任何修改都在该缓冲里完成 并由DBWR进程将修改后的数据写入磁盘 重做日志缓存 重做日志文件的缓冲区 对数据库的任何修改都按顺序被记录在该缓冲 然后由LGWR进程将它写入磁盘 这些修改信息可能是DML语句 如 Insert Update Delete 或DDL语句 如 Create Alter Drop等 重做日志缓冲区的存在是因为内存到内存的操作比较内存到硬盘的速度快很多 所以重作日志缓冲区可以加快数据库的操作速度 但是考虑的数据库的一致性与可恢复性 数据在重做日志缓冲区中的滞留时间不会很长 所以重作日志缓冲区一般都很小 大于3M之后的重作日志缓冲区已经没有太大的实际意义 JAVA池 Java的程序区 Oracle8I以后 Oracle在内核中加入了对Java的支持 该程序缓冲区就是为Java程序保留的 如果不用Java程序没有必要改变该缓冲区的默认大小 大池 需要大内存的操作 1 数据库备份和恢复2 具有大量排序操作的SQL语句 PGA 保存每一个用户连接到数据库的信息 包括 会话信息 排序信息和游标信息 分为 排序区 会话区 游标区 堆栈区 进程结构 用户进程启动客户端连接创建一个用户进程Oracle进程服务进程解析并执行用户所提交的SQL语句搜索SGA区的数据库缓存 决定何时读取数据文件将查询或执行后形成的数据返回给用户后台进程 后台进程 1 写数据DatabaseWriter DBWR 2 写日志LogWriter LGWR 3 检查点Checkpoint CKPT 4 系统监视SystemMonitor SMON 5 进程监视ProcessesMonitor PMON 6 归档Archive ARCn 7 恢复Recover RECO 8 锁管理服务LockManagerServer LMS 9 队列监视QueueMonitor QMNn 10 调度Dispatcher Dnnn 11 服务Server Snnn 写数据 DBWR 将修改过的数据缓冲区的数据写入对应数据文件DBWR是一个很底层的工作进程 它批量的把缓冲区的数据写入磁盘 DBWR工作的主要条件如下超时系统中没有多的空缓冲区用来存放数据CKPT进程触发DBWR等 写日志 LGWR 将重做日志缓冲区的数据写入重做日志文件 LGWR是一个必须和前台用户进程通信的进程 当数据被修改的时候 系统会产生一个重做日志并记录在重做日志缓冲区内 LGWR工作的主要条件如下用户提交有1 3重做日志缓冲区未被写入磁盘有大于1M重做日志缓冲区未被写入磁盘超时等 检查点进程 CKPT 同步数据文件 日志文件和控制文件 由于DBWR LGWR的工作原理 造成了数据文件 日志文件 控制文件的不一至 这就需要CKPT进程来同步 CKPT工作的主要条件如下在日志切换的时候数据库用immediate transaction normal选项shutdown数据库的时候根据初始化文件的LOG CHECKPOINT INTERVAL LOG CHECKPOINT TIMEOUT FAST START IO TARGET的设置的数值来确定用户触发 系统监视进程 SMON 工作主要包含清除临时空间在系统启动时 完成系统实例恢复聚结空闲空间从不可用的文件中恢复事务的活动等 进程监视进程 PMON 主要用于清除失效的用户进程 释放用户进程所用的资源 如PMON将回滚未提交的工作 释放锁 释放分配给失败进程的SGA资源 归档进程 ARCH 在归档模式下才生效当数据库以归档方式运行的时候 Oracle会启动ARCH进程 当重做日志文件被写满时 日志文件进行切换 旧的重做日志文件就被ARCH进程复制到db recovery file dest指定的目录下 这些被复制的重做日志文件被叫做归档日志文件 可以使用ARCHIVELOGLIST和showparameterDB RECOVERY FILE DEST查看归档位置 恢复进程 RECO 在分布式运行时生效 数据复制 一个结点RECO后台进程自动地连接到包含有悬而未决的分布式事务的其它数据库中 RECO自动地解决所有的悬而不决的事务 任何相应于已处理的悬而不决的事务的行将从每一个数据库的悬挂事务表中删去 当一数据库服务器的RECO后台进程试图建立同一远程服务器的通信 如果远程服务器是不可用或者网络连接不能建立时 RECO自动地在一个时间间隔之后再次连接 Oracle实例的总体结构 什么是Oracle归档模式 如果数据库处于非归档模式 联机日志在切换时就会丢弃 而在归档模式下 当发生日志切换的时候 被切换的日志会进行归档 比如 当前在使用联机重做日志1 当1写满的时候 发生日志切换 开始写联机重做日志2 这时联机重做日志1的内容会被拷贝到另外一个指定的目录下 这个目录叫做归档目录 拷贝的文件叫归档重做日志 只有在归档模式下才能进行重做日志的备份 1 进入DOS 启动sqlplus assysdba 2 shutdownimmediate关闭数据库3 startupmount启动数据库到装载状态4 alterdatabasearchivelog 进入归档模式5 alterdatabaseopen 打开数据库也可以修改初始化参数实现归档模式log archive start true去除归档模式 要先关闭数据库 再用指令alterdatabasenoarchivelog 进入非归档模式selectstatusfromv instance 查数据库状态selectlog modefromv database 查看数据库模式 如何进入归档模式 存储结构 1 逻辑结构数据库 表空间 段 区 块2 物理结构 包括数据文件 控制文件 日志文件 参数文件 数据字典 存储结构 逻辑存储结构 表空间 tablespace 表空间是最大的逻辑单位 一个数据库可以有多个表空间 一个表空间可以包含多个数据文件 一个数据文件只能属于一个表空间 任何方案对象都被存储在表空间的数据文件中 虽然不能被存储在多个表空间中 但可以被存储在多个数据文件中 表空间分系统表空间和非系统表空间两类 系统表空间包括SYSTEM表空间和SYSAUX表空间 其余的表空间就是非系统表空间 系统表空间 SYSTEM表空间是数据库创建时自动创建的系统表空间 用于存放数据字典 SYSAUX表空间时系统表空间的辅助表空间 什么叫数据字典 数据字典是一些系统表或视图 他存放系统的信息 他包括数据库版本 数据文件信息 表与索引等段信息 系统的运行状态等各种和系统有关的信息和用户脚本信息 数据库管理员可以通过对数据字典的查询 就可以了解到Oracle的运行状态 数据字典包括 各种对象的定义信息 包括表 视图 索引 同义词 序列 存储过程 函数 包 触发器以及其他各种对象 数据库存储空间的分配信息 数据库安全信息 包括用户 权限 角色等 撤销表空间 当数据库进行更新 插入 删除等操作的时候 新的数据被更新到原来的数据文件 而旧的数据 BeforeImage 就被放到回滚段中 如果数据需要回滚 那么可以从回滚段将数据再复制到数据文件中 来完成数据的回滚 在系统恢复的时候 回滚段可以用来回滚没有被commit的数据 解决系统的一至性 临时表空间 用来存放临时数据的 例如排序操作的临时空间 它的空间会在下次系统启动的时候全部被释放 逻辑存储结构 段 segment 段用于存储表空间中某一种特定的具有独立存储结构的对象的所有数据 它由一个或多个区组成 段的几种类型 表段 数据段 索引段临时段 用于临时表空间 回退段 用于撤销表空间 逻辑存储结构 区 extent 区是由物理上连续存放的块构成的 区是Oracle存储分配的最小单位 由一个或多个块组成区 由一个或多个区组成段 当在数据库中创建带有实际存储结构的方案对象 如表 索引 簇 时 Oracle将为该方案对象分配若干个区 以便组成一个对应的段来为该方案对象提供初始的存储空间 当段中已分配的区都写满后 Oracle就为该段分配一个新的区 以便容纳更多的数据 逻辑存储结构 区 extent 可以通过在CREATETABLE语句的STORAGE子句中设置3个存储参数来指定这个表的数据段的存储区大小 第1个后续大小和后续区增加的比例 STORAGE INITIAL64KNEXT32KPCTINCREASE50 逻辑存储结构 块 block 块是Oracle最小的数据管理单位 也是执行输入输出操作时的最小单位 相对应地 操作系统执行输入输出操作的最小单位是操作系统块 块的大小是操作系统块大小的整数倍 以Win2000为例 操作系统块的大小是4kb 所以Oracle块的大小可以是4kb 8kb 16kb等 如果块的大小是4kb EMP表每行的数据占100个字节 如果某个查询语句只返回1行数据 那么 在将数据读入到数据高速缓存时 读取的数据量是4kb而不是100个字节 数据文件控制文件日志文件参数文件其它文件 Oracle物理结构 数据文件 数据文件是实际存储插入到数据库表中的实际数据的操作系统文件 数据文件的大小与它们所存储的数据量的大小直接相关 会自动增大 一个表空间在物理上对应若干个数据文件 而一个数据文件只能属于一个表空间 在oracle10g安装后 C oracle product 10 1 0 oradata orcl目录下可以看到自动创建的6个表空间都有其对应的数据文件 控制文件 控制文件是一个很小的文件 大小一般在1MB到5MB之间 为二进制文件 但它是数据库中的关键性文件 它对数据库的成功启动和正常运行都是至关重要的 因为它存储了在其他地方无法获得的关键信息 这些信息包括 数据库的名称数据文件和重做日志文件的名称 位置和大小发生磁盘故障或用户错误时 用于恢复数据库的信息注意 每个数据库必须 而且只需要有一个控制文件在装载 mount 数据库时 Oracle将读取控制文件中的信息 以便判断数据库的状态 获得数据库的物理结构的信息物理文件的使用权 因此 控制文件对于数据库的成功装载 以及其后的打开都是至关重要的 控制文件 只有控制文件是正常的 才能装载 打开数据库 在数据库运行的过程中 每当出现数据库检查点 checkpoint 或修改数据库结构之后 Oracle就会修改控制文件的内容 DBA和用户都不应该人为地修改控制文件中的内容 否则会破坏控制文件 在Oracle10g安装完毕之后 自动创建的3个控制文件如下 C oracle product 10 1 0 oradata orcl CONTROL01 CTLC oracle product 10 1 0 oradata orcl CONTROL02 CTLC oracle product 10 1 0 oradata orcl CONTROL03 CTL 重做日志文件 当用户对数据库进行修改时 Oracle实际上是先在内存中进行修改 过一段时间后 再集中将内存中的修改结果成批地写入上面的数据文件中 效率问题 如果修改结果没写入数据文件 那么Oracle是用重做日志文件来随时保存这些修改结果的 每个数据库至少需要两个重做日志文件 因为Oracle是以循环的方式来使用重做日志文件的 当第一个写满后 LGWR进程开始写入第二个 当第二个写满后 又重新写第一个 依次类推 在Oracle10g安装完成后 自动创建 个重做日志文件 在C oracle product 10 1 0 oradata orcl目录下 参数文件 参数文件parameterfile包含一组关于数据库和实例的配置参数 Oracle推出用户使用一个服务器参数文件 Spfile 作为维护初始化参数的动态手段 Spfile允许用户在一个服务器端的磁盘文件里持久地保存和管理初始化参数 初始化参数的设置 初始化参数的设置 初始化参数的设置 初始化参数的设置 初始化参数的设置 查看初始化参数 管理 数据库配置 所有初始化参数 如图 填空题 1 数据库中的表关系分为 2 Oracle10g的新特性有 3 Oracle10g系统结构分为 4 OracleEnterpriseManager是一个基于 的框架系统 5 在输入URL进入OracleEnterpriseManagerDatabaseControl的时候 必须指出 和 6 在默认的情况下 Oracle实例的服务启动类型是处于 状态 7 在登录OracleEnterpriseManagerDatabaseControl时 连接身份有三中选择 分别为 和 课后练习 选择题 1 Oracle10g是什么公司开发出的数据库软件 A 微软B 升阳C IBMD 甲骨文 2 Oracle10g的安装 内存最低要求是多少 A 64MBB 128MBC 256MBD 512MB 3 Oracle10g安装过程中的SID指的是什么 A 系统标识号B 数据库名C 用户名D 用户口令 4 Oracle10g常见的类型文件不包括如下哪一项 A 数据文件B 日志文件C 备份文件D 控制文件 5 默认登录到OracleEnterpriseManagerDatabaseControl的端口号是 A 5500B 5560C 6055D 5811 6 在OracleEnterpriseManagerDatabaseControl的维护页面中 可以执行的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南新高考教研联盟暨长郡二十校联盟2026届高三第二次联考化学试题+答案
- 2025明达职业技术学院教师招聘考试题目及答案
- 2025江西农业大学教师招聘考试题目及答案
- 2025朝阳职工工学院教师招聘考试题目及答案
- 宁波护士考编试题及答案
- 蓝桥杯c试题及答案
- 2026年周口市城乡一体化示范区公益性岗位人员招聘18人建设笔试备考试题及答案解析
- 2026重庆市中医骨科医院第二批编外聘用人员招聘9人建设笔试备考试题及答案解析
- 2026吉林省老年大学校园媒体通讯员招聘建设笔试参考题库及答案解析
- 2026辽宁沈阳近海招商管理集团有限公司社会招聘5人建设笔试参考题库及答案解析
- 2026年见证取样员模拟题库讲解附参考答案详解【综合题】
- 2026年中国储备粮管理集团有限公司招聘81人笔试历年常考点试题专练附带答案详解
- 2025年吉林省通化市事业单位招聘笔试试题及答案解析
- 医院体检质控月度分析记录
- 湖北省云学联盟2025-2026学年高二下学期3月学科素养测评数学试卷(含答案)
- 2026江苏南通市专用通信局招聘工作人员2人(事业编制)考试参考题库及答案解析
- 说课《建筑装饰施工技术》 课件
- 中药学电子版教材
- 外研社初中英语词组-固定搭配全一册
- 基于学科核心素养的学业质量水平
- GB/T 8918-2006重要用途钢丝绳
评论
0/150
提交评论