Oracle数据库基础知识(华为内部培训资料).pdf
《Oracle数据库基础知识(华为内部培训资料).pdf》由会员分享,可在线阅读,更多相关《Oracle数据库基础知识(华为内部培训资料).pdf(76页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.课程课程 IL001100IL001100ORACLEORACLE数据库根底知识数据库根底知识ISSUE1.0ISSUE1.0开心开心JavaJava整理整理.v.目录课程说明1课程介绍1课程目标1相关资料1第1章 ORACLE数据库概述21.1 产品概述21.1.1 产品简介21.1.2 根本概念31.2 ORACLE系统构造41.2.2 ORACLE物理构造41.2.3 系统全局区61.2.4 进程71.3 存储管理91.3.2 逻辑构造91.3.3 表Table131.3.4 视图View161.3.5 索引Index171.3.6 同义词Synonym171.3.7 序列Sequen
2、ce181.3.8 数据库链Database Link18第2章 管理ORACLE数据库202.1 根本概念202.1.1 数据字典202.1.2 事务管理222.1.3 数据库管理员(DBA)232.1.4 ORACLE的四种状态242.2 SQL*Plus方式的ORACLE数据库启动和关闭252.2.1 启动数据库252.2.2 关闭数据库252.3 svrmgrl方式的ORACLE数据库启动和关闭272.3.1 启动数据库272.3.2 关闭数据库292.4 应用开发工具SQL*Plus312.4.1 SQL31.v.2.4.2 PL/SQL332.4.3 数据库管理工具362.5 OR
3、ACLE用户及权限管理362.5.1 ORACLE的用户管理362.5.2 ORACLE的权限管理372.6 ORACLE数据库的备份与恢复392.6.1 Export 转入程序392.6.2 Import 转入程序422.6.3 增量卸出/装入43第3章 ORACLE数据库的网络应用463.1 SQL*Net产品介绍463.2 配置客户机/效劳器构造473.2.1 配置listener.ora473.2.2 配置tnsnames.ora文件48第4章 常用任务例如514.1 如何恢复被误删的数据文件514.2 如何杀掉吊死session514.3 如何修改字符集514.4 如何追加表空间51
4、4.5 如何加大表的maxextents值524.6 如何查询无效对象524.7 怎样分析SQL语句是否用到索引524.8 怎样判断是否存在回滚段竞争534.9 怎样手工跟踪函数/存储过程执行情况544.10 多种业务使用同一数据库如何分配回滚段544.11 怎样倒出、倒入文本数据554.11.1 倒出554.11.2 倒入554.12 如何更新当前数据库日志备份方式为archive564.13 Unix环境下如何实现自动备份564.13.1 设置运行环境564.13.2 倒出数据574.13.3 异地备份574.13.4 启动备份进程584.14 怎样分析ORACLE故障59.v.v小结61
5、附录AORACLE数据字典与视图62附录B动态性能表68附录CSQL语言运算符与函数70课程介绍课程目标相关资料.课程说明课程说明本课程对应的产品版本为:Oracle 8.1.7。完本钱课程的学习后,您应该能够:掌握 ORACLE 数据库系统构造中物理构造、系统全局区和进程的概念掌握 ORACLE 数据库的存储管理知识掌握管理 ORACLE 数据库的方法了解 ORACLE 数据库的网络应用ORACLE 公司发布的相关资料。.v.第第1 1章章 ORACLE ORACLE 数据库概述数据库概述1.1 产品概述1.1.1 产品简介数据库技术产生于 60 年代末 70 年代初,到现在比拟知名的大型数
6、据库系统有 ORACLE、Sybase、Informix、DB2 IBM 公司的、Ingress、RDB、SQL Server等。ORACLE 公司于 1979 年,首先推出基于SQL 标准的关系数据库产品,可以在100 多种硬件平台上运行包括微机、工作站、小型机、中型机和大型机,支持多种操作系统。1986 年,ORACLE 推出具有分布式构造的版本5,可将数据和应用驻留在多台计算机上,而相互间的通信是透明的。1988 年,推出版本 6V6.0可带事务处理选项,提高了事务处理的速度。1992 年推出了版本 7,可带过程数据库选项、分布式数据库选项和并行效劳器选项,称为ORACLE7 数据库管理
7、系统,它释放出了开放的关系型系统的真正潜力。目前,新版本为 ORACLE9i,通用版本为ORACLE8i。版本Oracle 8i 是在企业内和因特网上开发、布署和管理应用高移动性和可伸缩性的数据库。Oracle 8i 最主要的新特性是在数据库中包括J a v a 和因特网能力。Oracle 8i 还包括能够管理和访问多媒体视频、音频、图像、文本、空间的Oracle interMedia。Oracle 8i 还包括 Oracle We b D B,这个 We b 开发环境使开发者能建立使用标准的 We b 浏览器和 Oracle 8i 数据库的动态的、数据驱动的 We b。ORACLE8i 是一
8、种 通用叫法,它包括 许多更 细版本,如 ORACLE8.1.5、ORACLE8.1.6、ORACLE8.1.7,华为公司 TELLIN U-NICA 产品使用版本ORACLE8.1.7 序列。说明:“i表示 ORACLE 数据库与 internet 的结合。ORACLE 用多达 5 个来完全识别一个版本,如“8.1.7.2.3,命名方法如下:序号第一位值8含义版本号Version,是主要的标识符,表示软件的主要版本,包含显著的新功能,例如:版本 8也标识为版本 8.0。新特征版本号New Features Release Number,该位表示新特第二位1.v.征版本级,例如:版本 8.1。
9、第三位7维护版本号Maintenance Release Number,该位表示一个维护版本级。也可能包含一些新特征,例如:版本 8.0.4、8.1.7。通用补丁级号Generic Patch Set Number,该位表示一个通用补丁级。补丁级可以跨越所有操作系统和硬件平台使用,例如:补丁级版本 8.1.7.2专用平台补丁级Platform Specific Patch Set Number,该位表示一个只能应用到特定的操作系统和硬件平台的补丁级,例如:补丁级 8.1.7.2.3。第四位2第五位3可以用如下的 SQL 语句得到 ORACLE 版本信息:SQL select*from prod
10、uct_ponent_version;1.1.2 根本概念要了解 ORACLE 数据库,需要先了解以下根本概念:数据库:是一个数据集合,我们大多数情况下讲的数据库概念不仅是指物理数据,还指内存、进程对象的组合。ORACLE 数据库都将数据存储在文件中,在其内部,数据库构造提供了数据对文件的逻辑映射,允许不同类型的数据分开存放。这些逻辑划分称为表空间。关于表空间的概念将在下文中介绍。表空间Tablespace:是数据库的逻辑划分,每个数据库至少有一个表空间system 表空间。数据文件DataFile:每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫数据文件。建立新表空间需要建立新的数据文
11、件。实例Instance:也称为效劳器server,是存取和控制数据库的软件机制,它由系统全局区SGA 和后台进程组成。ORACLE 数据库启动时,实际是启动ORACLE 实例,安装并翻开数据库。一个数据库可以被多个实例访问这是 ORACLE 的并行效劳器选项。决定实例的大小及组成的参数存储在init.ora 文件中,实例启动时需要读这个文件,并且在运行时可以由数据库管理员修改,但要在下次启动实例时才会起作用。说明:实例名字可以由环境变量ORACLE_SID 来定义。实例的 init.ora 文件名通常包含该实例的名字,格式为 initSID.ora:如一个实例的名字SID为 ora817,那
12、么 init.ora 文件名通常为 initora817.ora。.v.1.2 ORACLE 系统构造任何硬件平台或操作系统下的 ORACLE 体系构造是一样的,包括如下三个方面:(1)物理构造:数据文件,日志文件,控制文件,参数文件。(2)系统全局区SGA:共享池,数据缓冲区,日志缓冲区,字典缓冲区。(3)进程:用户进程,效劳器进程,后台进程。具体构造如图1-1所示。图1-1 ORACLE 数据库体系构造1.2.2 ORACLE 物理构造一个 ORACLE 数据库是数据的集合,被处理成一个单位。一个 ORACLE 数据库有一个物理构造和一个逻辑构造。数据库物理构造是由构成数据库的操作系统文件
13、所决定。每一个 ORACLE 数据库是由四种类型的文件组成:数据文件、日志文件、控制文件和参数文件。数据库的文件为数据库信息提供真正的物理存储。ORACLE 数据库的物理构造由四类文件组成1.数据文件数据文件是物理存储 ORACLE 数据库数据的文件,每一个 ORACLE 数据库有一个或多个物理的数据文件(data file)。一个数据库的所有数据文件包含了全部数据库数据。逻辑数据库构造如表、索引的数据物理地存储在数据库的数据文件中。数据文件有以下特征:每一个数据文件只与一个数据库联系一个表空间可包含一个或多个数据文件图1-2给出数据库、表空间及数据文件之间关系。图1-2 数据库、表空间及数据
14、文件之间关系2.日志文件每一个数据库有两个或多个日志文件(redo log file)的组,每一个日志文件组用于收集数据库日志。日志的主要功能是记录对数据所做的修改,所以对数据库做的全部修改是记录在日志中。日志文件的主要作用是保护数据库以防止故障。为了防止日志文件本身的故障,ORACLE 允许镜象日志(mirrored redo.v.log),可以在不同磁盘上维护两个或多个日志副本。日志文件中的信息仅在系统故障或介质故障时用来恢复数据库。3.控制文件每一个 ORACLE 数据库有一个控制文件(control file),它记录数据库的物理构造,包含以下信息类型:数据库名。数据库数据文件和日志文
15、件的名字和位置。数据库建立日期。为了平安起见,允许控制文件被镜象。每一个ORACLE 数据库的实例启动时,它的控制文件用于标识数据库和日志文件,当着手数据库操作时它们被翻开。当数据库的物理组成更改时,ORACLE 自动更改该数据库的控制文件。数据恢复时,也要使用控制文件。4.参数文件是一个文本文件,可直接使用文本编辑器对其内容进展修改,该文件只在建立数据库和启动实例时被访问,修改该文件后必须重启实例才生效。系统初始参数文件:init.ora生成的参数文件为:initSID.ora参数文件作用如下:设置 SGA 的大小。设置数据库的全部缺省值。设置数据库的范围。在数据库建立时定义数据库的物理属性
16、。指定控制文件名和路径。通过调整内存构造,优化数据库性能。说明:ORACLE8.1.7 版本数据库实例参数文件“initSID.ora是在安装 ORACLE 数据库过程中产生的,一般情况下不需要手工修改。.v.1.2.3 系统全局区SGASystem Global Area是 ORACLE 系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作,图1-3给出实例与 SGA 及数据库关系。图1-3 实例与 SGA 及数据库关系SGA 分为以下几个局部:(1)共享池。(2)数据块缓冲区。(3)日志缓冲区。(4)字典缓冲区。下面分别介绍:说明:SGA 的尺寸
17、应小于物理内存的一半。在 ORACLE 系统中,所有用户与ORACLE 数据库系统的数据交换都要经过SGA区。1.共享池Shared Pool由共享 SQL 区和数据字典区组成,参数 shared_pool_size 确定共享池大小,共享 SQL 区包括:(1)SQL 或 PL/SQL 语句的文本。(1)SQL 或 PL/SQL 语句的语法分析形式。(2)SQL 或 PL/SQL 语句的执行方案。说明:shared_pool_size=物理内存1520%对于 OPS 取下限。2.数据块缓冲区用于存储从数据文件中读出的数据,其大小由以下两个参数决定:DB_BLOCK_SIZE 确定数据块的大小,
18、一般为2K 或 4K。DB_BLOCK_BUFFERS 确定数据块的数目。.v1.2.4 进程.DB_BUFFERS=DB_BLOCK_BUFFERSDB_BLOCK_SIZE=物理内存 1525%,对于 OPS 取上限。该值应尽量大。3.日志缓冲区以记录项的形式备份数据库缓冲区中被修改的缓冲块,这些记录项将被写到日志文件中。日志缓冲区大小由参数LOG_BUFFER 确定4.字典缓冲区用于存放数据字典信息行。5.SGA 设置大小总原那么在设置各参数调整 SGA 大小时,应保证其小于物理内存的一半。SGA 的计算方法如下:SGA=DB_BLOCK_BUFFERSDB_BLOCK_SIZE+SHA
19、RE_POOL_SIZE+SORT_AREA_SIZE+1M+3DB_BLOCK_SIZECPUs+2PARALELL_MAX_SREVERS说明:OPS 才有最后一项。SORT_AREA_SIZE:排序区,并发用户数较多,需要排序时该值宜大。PARALELL_MAX_SREVERS:2CPU 个数4并发用户数。对单 CPU 不能修改此值。进程是操作系统中的一种机制,它可执行一系列的操作步骤在有些操作系统中使用作业(JOB)或任务(TASK)的术语来表示进程。一个进程通常有它自己的专用存储区。ORACLE 实例有两种类型:单进程实例和多进程实例。通常用的是多进程实例。单进程 ORACLE又称单
20、用户 ORACLE是一种数据库系统,一个进程执行全部 ORACLE 代码。由于 ORACLE 局部和客户应用程序不能分别以进程执行,所以 ORACLE 的代码和用户的数据库应用是单个进程执行。在单进程环境下的 ORACLE 实例,仅允许一个用户可存取。例如在 MS-DOS 上运行 ORACLE。.v.多进程 ORACLE 实例又称多用户 ORACLE使用多个进程来执行 ORACLE的不同局部,对于每一个连接的用户都有一个进程。在多进程系统中,进程分为两类:用户进程和 ORACLE 进程。当一用户运行一应用程序,如 PRO*C程序Pro*C 是一种开发工具,它把过程化语言 C 和非过程化语言 S
21、QL 最完善地结合起来,具有完备的过程处理能力,又能完成任何数据库的处理品任务,使用户可以通过编程完成各种类型的报表。或一个 ORACLE 工具如SQL*PLUS,为用户运行的应用建立一个用户进程。ORACLE 系统进程又分为效劳器进程和后台进程。1.效劳器进程用于处理用户请求的进程。处理过程如下:(1)分析 SQL 命令并生成执行方案。(2)从数据缓冲区或磁盘中读取数据。(3)将执行结果返回给用户。2.后台进程为所有数据库用户异步完成各种任务,主要包括如下进程ora817 表示实例名:ora_reco_ora817恢复进程:该进程是在具有分布式选项时所使用的一个进程,自动地解决在分布式事务中
22、的故障。一个结点 RECO 后台进程自动地连接到包含有悬而未决的分布式事务的其它数据库中,RECO 自动地解决所有的悬而不决的事务。任何相应于已处理的悬而不决的事务的行将从每一个数据库的悬挂事务表中删去。当一数据库效劳器的 RECO 后台进程试图建立同一远程效劳器的通信,如果远程效劳器是不可用或者网络连接不能建立时,RECO 自动地在一个时间间隔之后再次连接。RECO 后台进程仅当在允许分布式事务的系统中出现,而且DISTRIBUTED TRANSACTIONS 参数是大于 0。ora_dbw0_ora817数据库写进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个 ORACLE
23、 后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏,此进程的主要任务是将“弄脏的缓冲区写入磁盘,使缓冲区保持“干净。进程监控进程:该进程在用户进程出现故障时执行进程恢复,负责清理内存储区和释放该进程所使用的资源。例:它要重置活动事务表的状态,释放封锁,将该故障的进程的ID 从活动进程表中移去。PMON 还周期地检查调度进程DISPATCHER和效劳器进程的状态,如果已死,那么重新启动不包括有意删除的进程。PMON 有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。日志写进程:该进程将日志缓冲区写入磁盘上的一个日志文件,它是负责管理日志缓冲区的一个 ORACLE 后台进程。o
24、ra_pmon_ora817ora_lgwr_ora817.v.ora_ckpt_ora817检查点写进程:该进程在检查点出现时,对全部数据文件的标题进展修改,指示该检查点。系统监控进程:该进程实例启动时执行实例恢复,还负责清理不再使用的临时段。在具有并行效劳器选项的环境下,SMON对有故障 CPU 或实例进展实例恢复。SMON 进程有规律地被呼醒,检查是否需要,或者其它进程发现需要时可以被调用。ora_smon_ora8171.3 存储管理前面已经提到过,ORACLE 数据库都将数据存储在数据文件中,在其内部,数据库构造提供了数据对数据文件的逻辑映射,允许不同类型的数据分开存放。这些逻辑划分
25、称为表空间,图1-4给出了详细的 ORACLE 数据库存储构造图。图1-4 ORACLE 存储构造图对于用户,通常关心的是 ORACLE 的逻辑构造,是在逻辑上是如何组成的,是如何存储数据的,下面详细介绍。1.3.2 逻辑构造ORACLE 的逻辑构造是由一个或多个表空间组成,一个数据库划分为一个或多个逻辑单位,该逻辑单位称为表空间tablespace。一个表空间可将相关的逻辑构造组合在一起。一个表空间由一组分类段组成。一个段由一组范围组成。一个范围由一批数据库块组成。一个数据库块对应一个或多个物理块。每一个 ORACLE 数据库包含有一个名为 SYSTEM 的表空间,在数据库建立时自动建立。在
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 数据库 基础知识 华为 内部 培训资料
限制150内