第01章(理论.ppt

上传人:b****3 文档编号:2709480 上传时间:2022-11-08 格式:PPT 页数:43 大小:718.50KB
下载 相关 举报
第01章(理论.ppt_第1页
第1页 / 共43页
第01章(理论.ppt_第2页
第2页 / 共43页
第01章(理论.ppt_第3页
第3页 / 共43页
第01章(理论.ppt_第4页
第4页 / 共43页
第01章(理论.ppt_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

第01章(理论.ppt

《第01章(理论.ppt》由会员分享,可在线阅读,更多相关《第01章(理论.ppt(43页珍藏版)》请在冰豆网上搜索。

第01章(理论.ppt

OracleOracle数据库编程第一阶段课程结构图计算机基础(Office)JAVA程序基础JAVA面向对象程序设计持久化基础(SQLServer,xml)JAVAWEB程序设计客户端零基础零基础零基础零基础零基础贷款计息通讯服务器框架开发项目贷款计息通讯服务器框架开发项目表现层框架开发项目表现层框架开发项目(MyStruts)第二阶段课程结构图面向对象分析与设计(OOAD)JAVA初级程序员JAVA初级程序员JAVA初级程序员数据库高级程序设计(Oracle10g)JAVA中级程序员JAVA中级程序员JAVA中级程序员表现层框架(Struts2)持久层框架(Hibernate)集成开发框架(Spring)JAVA高级程序员JAVAEE项目表现层框架开发项目(MyStruts)还会担心就业吗?

课程安排rOracle数据库基础概念rPL/SQL编程基础rPL/SQL程序控制结构r在PL/SQL中更改数据和管理事务r在PL/SQL中使用游标获取数据r开发PL/SQL子程序和包r使用PL/SQL开发触发器r动态SQLrJAVA操作数据库r总复习本章大纲rOracle数据库服务器简介rOracle的发展简史r如何学好OraclerPL/SQL概述rOracle数据库体系架构rOracle数据词典与数据库对象Oracle的发展简史r1970年IBM公司的Codd博士提出关系模型理论。

r1977年美国硅谷成立了软件开发实验室,第一位员工Scott加盟(他有一只猫名叫tiger)。

r受关系模型理论启发,成立了Oracle(希腊:

神、预言),并且迎来的第一个客户:

美国CIA。

r经过一系列风风雨雨的发展,于98年推出了8i,i代表internet,表示有了很多internet的特性。

r01年9i具有了通过集群计算机共享某个单一数据库的访问,打破了各项测试记录。

r03-07,分别推出了10g和11g,g代表网格运算。

将世界各地的计算机通过internet连接在一起共同服务,并且性能更高、更容易管理、可诊断,更高存储效率。

2008年,云计算的概念开始流行。

Oracle针对云计算又会推出什么样的新产品呢?

让我们拭目以待。

如何学习Oracler数据库管理员r管理Oracle(启动停止、数据库故障恢复)r提升Oracle性能(分配内存)r优化数据存储结构rr数据库程序员r编写业务SQLr数据库脚本编程(函数、存储过程、触发器)我们的目标主要定位在Oracle程序员,但是OracleDBA的基础也涉及一些,这样找工作大有好处。

本章大纲rOracle数据库服务器简介rPL/SQL概述rPL/SQL程序简介rPL/SQL运行机制rPL/SQL块的编译过程r使用PL/SQL的好处rOracle数据库体系架构rOracle数据词典与数据库对象PL/SQL程序简介rPL/SQL程序组成r组成PL/SQL程序的最基本的单元是PL/SQL块。

rPL/SQL块的分类r匿名块:

直接执行的块r命名块:

通过名称调用的块r子程序(包括存储过程和函数)r触发器r包子程序:

类似子程序:

类似JAVA的方法和函数的方法和函数触发器:

类似触发器:

类似JAVA的事件处理代码,当某的事件处理代码,当某件事情发生时自动执行件事情发生时自动执行包:

类似包:

类似JAVA的的package,主要的作用组,主要的作用组织代码和避免命名冲突。

织代码和避免命名冲突。

PL/SQL程序示例rPL/SQL块代码r与普通开发语言一样,有自己的语法规则:

保留字,关键字、标识符、分支、循环具体的内容具体的内容将在第二章将在第二章开始详解。

开始详解。

PL/SQL运行机制r了解PL/SQLrPL/SQL是对标准SQL的扩充。

rPL/SQL执行需要PL/SQL引擎执行,PL/SQL引擎可能一般安装在服务端,但也有可能安装在客户端。

r运行机制r服务器端的PL/SQL引擎(如Oracle服务器)执行过程r标准SQL交给SQL引擎处理r非标准部分交给PL/SQL引擎处理r客户端的PL/SQL引擎(如OracleForms)执行过程r标准SQL交给服务器的SQL引擎处理r非标准部分交给PL/SQL引擎在客户端处理,如果没有SQL,则所有PL/SQL都是在客户端处理的。

PL/SQL运行机制r服务端的PL/SQL执行过程分析PL/SQL语句语句过程语句的执行过程语句的执行SQL语句处理器语句处理器Oracle服务器服务器PL/SQL引擎引擎SQL引擎引擎SQL语句语句PL/SQL块块编译编译编译编译发送发送PL/SQL块的编译过程r为什么要编译rPL/SQL块必须编译为机器码才能够执行rPL/SQL块r匿名块:

在PL/SQL引擎再编译r命名块:

在创建时或修改进即时编译PL/SQL块的编译过程PL/SQL引擎引擎检查共享池是否检查共享池是否有相同的有相同的SQL语句语句(没有则继续,有则返回没有则继续,有则返回)产生伪代码,并且设置合法状态产生伪代码,并且设置合法状态绑定绑定语法检查语法检查检查对表、列等对象的引用检查对表、列等对象的引用检查检查PL/SQL代码的代码的语法或编译错误。

语法或编译错误。

如果语法检查通过,编译器则如果语法检查通过,编译器则为为Oracle存储数据的程序变存储数据的程序变量分配一个存储地址,这个过量分配一个存储地址,这个过程称为绑定。

绑定允许程称为绑定。

绑定允许Oracle在程序运行时引用存在程序运行时引用存储地址。

储地址。

注意,即使状态设置为合法,如果在执行对注意,即使状态设置为合法,如果在执行对应的表不存在,则执行仍会失败,并且状态应的表不存在,则执行仍会失败,并且状态自动设置为不可用。

自动设置为不可用。

使用PL/SQL的好处r为什么要使用PL/SQLr减少网络流量,提高应用程序性能r提供模块化程序开发能力,简化了开发和维护r具有良好的兼容性,不同的开发工具可以使用相同的PL/SQL脚本r允许定义标识符,增加了程序可读性r提供了程序控制结构,增强的业务处理能力r提供了异常处理,让PL/SQL程序更健壮本章大纲rOracle数据库服务器简介rPL/SQL概述rOracle数据库体系架构rOracle内存结构rOracle后台进程rOracle逻辑和物理结构rOracle数据词典与数据库对象Oracle体系架构r体系架构概念r系统的体系架构指系统的组成部分,以及这些组成部分之间的关系。

rOracle的体系架构,是指Oracle数据库管理系统的组成部分和这些组成部分之间的相互关系,包括内存结构、后台进程、物理与逻辑结构等。

rOracle引入体系架构原因r为了高效地使用计算机最宝贵的资源:

内存,同时保证不会丢失数据库中的任何数据。

所以Oracle引入了一个非常复杂的体系结构。

Oracle体系架构数据文件参数文件归档日志文件口令文件PGA共享池数据缓冲区日志缓冲区PMONSMONDBWRLGWR其它后台进程日志文件控制文件Oracle实例Oracle数据库SGAOracle启动SGA分配后台进程启动PGA分配Oracle数据库管理用户进程服务进程Oracle体系架构之实例Oracle实例数据库SGA(系统全局区)后台进程分配共享内存启动程序日志缓冲区数据缓冲区共享池PMONDBWRLGWR其它分配私有内存PGA(程序全局区)Oracle实例启动时就分配系统全局区,这是所有进程共享的内存区域当各进程启动时所分配程序全局区,是各进程专用的区域SGA与PGA最大的区别:

一个是共享区(所有进程共享),一个是各进程专用的区域。

Oracle体系架构之数据库Oracle实例数据库物理结构逻辑结构组成文件控制文件数据文件日志文件其它文件数据块区段表空间深入SGArSGA(系统全局区)rSGA保存了数据库环境和字典信息,由多个数据库进程共享共享池数据缓冲区日志缓冲区SGA深入SGAr日志缓冲区:

r日志记录数据库的所有修改信息r减少了保存日志时对磁盘的操作,提高了数据库性能。

r数据缓冲区:

r用于存储从磁盘数据文件中读入的数据,所有用户共享。

r数据缓冲区的大小对数据库的读取速度有直接的影响。

r已读取常见表格的数据,减少了对磁盘的操作,提高了数据库性能。

r共享池:

r共享池是对SQL、PL/SQL程序进行语法分析、编译、执行的内存区域,共享池的大小直接影响数据库的性能。

r保存了对SQL分析结果,减少了分析相同SQL的时间,提高SQL执行效率。

SGA最大的作用是什么?

直接与程序相关的缓冲区是哪个?

深入后台进程rOracle各种进程中,最重要的就是后台进程:

后台进程PMONSMONDBWRLGWRCKPT其他进程故障进程故障监控进程监控进程系统系统监控进程监控进程数据写入进程数据写入进程日志写入进程日志写入进程检查点进程检查点进程深入后台进程rPMON进程监控进程:

r清理出现故障的进程。

r释放所有当前挂起的锁定。

r释放故障进程使用的资源。

rSMON系统监控进程r在实例失败之后,重新打开数据库时自动恢复实例。

r整理数据文件的自由空间,将相邻区域结合起来。

r释放不再使用的临时段。

rDBWR数据写入进程:

r管理数据缓冲区,将最近使用过的块保留在内存中。

r将修改后的缓冲区数据写入数据文件中。

rLGWR日志写入进程:

r负责将日志缓冲区中的日志数据写入日志文件。

r系统有多个日志文件,该进程以循环的方式将数据写入文件。

深入物理存储结构r物理架构r指从操作系统的角度看,Oracle有哪些文件物理组件数据文件控制文件日志文件参数文件口令文件归档日志文件辅助文件深入物理存储结构r数据文件:

r用于存储数据库数据,如表、索引数据等。

r日志文件:

r记录对数据库的所有修改信息,用于故障恢复。

r控制文件:

r记录数据库物理结构的二进制文件。

深入逻辑存储结构r逻辑架构r指Oracle的“逻辑上”是用什么对象进行存储的数据库表空间段区数据块模式Schema,包含一个用户所有对象的的逻辑结构,模式名称就是控制该模式的用户名称。

深入逻辑存储结构r数据块:

r数据块是Oracle服务器所能分配、读取或写入的最小存储单元。

rOracle服务器以数据块为单位管理数据文件的存储空间。

r区:

r区为段分配空间,它由连续的数据块组成。

r当段中的所有空间已完全使用时,系统自动为该段分配一个新区。

r区不能跨数据文件存在,只能存在于一个数据文件中。

r段:

r段是构成表空间的逻辑存储结构,段由一组区组成。

r按照段所存储数据的特征,将段分为四种类型,即数据段、索引段、回退段和临时段。

深入逻辑存储结构r表空间:

r表空间是数据库中最大的逻辑单位,一个Oracle数据库至少包含一个表空间,就是名为SYSTEM的系统表空间。

r每个表空间是由一个或多个数据文件组成的,一个数据文件只能与一个表空间相关联。

r表空间的大小等于构成该表空间的所有数据文件大小之和。

r模式:

r英文Schema,模式是对用户所创建的数据库对象的总称。

r模式对象包括表、视图、索引、同义词、序列、过程和程序包等。

r与用户的关系:

模式名称就是控制该模式的用户名称。

实例与数据库关系r两者关系r一个实例只能管理一个数据库r一个数据库可能由多个实例同时管理r单实例与多实例r一个数据库只有一个实例管理,叫单实例数据库。

r一个数据库同时由多个实例管理,叫多实例数据库。

不就是一对关系嘛!

区别Oracle三种进程数据文件参数文件归档日志文件口令文件PGA共享池数据缓冲区日志缓冲区PMONSMONDBWRLGWR其它后台进程日志文件控制文件Oracle实例Oracle数据库SGA用户进程服务进程当一个应用程序与数当一个应用程序与数据库连接时,即创建据库连接时,即创建了用户进程。

了用户进程。

不管有没有用户连接,都不管有没有用户连接,都必须启动的进程,叫后台必须启动的进程,叫后台进程。

每一个后台进程都进程。

每一个后台进程都有自己专门的职责,主要有自己专门的职责,主要提高性能和保证可靠性。

提高性能和保证可靠性。

用于处理连接到该实例的用户进程的请求。

当用户连接至Oracle数据库实例创建会话时产生。

请注意到3种进程:

用户进程、服务进程、后台进程?

三种进程

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 电子电路

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1