1、Oracle10g 简介,主讲教师:杨丽丽E-mail: Tel:13484523362 87091337(o),甲骨文公司,公司类型:上市公司 (NASDAQ: ORCL) 公司规模:世界五百强市值:1466.43亿美元(2011年)年收入:268.2亿美元(2011年)口号:信息驱动成立于:加利福尼亚 (1977年)总部位于:美国加州红木城重要人物:拉里埃里森 Larry Ellison产业:数据库软件雇员数目:108429 (2011年)CEO:Larry EllisonOracle公司(甲骨文公司)是世界上最大的企业软件公司,向遍及145个国家的用户提供数据库、工具和应用软件以及相关的
2、咨询、培训和支持服务。甲骨文公司1989年正式进入中国。,Larry Ellison,拉里埃里森(Larry Ellison)是世 界上最大数据库软件公司甲骨文 的老板,他的产品遍布全世界。埃里森在32岁以前还一事无成。 读了三个大学,没得到一个学位文凭,换了十几家公司,老婆也离他而去。开始创业时只有1200美元,却使得Oracle公司连续12年销售额每年翻一番,成为世界上第二大软件公司,他自己也成为硅谷首富。,前言,Oracle数据库系统是美国Oracle公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户端/服务器(Client/Server)或B/S体系结构的数据库
3、之一。ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。,1.Oracle各版本,Oracle 8i和Oracle 9i的i代表Internet,Oracle从8i开始提出了Internet计算的概念,表明Oracle 8i和Oracle 9i是面向Internet计算而设计的。Oracle 9i只是Oracle的过渡产品,Oracle 10g才是Oracle最终要发布的新一代产品。Oracle 10g是2003年9月正是发布的,g指的是grid,即
4、网格计算。 Oracle 10g是专为网格计算而设计的数据库,用户可以利用网格计算获得最大的投资回报。Oracle产品以Oracle数据库为核心,其它产品是围绕这个核心的管理、开发工具和应用软件。,网格计算即分布式计算,是一门计算机科学。它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终结果。分布式计算是利用互联网上的计算机的 CPU 的闲置处理能力来解决大型计算问题的一种计算科学。,2.Oracle10g,Oracle10g是业界第一个完整的、智能化的新一代Internet基础架构,Oracle10
5、g实际上是指Oracle数据库10g、Oracle应用服务器10g和Oracle开发工具套件10g的完整集成。 Oracle数据库10g是第一套具有无限可伸缩性与高可用性,并可在集群环境中运行商业软件的互联网数据库,具有400多个领先的数据库功能,在集群技术、高可用性、商业智能、安全性、系统管理等方面都实现了新的突破。作为甲骨文公司长达十年的软件技术研发成果,真正应用集群技术(Real Application Clusters)能够提供近乎无限的扩充能力与整体可用性,为用户带来透明的、高速增长的集群功能。,2.Oracle10g,Oracle应用服务器10g是J2EE认证的、最轻、最快、最具伸
6、缩性的应用服务器,提供了企业门户软件、无线支持、高速缓存、轻量级J2EE引擎、商务智能、快速应用开发、应用与业务集成、Web 服务等多种应用开发功能,形成完整的电子商务应用开发和部署环境。使用了Oracle应用服务器10g的用户可以通过升级软件来取代升级硬件,大大的节省了基础设施的成本花费。 Oracle开发工具套件10g是一套完整的集成开发工具,可用于快速开发使用Java和XML语言的互联网应用和Web服务,支持任何语言、任何操作系统、任何开发风格、开发生命周期的任何阶段以及所有最新的互联网标准。,2.Oracle10g,针对不同的开发和部署环境,oracle公司将Oracle 10g分成3
7、个版本:标准版、企业版、个人版。标准版:价格相对较低,适合于小规模的单服务器环境或者大型的分布式部门级环境。企业版:针对大业务量的再线事务处理(OLTP)环境、大量数据仓库查询和其它要求比较高的互联网级应用。个人版:是企业版的单用户版,这个版本允许开发人员在单机上开发,与企业版提供的功能相似。,3.Oracle体系结构及其基本概念,3.1 Oracle总体结构完整的Oracle数据库系统通常由两个部分组成:实例(INSTANCE)和数据库(DATABASE)。实例是由一组Oracle后台进程/线程以及在服务器分配的共享内存区。数据库是由一系列物理文件的集合(数据文件,控制文件,联机日志,参数文
8、件等)。,3.1 Oracle总体结构,ORACLE实例 = 进程 + 进程所使用的内存(SGA)实例是一个临时性的东西,你也可以认为它代表了数据库某一时刻的状态!数据库 = 重做日志文件 + 控制文件 + 数据文件 + 临时文件数据库是永久的,是一个文件的集合。,3.1 Oracle总体结构,ORACLE实例和数据库之间的关系1.临时性和永久性;2.实例可以在没有数据文件的情况下单独启动 startup nomount , 通常没什么意义;3.一个实例在其生存期内只能装载(alter database mount)和打开(alter database open)一个数据库;4.一个数据库可被
9、许多实例同时装载和打开(即RAC),RAC环境中实例的作用能够得到充分的体现!,3.2 Oracle逻辑结构,Oracle逻辑结构是从用户角度来看数据库。从逻辑结构上讲,Oracle包括表空间(Tablespace)、段(Segments) 、区(Extents) 、数据块(Data Blocks) 、以及模式(Schema) 。数据库由若干个表空间组成,表空间又由若干个段组成,段由区组成,区又由数据块组成。,3.2 Oracle逻辑结构,1. 数据块数据块是Oracle用来管理存储空间的最小单元,也是执行数据库输入输出操作时的最小单位。相对应地,操作系统执行输入输出操作的最小单位为一个操作系
10、统块的大小。在操作系统中,执行I/O操作是以操作系统块为单位,而在Oracle中,执行的I/O操作以Oracle数据块为单位。,3.2 Oracle逻辑结构,2. 区区是由一系列物理上连续存放的数据块所构成的Oracle存储结构,由一个或多个数据块组成一个区。Oracle以区为单位为数据库分配存储空间,所以区是Oracle分配磁盘空间的最小单位。,3.2 Oracle逻辑结构,3. 段段是由一系列区组成的,它也不再是存储空间的分配单位,而是一个独立的逻辑存储结构。对于具有独立存储结构的对象,它的数据全部存储在保存它的段中。一个段只属于一个特定的数据库对象,每当创建一个具有独立段的数据库对象时,
11、Oracle将为它创建一个段。,3.2 Oracle逻辑结构,4. 表空间表空间(Tablespace)是数据库的逻辑划分,一个Oracle数据库由若干个表空间组成。一个表空间对应于磁盘上的一个或多个数据文件。一个Oracle数据库默认有5个表空间:System、SYSAUX、Users、Undo、Temp。,3.2 Oracle逻辑结构,4. 表空间System表空间:一个Oracle数据库至少有一个表空间,既System表空间。当数据库创建时,必须指明System表空间的数据文件的特征,如数据文件名称、大小。在System表空间中存储了Oracle自身的内部结构信息,全部的PL/SQL程序
12、的源代码和编译后的代码等。SYSAUX表空间:是System表空间的辅助表空间,许多数据库的工具和可选组件将其对象存储在SYSAUX表空间内,它是许多数据库工具和可选组件的默认表空间。,3.2 Oracle逻辑结构,4. 表空间Users表空间:用于存储用户的数据。Undo表空间:用于事务的回滚、撤销。Temp表空间:用于存放Oracle运行中需要临时存放的数据,如排序的中间结果等。除了这些默认的表空间之外,用户还可以创建属于自己的表空间。,3.3 Oracle物理结构,物理结构就是我们所熟悉的一些物理文件,这些文件是数据库的载体,数据库的所有数据,包括系统数据都存放在这些物理文件中。在这些物理文件中有:数据文件、控制文件、重做日志文件等。数据文件:包含全部数据库数据。控制文件:包含了关于数据库物理结构的重要信息,通过在加载数据库时读取控制文件,Oracle才能找到自己所需数据文件、重做日志文件等。重做日志文件:保存所有数据库事务的日志,当数据库被破坏时,用重做日志文件恢复数据库。,