oracle数据库应用与开发_第1页
oracle数据库应用与开发_第2页
oracle数据库应用与开发_第3页
oracle数据库应用与开发_第4页
oracle数据库应用与开发_第5页
已阅读5页,还剩192页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.:.;数据库系统教案目录目录专题一Oracle入门.11.教学目的.12.任务义务.13.相关实际知识.13.1Oracle10g的安装和卸载.13.2用NetConfigurationAssistant配置客户端效力名.103.3启动Oracle效力.163.4认识Oracle常用工具.183.5创建数据库和表空间.243.6Oracle中的用户管理.324.实验.345.课后作业.35专题二锁和表分区.361.教学目的.362.任务义务.363.相关实际知识.363.1运用行级锁和时间戳来保证数据完好性.363.2运用表级锁.403.3运用表分区.434.提高.495.实验.506.课后

2、作业.50专题三SQL语句和SQL函数.52教学目的.52案例一Oracle数据库中的DDL、DML和DCL.531.教学目的.532.任务义务.533.相关实际知识.534.实验.675.课后作业.67案例二Oracle数据库中的函数及子查询.681.教学目的.682.任务义务.683.相关实际知识.683.1综合运用各种函数.683.2字符函数.783.3数字函数.813.4日期函数.843.5转换函数.854.实验.86-I-目录5.课后作业.86专题四数据库对象.871.教学目的.872.任务义务.873.相关实际知识.873.1运用同义词.873.2运用序列实现自增主键.893.3运

3、用视图.923.4运用索引加快表的查询.994.实验.1085.课后作业.108专题五PL/SQL编程.1101.教学目的.1102.任务义务.1103.相关实际知识.1103.1用PL/SQL块来查询表内信息.1113.2用条件控制语句来实现为员工加薪.1163.3运用循环控制语句.1183.4用顺序控制语句实现更新员工工资.1193.5PL/SQL异常处置机制的运用.1204.提高.1245.实验.1256.课后作业.126专题六游标.1271.教学目的.1272.任务义务.1273.相关实际知识.1273.1运用游标属性.1273.2用游标生成员工报表.1293.3用游标生成分部门员工报

4、表.1333.4用游标更新员工工资.3.5运用REF游标动态前往结果集.4.提高.5.实验.1406.课后作业.140专题七过程、函数和程序包.1411.教学目的.1412.任务义务.1413.相关实际知识.1413.1无参的显示“HelloWorld!的过程.1413.2用带输入参数的过程向表中插入记录.1423.3用带输出参数的过程查询表中的记录数.144-II-目录3.4运用带输入输出参数的过程查询记录能否存在.1443.5运用函数查询部门信息.1453.6运用程序包封装过程和函数.1474.提高.1504.1用过程前往结果集.1504.2在企业管理器中管理过程、函数和程序包.1515.

5、实验.1536.课后作业.153专题八触发器.1551.教学目的.1552.任务义务.1553.相关实际知识.1553.1BEFORE行级触发器.1563.2AFTER行级触发器.1603.3BEFORE语句级触发器.1613.4AFTER语句级触发器.1623.5INSTEADOF触发器.1643.6DDL触发器.1673.7数据库启动和封锁触发器.1683.8用户登录和退出触发器.1693.9管理触发器.1714.实验.1725.课后作业.173专题九数据库高级管理.1741.教学目的.1742.任务义务.1743.相关实际知识.1743.1用户和角色的创建和运用.1743.2调整数据库从

6、非归档方式到归档方式.1793.3数据导入导出.1844.实验.1935.课后作业.193-III-专题一Oracle入门专题一Oracle入门1.教学目的1.1了解Oracle10g的安装和卸载1.2学会配置Oracle客户端1.3学会运用Oracle常用工具:企业管理器、iSQL*Plus和SQL*Plus1.4掌握创建数据库和表空间的方法,了解Oracle的体系构造1.5掌握Oracle中的根本用户管理2.任务义务2.1在Windows环境下安装和卸载Oracle10g2.2配置Oracle客户端2.3学习运用Oracle常用工具:企业管理器、iSQL*Plus和SQL*Plus2.4创

7、建数据库和表空间2.5创建用户并为之授权,修正用户口令,删除用户3.相关实际知识3.1Oracle10g的安装和卸载1.在Windows环境下,将Oracle10g安装盘放入光盘驱动器,安装程序会自动运转,显示如如图1-1所示的窗口。实际知识:Oracle简介Oracle公司,中文翻译成甲骨文公司,是全球最大的信息管理软件及效力供应商。该公司成立于1977年,总部位于美国加州的红木海岸城。目前,Oracle产品覆盖了大、中、小型机等几十种机型,Oracle数据库已成为世界上运用最广泛的数据库系统之一,Oracle公司已成为这一领域的领军者与规范制定者。经过30多年的不懈开展,Oracle数据库

8、曾经可以运用于从支持成千上万用户的分布式联机事务处置系统到拥有数万亿字节的用于决策支持数据仓库的广泛领域。Oracle公司推出的Oracle数据库系一致直占据着数据库市场龙头的位置。Oracle公司敢为人先,一直引领着数据库开展的潮流。在号称第三代互联网技术“网格计算技术蓬勃兴起之时,Oracle公司推出了最新的支持网格环境的数据库处理方案Oracle10g,其中的g代表网格grid。-1-Oracle数据库教案_Oraclel0g数据库是第一个为企业级网格计算而设计的数据库。Oraclel0g在Oracle9i的根底上,提供了针对网格计算更多的特性,如更大的规模、可管理性、高可用性及业务智能

9、等。在过去的几年中,Oracle数据库环境已成为世界上最流行的数据库平台之一。据有关资料所述,目前Oracle曾经占领了46以上的数据库市场份额,并且有进一步扩展的趋势。在高端数据库领域,Oracle更是无所匹敌,因此,掌握Oracle数据库技术是宽广IT人员的一项根本要求。虽然Oracle数据库的主要目的照旧是效力于那些要求海量数据处置才干的大型公司或政府部门,但Oracle曾经推出了许多适宜较小组织的新产品,如PersonalOracle等。在各种操作系统平台上,都有相应的数据库产品。将Oracle集成到各种类型的企业和组织的方案正在进展中,并曾经获得了宏大的成就,这意味着不只是大企业需求

10、O-racle数据库,宽广中小企业同样需求Oracle数据库。图1-1光盘自动安装界面2.单击“开场安装,启动安装导游,进入“选择安装方法界面,如图1-2所示。-2-专题一Oracle入门图1-2选择安装方法3.可以选择“根本安装或“高级安装,我们选“根本安装,同时选中创建启动数据库,输入创建的全局数据库能独一标识一个数据库的称号,Oracle10g之前的版本要求全局数据库名为数据库名数据库域名,Oracle10g对此没有要求的称号例如“orcl和口令。图1-3选择安装类型-3-Oracle数据库教案_留意:Oracle10gRelease2规定,口令不能为“CHANGE_ON_INSTALL

11、,“MANAGER,“DBSNMP,“SYS-MAN。这些口令分别为“SYS“SYSTEM“SYSMAN“DBSNMP四个数据库用户的默许口令。实际知识:Oracle10g数据库中心产品:Oracle数据库10g规范版1OracleDatabase10gStandardEditionOneOracle数据库10g规范版OracleDatabase10gStandardEditionOracle数据库10g企业版OracleDatabase10gEnterpriseEditionOracle数据库10g个人版OracleDatabase10gPersonalEdition普通的部门级别的运用,比

12、如一个部门的考勤管理,规范版足够用,只需大型的企业级运用,比如一个大型制造企业的ERP系统,需求数据分布式的存储和计算,才选择企业版,个人版本普通个人学惯用。4.选择“安装类型。Oracle10gRelease2的安装类型可为:企业版、规范版和个人版,可根据需求进展选择,默以为企业版,单击“下一步按钮,开场预备安装。图1-4预备安装接着安装程序自动进展“产品特定的先决条件检查,如图1-5所示。5.安装程序自动对当前系统进展检查,检查其能否符合安装要求,只需最终出现“检查完成。此次检查的总体结果为:经过如图1-5,才干继续安装,否那么检查相应的检查项,逐一矫正,直到“总体结果为:经过。单击“下一

13、步按钮,继续安装,显示“概要对话框,如图1-6所示。-4-专题一Oracle入门图1-5产品特定的先决条件检查图1-6安装概要-5-Oracle数据库教案_6.单击“安装按钮,OracleUniversalInstaller将安装Oracle系统。在安装过程中,用户可以看到Oracle创建数据,以及对一些效力进展配置,如图1-7、图1-8、图1-9所示。图1-7安装过程图1-8配置特定效力-6-专题一Oracle入门图1-9复制数据库文件、创建并启动Oracle实例7.当安装完成后,安装导游将弹出如图1-10所示的窗口,显示曾经安装的数据库信息。图1-10已安装数据库信息8.单击图1-10中的

14、“口令管理,弹出如图1-11“口令管理窗口也可以不点击“口令管理,直接点“确定进入到图1-12的安装终了界面,这样的话SYS、SYSTEM、DB-SNMP、SYSMAN用户的口令都是在图1-2中设置的口令,且SCOTT用户默许是被锁定的。-7-Oracle数据库教案_图1-11口令管理9.拖动滚动条找到SCOTT用户,单击SCOTT用户“能否锁定帐户列上的蓝钩,解除对SCOTT用户的锁定由于在本书中许多的案例都是在SCOTT用户下完成的,所以需求为其解锁,在实践的安装过程中,用户可以根据实践情况解锁或不解锁,为SYS和SYSTEM用户设置口令后单击“确定,安装程序将前往到图1-10的窗口。10

15、.单击图1-10中的“确定,进入“安装终了窗口,如图1-12所示。图1-12安装终了-8-专题一Oracle入门11.单击“退出,退出安装程序。至此,Oracle10g安装终了。“12.下面开场演示如何卸载Oracle10g。在Windows的“开场菜单中依次选择:开场“程序“OracleOraDb10g_home1“OracleInstallationProducts“UniversalInstaller,将显示如图1-13所示的窗口。图1-13卸载产品13.单击“卸载产品,出现如图1-14所示的窗口。-9-Oracle数据库教案_图1-14产品清单14.展开节点,选定要卸载的工程,然后单击

16、“删除,出现如图1-15所示的“确认窗口,显示选定的卸载工程。图1-15卸载确认15.假设单击“是,程序执行终了即卸载选定的工程,在此只做演示,所以请点“否退出卸载产品。3.2用NetConfigurationAssistant配置客户端效力名1.在Oracle安装完成之后,客户端要和数据库效力器建立衔接,必需进展网络衔接配置。在Windows的“开场菜单中依次选择:“开场“程序“OracleOraDb10g_hom-e1“配置和移植工具“NetConfigurationAssistant,会出现如图1-16所示的窗口。图1-16欢迎运用-10-专题一Oracle入门实际知识:网络衔接配置Or

17、acle数据库基于“客户端/效力器Client/Server系统构造,即客户端系统和效力器系统。效力器系统执行数据库相关的一切活动,客户端系统执行与用户交互的活动,它们又被称为前端系统和后端系统。客户端和效力器可以是一台机器,也可以是经过网络衔接起来的不同操作系统、不同硬件平台的机器。客户端运用程序向数据库效力器发送恳求并接纳信息,以此种方式与数据库进展交互,充任用户与数据库之间的接口。数据库效力器对数据库进展管理,处置多个用户的访问,它可以在一切客户端运用程序访问数据的过程中,全面地坚持数据库的完好性,并控制数据库访问权限和其它平安性需求。在Oracle安装完成之后,客户端要和数据库效力器建

18、立衔接,必需进展网络衔接配置,包括效力器端配置和客户端配置。即效力器端配置监听器和客户端配置效力名。可以用NetConfigurationAssistant或NetManager工具,甚至可以直接修正相关的参数文件。首先,效力器端的监听配置包括监听协议、端口号以及其它相关信息的参数。监听器配置存储在一个名叫listener.ora的参数文件中,该文件在Windows环境下能够的位置是“C:oracleproduct10.2.0db_1NETWORKADMIN。其实我们可以不本人配置监听器,由于在安装Oracle的时候系统曾经为我们配置好了一个名叫“LISTENER的监听器,端口号是1521,它

19、对应的效力是OracleOraDb10g_-home1TNSListener。然后,开场配置客户端效力名。配置效力名的目的是让客户端经过效力名来与远程或本地的监听器建立衔接。客户端用它向效力器发送衔接恳求。要在一台没有安装数据库效力器的机器上衔接Oracle效力器,必需单独安装Oracle客户端软件,在效力器上那么自动包含了客户端软件。安装Oracle时用户指定了一个全局数据库名,即SID称号。Oracle用此SID称号在效力器端自动创建了一个效力名,如图1-18中的“ORCL因此,当效力器和和客户端在一台机器上时,可以不配置效力名而直接运用系统自动创建的效力名。在客户端创建效力名时,需求指定

20、效力器端效力名、网络协议、主机名和监听器端口等。这些配置信息都存储在tnsnames.ora文件中,保管位置与listener.ora一样。2.在窗口中选择“本地Net效力名配置,点击“下一步,进入Net效力名配置,出现如图1-17所示的窗口。-11-Oracle数据教案_图1-17效力名配置3.选中“添加单项选择按钮,点击“下一步,出现如图1-18所示的窗口。图1-18效力名4.在效力名文本框中输入远程数据库的效力名,如“ORCL,单击“下一步,出现“请选择协议窗口,如图1-19所。-12-专题一Oracle入门图1-19请选择协议5.选择“TCP并单击“下一步,出现“TCP/IP协议窗口,

21、如图1-20所示。图1-20TCP/IP协议6.在文本框中输入数据库效力器的主机名“HANDSONSERVER或效力器的IP地址,选择“运用规范端口号1521,单击“下一步按钮,出现如图1-21所示的“测试窗口。-13-Oracle数据库教案图1-21测试7.选择“是,进展测试,单击“下一步按钮,出现如图1-22所示的窗口,提示“测试胜利。图1-22正在衔接-14-专题一Oracle入门留意:假设提示“测试未胜利,请点击“更改登陆,改动SYSTEM用户的登陆口令为安装时设置的口令。8.在图1-22所示的窗口中单击“下一步按钮,出现如图1-23所示的窗口。图1-23Net效力名9.输入要创建的本

22、地效力名,如“MYSERVER,单击“下一步按钮,出现如图1-24所示的窗口。-15-Oracle数据库教案图1-24能否配置另一个Net效力名10.选择“否,单击“下一步按钮,出现如图1-25所示的窗口,提示“Net效力名配置终了!。图1-25效力名配置终了11.单击“下一步按钮,在出现的窗口中单击“完成,终了本地效力名的配置。3.3启动Oracle效力1.在Windows的“开场菜单中依次选择:“设置“控制面板,在翻开的窗口中选择“管理工具,在双击翻开后的窗口中选择“效力,双击翻开,出现“效力窗口,查看-16-专题一Oracle入门其中以“Oracle开头的效力,如图1-26所示。图1-2

23、6Oracle效力2.假设图1-26中的以下几项效力OracleServiceORCL、OracleOraDb10g_home1TNSList-ener、OracleOraDb10g_home1ISQL*Plus和OracleDBConsoleorcl的形状不是“已启动,那么选中该项效力,在单击右键后出现的菜单中选择“启动,以启动该项效力;在某项效力的右键菜单中选择“属性,可翻开“属性窗口,在其“常规选项中可以设置该项效力的“启动类型为“自动、“手动或“禁用;完成后封锁窗口退出。留意:在实践运用中,并非一切这些Oracle效力都必需启动,每项效力的功能请参见相关实际知识部分。实际知识:Wind

24、ows中的Oracle效力Oracle数据库作为一项效力呈现给客户,即数据库执行客户端提交的义务。在Wind-ows中Oracle的每个实例都作为一项效力来启动。效力是在Windows注册表中注册的可执行过程,由Windows操作系统管理。Oracle效力可以手动启动,也可配置为在计算机启动时自动启动,无需用户干涉,从而简化数据库的启动过程。Oracle效力的称号通常是一个包含全局数据库称号和OracleHOME名的字符串。常用的Oracle效力有:1.OracleHOME_NAMETNSListener效力如图1-26中的OracleOraDb10g_home1TNSListener效力。此

25、效力是Oracle的监听程序。要衔接到数据库效力器,客户端必需先衔接到驻留在数据库效力器上的监听进程。监听器接纳从客户端发出的恳求,然后将恳求传送给数据库效力器。一旦建立了衔接,客户端和数据库效力器就可以直接通讯了。监听器监听并接受客户端的衔接恳求。假设监听器未启动,客户端将无法衔接到数据库效力器。2.OracleServiceSID效力如图1-26中的OracleServiceORCL效力。此实例是为名为SID系统标识符的数-17-Oracle数据库教案据库实例创建的。Oracle实例由一个系统标识符SID独一地标识,以区别于此计算机上的其它任何实例。每次新创建一个数据库,系统会自动为该数据

26、库的实例创建一个效力。假设此效力未启动,数据库客户端运用程序衔接到数据库效力器时就会出现错误。3.OracleHOME_NAMEiSQL*Plus效力如图1-26中的OracleOraDb10g_home1iSQL*Plus效力。要运用iSQL*Plus,必须启动该效力。4.OracleDBConsoleOracle_SID效力如图1-26中的OracleDBConsoleorcl效力。要运用企业管理器必需启动该效力。每次新创建一个数据库,也会新创建一个此项效力。3.4认识Oracle常用工具3.4.1企业管理器“1.翻开阅读器,在地址栏中输入安装过程中图1-12中以“em结尾的URL地址::

27、/houtony:1158/em,出现如图1-27所示的登录界面假设是第一次登陆企业管理器,会出现“OracleDatabase10g答应授予信息的网页,点击网页右下角的“我接受按钮,即可进入到图1-27所示的界面。图1-27企业管理器登录2.输入的用户名和口令,例如“SYS和“SYS,选择衔接身份为“SYSDBA,点击“登录,进入Oracle企业管理器的主界面,如图1-28所示。-18-专题一Oracle入门图1-28企业管理器主界面3.分别点击“主目录、“性能、“管理、“维护四个主菜单,查看企业管理器的主要功能。实际知识:Oracle企业管理器OracleEnterpriseManager

28、,简称OEM,从10g开场,可以用阅读器的方式来访问企业管理器。它是Oracle的集成管理平台,可以管理整个Or-acle环境,让用户可以以可视化的方式完成管理数据库对象、监视效力器的实时性能、对数据库进展备份和恢复、完成作业系统等一系列的功能。在Oracle10g安装完成后,开场时只需SYS和SYSTEM用户才干登录到OEM,且S-YS用户只能以SYSDBA或SYSOPER身份,SYSTEM用户只能以NORMAL身份,其他用户必须经过相应的授权后才干登录。3.4.2SQL*Plus工具1.在Windows的开场菜单中选择“运转,在“翻开文本框中输入“cmd后,点击“确定按钮,进入到命令控制台

29、形状。2.在Dos提示符下输入命令“sqlplus/nolog,按回车后可进入到字符界面的SQL*Plus,如图1-29所示。-19-Oracle数据库案例教程_教师用书图1-29进入到字符界面的SQL*Plus3.在SQL提示符下输入命令“connscott/tiger;,按回车键系统提示“已衔接后,再输入命令“SELECT*FROMdept;,再按回车,执行结果如图1-30所示。图1-30在字符界面的SQL*Plus中执行查询命令4.在SQL提示符下输入“exit命令,按回车后退出SQL*Plus,回到Dos形状。5.在Dos提示符下输入“sqlplusw后,按回车,或者在Windows的

30、开场菜单中依次选择“程序“OracleOraDb10g_home1“运用程序开发“SQL*Plus,都会弹出如图1-31所示的图形界面的SQL*Plus登录界面。-20-专题一Oracle入门图1-31图形界面的SQL*Plus登录6.输入用户名“SCOTT和口令“TIGER,在主机字符串文本框中输入本地效力名“MYSERVER,点击“确定,可进入到图形界面的SQL*Plus的SQL提示符形状。7.在SQL提示符下输入命令“SELECT*FROMdept;按回车后,运转结果如图1-32所示。图1-32图形界面的SQL*Plus中执行查询实际知识:SQL*Plus是Oracle最常用的工具之一,

31、可用于接受和执行SQL语句和PL/SQL块。它有两种界面:字符界面和图形界面。运用SQL*Plus可以完成翻开和封锁数据库、建立与数据库的衔接、查看协助 信息、生成简单报表,以格式化的方式输出查询结果、查询数据字-21-Oracle数据库案例教程_教师用书典、向用户提示信息并接受用户输入等数据库操作。3.4.3iSQL*Plus工具1.在阅读器地址栏中输入安装过程中图1-12所示的以“isqlplus结尾的URL地址:“houtony:5560/isqlplus,进入到如图1-33所示的iSQL*Plus的登录页面。图1-33iSQL*Plus登录2.输入用户名“SCOTT和口令“TIGER,

32、在衔接标识符文本框中输入图1-33中的本地效力名“MYSERVER,点击“登录,进入到如图1-34所示的iSQL*Plus主页面。-22-专题一Oracle入门图1-34iSQL*Plus主页面3.在文本框中输入“SELECT*FROMdept;,点击“执行,会查询出dept表的信息并显示在页面下部,如图1-35所示。图1-35iSQL*Plus查询结果-23-Oracle数据库案例教程_教师用书4.封锁阅读器。实际知识:iSQL*Plus也是Oracle的常用工具,可以用来完成几乎一切SQL*Plus能完成的任务。该工具的优势在于能经过阅读器访问,还可以自动将查询的结果格式化为简单报表。3.

33、5创建数据库和表空间数据库和表空间是Oracle体系构造的重要组件,创建步骤如下:实际知识:Oracle的体系构造数据库的体系构造是指数据库的组成、任务过程与原理,以及数据在数据库中的组织和管理机制。Oracle效力器Oracle效力器由Oracle数据库和Oracle实例组成。Oracle数据库是一个数据的集合,它在物理上是由一系列的文件组成,在逻辑上是由一系列的逻辑组件构成的。Orac-le实例是后台进程与内存构造的集合。Oracle组件概述Oracle体系构造中包含一系列组件,在图1-36中列出了Oracle中的主要组件。下面分别引见这些主要组件及Oracle中的一些重要概念。图1-36

34、Oracle体系构造的主要组件-24-专题一Oracle入门1.实例后台进程与内存构造的集合称为Oracle实例。假设要访问数据库中的数据,就必需启动一个实例,也就是说,只需经过实例才干访问到数据库中的数据。实例启动时将分配一个系统全局区SGA并启动一系列的后台进程。在任何时候,一个实例只能翻开并运用一个数据库。反之,一个数据库可以同时被多个实例翻开。2.会话会话是用户与Oracle效力器的单个衔接。当用户与效力器建立衔接时创建会话。而当用户与效力器断开衔接时封锁会话。当一个数据库用户同时用多个不同的运用程序或从多个终端衔接效力器时,那么为该用户创建多个并行会话。3.内存Oracle的内存构造

35、中包括以下两个主要的内存区域:系统全局区SGA:实例启动时分配该内存区,是Oracle实例的一个根本组件。程序全局区PGA:效力器进程启动时分配该内存区。PGAProgramGlobeArea是在用户进程衔接到数据库并创建一个会话时自动分配的,该区内保管每个与Oracle数据库衔接的用户进程所需的内存。PGA为非共享区,只能由单个进程运用,当一个会话终了后,PGA释放。SGASystemGlobeArea,又称共享全局区,它用来存储数据库信息,并由多个数据库进程共享。当数据库实例启动时,SGA的内存被自动分配。SGA是数据库中占用效力器内存最大的一个区域,同时也是影响数据库性能的一个重要目的。

36、SGA按其作用不同,可分为共享池、数据缓冲区、日志缓冲区等。共享池:共享池是对SQL、PL/SQL程序进展语法分析、编译和执行的内存区域,它由库缓存和数据字典缓存组成,其中,库缓存含有最近执行的SQL、PL/SQL语句的信息,数据字典缓存中含有从数据字典中得到的表、索引、字段和权限等信息。假设共享池太小,那么运转SQL、PL/SQL程序所需的时间就会较长,数据库的性能就会遭到影响。当用户执行一个查询语句时,Oracle系统首先在数据字典缓存中查看要查询的表、字段等在数据库中能否存在,用户能否有相应权限,假设有再在库缓存中查找能否存在该语句的信息,假设存在那么直接执行,假设不存在再对该查询语句进

37、展编译和执行。数据缓冲区:数据缓冲区用于存储从磁盘数据文件中读入的数据,由一切用户共享。数据被修正时,首先要从数据文件中取出,存储于数据缓冲区中,修正的数据、插入的数据都被存储于数据缓冲区,当修正完成或满足其它条件时,数据才被写入到数据文件中。Oracle效力器进程在处置一个查询时,首先查找数据缓冲区中能否存在所需的数据块。假设没有找到,效力器进程才会去从数据文件中读取信息,并保管到数据缓冲区中。当以后再有进程要读取这些块时,就不用再从数据文件中读取,而是直接从数据缓冲区中读了,这样就提高了读取速度。因此,数据缓冲区的大小对数据库的读取速度有直接影响。日志缓冲区:一切对数据库的修正先记录到日志

38、缓冲区,当缓冲区中的数据到达一定数量时,再由日志写入进程LGWR把日志数据写入到日志文件中。数据更改能够INSERT、UPDATE、DELETE、CREATE、ALTER和DROP等操作。相对于数据缓冲区,日志缓冲区对数据库性能的影响较小。-25-Oracle数据库案例教程_教师用书4.进程在Oracle的体系构造中主要有以下几种进程:用户进程:当数据库用户恳求衔接效力器时启动。当数据库用户运转一个运用程序预备向数据库效力器发送恳求时,即创建了用户进程,如用户启动SQL*Plus时,系统自动建立了一个用户进程。用户进程不能直接与数据库交互,而必需借助于效力器进程。效力器进程:在Oracle实例

39、启动时启动。它用于处置衔接到该实例的用户进程的恳求,当用户建立与数据库的衔接时,即产生效力器进程。效力器进程和用户进程通讯并为所衔接的用户恳求效力。效力器进程直接与Oracle数据库交互,实现调用和前往结果。效力器进程可以仅处置一个用户进程的恳求,也可以处置多个用户进程的恳求。后台进程:在Oracle数据库中,为了使系统性能更好和协调多个用户,实例系统中使用了一些附加进程,被称为后台进程。这些后台进程存在于操作系统中,在实例启动时自动启动。Oracle常用的后台进程有:进程监控PMON:主要作用是在用户进程出现缺点时执行进程恢复。系统监控SMON:主要完成以下义务:在实例启动时执行实例恢复;整

40、理数据文件的自在空间;释放不再运用的暂时段。数据写入进程DBWR:执行以下义务:管理数据缓冲区,以便用户进程能找到空闲的缓冲区;将一切修正了的缓冲区的数据写入数据文件;运用LRU最近最少使用算法将最近运用过的块保管在内存中;经过延迟写来优化磁盘I/O读写。日志写入进程LGWR:以后台进程担任将日志缓冲区的数据写入日志文件。数据库正在运转时,假设对数据进展修正,那么产生日志信息,日志信息首先产生于日志缓冲区中。此缓冲区按照“先进先出的原那么进展操作,当日志信息到达一定数量时,由LGWR进程将日志数据写入到日志文件。检查点CKPT:保证一切修正正的数据库缓冲区内的数据都被写入到数据库文件,在给定的

41、时间内,检查点完成后,CKPT进程更新数据文件头和控制文件,保管检查点信息,以保证数据库的同步。这样做主要是为了在数据库恢复时只需求提供从上一个检查点以来的修正,确定开场恢复数据的位置,即称为检查点。归档进程ARCH:当数据库运转在归档日志方式时,才会启动该进程。在日志写满时将日志信息写到磁盘或磁带,用于磁盘缺点时的数据库恢复。在一个日志文件写满以后,Oracle效力器就开场将数据写入到下一个日志文件,此过程被称为日志切换。Oracle数据库有两种运转方式,即归档日志方式和非归档日志方式。在非归档日志方式下,日志切换时直接覆盖以前的文件,不产生归档日志。在归档日志方式下,在日志切换之前,ARC

42、H进程会对已写满的日志文件进展存档。Oracle数据库的物理组件和逻辑组件Oracle数据库的物理文件主要有三类:数据文件、控制文件和日志文件。其它还有归档日志文件、参数文件和口令文件等。数据文件:是用于存储数据库数据的文件,如表、索引数据等都存储在数据文件中。每个Oracle数据库都有一个或多个数据文件10g中默许有5个,一个数据文件只能与一个数据库相关联。-26-专题一Oracle入门控制文件:是记录数据库物理构造的二进制文件,Oracle数据库根据它来查找物理文件的位置,它包含维护和验证数据库完好性的必要信息。每个Oracle数据库都有一个或多个控制文件10g中默许有3个。日志文件:又被

43、称为联机日志文件或重做日志文件,用于记录对数据库进展的修正信息,对数据库所做的全部修正都被记录到日志中。每个Oracle数据库都有一个或多个日志文件10g中默许有3个。日志文件主要用于在数据库出现缺点时实施数据恢复。2.逻辑组件从逻辑的角度来分析,Oracle数据库的逻辑构造主要包括表空间、段、区、数据块和方式等。它们的组成关系如图1-37所示。图1-37数据库的逻辑构造表空间TABLESPACE:数据库可以划分为一个或多个逻辑单位,该逻辑单位被称为表空间,它是数所库中最大的逻辑单位。每个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间关联,这是逻辑上和物理上的一致。数据库管理员可

44、以创建假设干个表空间,创建表空间时可以指定数据文件及其要分配的磁盘空间的大小。在每个数据库中都有一个名为SYSTEM的表空间,即系统表空间,它在创建数据库或安装数据库时自动创建的,用于存储系统的数据字典表、系统程序单元、过程、函数、包和触发器等,也可以用于存储用户表、索引等对象。段SEGENT:存在于表空间中,是包含于表空间中的一种指定类型的逻辑存储构造,由一组区组成。按照段中所存数据的特征以及优化系统性能的需求,将段分为4类:数据段、索引段、回退段、暂时段。区EXTENT:是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区为段分配空间,它由延续的数据块组成。当段创建时,它至少包含

45、一个区。当段中一切空间已完全运用时,系统自动为该段分配一个新区。区不能跨数据文件存在,只能存在于一个数据文件中。数据块DATABLOCK:是数据库中最小的数据组织单位与管理单位,是Oracle服务器所能分配、读取或写入的最小存储单元。Oracle效力器以数据块为单位管理数据文件的存储空间。数据块的取值范围在2KB4KB之间,10g中默许大小是8K。方式SCHEMA:是对用户所创建的数据库对象的总称,在Oracle中任何数据库对象都属于一个特定用户,一个用户及其所拥有的对象称为方式。一个用户与一样称号的方式相关联,因此,方式又称为用户方式。1.在Windows的开场菜单中依次选择“程序“Orac

46、leOraDb10g_home1“配置和移植工具“DatabaseConfigurationAssistant,将弹出如图1-38所示的窗口直接在Dos中执行命令“dbca,也可进入到该窗口。-27-Oracle数据库案例教程_教师用书图1-38选择操作2.选择“创建数据库,点击“下一步,出现如图1-39所示的“数据库模板窗口。图1-39数据库模板3.选择“普通用途的数据库模板,点击“下一步,出现如图1-40所示的“数据库标识窗口。-28-专题一Oracle入门图1-40数据库标识4.输入全局数据库名如“MYDB,在SID文本框中自动出现的称号与全局数据库名相同,也可以更改SID称号使其不同,

47、点击“下一步,出现如图1-41所示的“管理选项窗口。图1-41管理选项5.选择“运用EnterpriseManager配置数据库,点击“下一步,出现如图1-42所示的“数据库身份证明窗口。-29-Oracle数据库案例教程_教师用书图1-42数据库身份证明6.选择“一切帐户运用同一口令或“运用不同的口令,输入口令和确认口令后,点击“下一步,出现如图1-43所示的“网络配置窗口。图1-43网络配置-30-专题一Oracle入门7.选择“将此数据库注册到一切监听程序后点击“完成,出现如图1-44所示的窗口,让用户确认要创建的数据库的详细资料。图1-44操作确认8.点击“确定,出现如图1-45所示的

48、窗口,开场创建数据库。图1-45创建数据库-31-Oracle数据库案例教程_教师用书9.数据库创建完成后,会弹出如图1-46所示的窗口,向用户提示数据库创建完成的信息,点击“退出,完成数据库的创建。图1-46数据库创建完成10.翻开SQL*Plus,在SQL提示符下,输入“CONNSYS/SYSMYDBASSYSDBA命令,以SYSDBA身份登录到新创建的数据库,再输入以下的命令创建表空间:CREATETABLESPACEmytablespaceDATAFILED:ORACLEPRODUCT10.2.0ORADATAMYDBMYTABLESPACE.DBFSIZE10MAUTOEXTENDO

49、N;实际知识:创建表空间语法如下:CREATETABLESPACEtablespace_nameDATAFILEfile_nameSIZEint_numK|MAUTOEXTENDON|OFF;其中:tablespace_name是要创建的表空间的称号,DATAFILE指定组成表空间的一个或多个数据文件当有多个数据文件时运用逗号分隔,file_name是数据文件的途径及称号,SIZE指定文件的大小,AUTOEXTEND子句用来启用或禁用数据文件的自动扩展。11.系统提示“表空间已创建后,翻开“我的电脑,找到上面创建表空间的途径,可以看到新创建的“mytablespace.dbf文件,在该文件夹下

50、还有其它一些文件,分别是以“DBF、“CTL、“LOG为后缀,它们是数据库的主要物理组件。3.6Oracle中的用户管理Oracle中的用户管理包括创建用户、为用户授权、修正用户口令、删除用户等。实际知识:在Oracle数据库中,系统经过平安措施防止非法用户对数据库进展操作。因此,要连-32-专题一Oracle入门接到Oracle,就需求一个用户帐号。数据库管理员担任管理允许访问数据库的用户帐号,包括创建、授权、删除等。在安装数据库时,Oracle将创建一些默许的数据库用户方式,如SYS、SYSTEM、SY-SMAN、DBSNMP和SCOTT等。下面先简单引见一下SYS、SYSTEM和SCOT

51、T用户。SYS用户是Oracle中的一个超级用户。数据库中一切的数据字典和视图都存储在SY-S方式中。数据字典存储了用来管理数据库对象的一切信息,是Oracle数据库中非常重要的系统信息。SYS用户主要用来维护系统信息和管理实例,SYS用户只能以SYSOPER或S-YSDBA角色登陆。SYSTEM用户是Oracle默许的系统管理员,它拥有DBA权限。该用户拥有Oracle管理工具运用的内部表和视图。通常经过SYSTEM用户管理Oracle数据库的用户、权限和存储等。不建议在SYSTEM用户方式中创建用户表。SYS和SYSTEM用户都是Oracle系统用户,它们运用SYSTEM表空间存储方式对象

52、。SCOTT用户是Oracle数据库的一个示范用户。在数据库安装时创建在10g中默许情况下,该用户是被锁定的,可在安装时解锁。SCOTT用户方式下有四个示范表,其中有两个是dept部门表和emp员工表,在本书后面的许多例如中要用到。假设安装时不更改其口令,其默许口令是TIGER。1.以SYSDBA身份登录到SQL*Plus的SQL提示符形状,输入以下的命令创建用户:CREATEUSERuser1IDENTIFIEDBYpwd1DEFAULTTABLESPACEUSERSTEMPORARYTABLESPACETEMP;实际知识:在Oracle中可以用CREATEUSER命令来创建新用户。每个用户

53、都有一个默许表空间和一个暂时表空间,在创建时可以为它们指定,假设不指定,Oracle就把SYSTEM设为默认表空间,TEMP设为暂时表空间。创建新用户的语法如下:CREATEUSERuser_nameIDENTIFIEDBYpasswordDEFAULTTABLESPACEtablespace_name1TEMPORARYTABLESPACEtablespace_name2;2.按回车后系统提示“用户已创建,阐明创建用户胜利。该用户的用户名是“user1,口令是“pwd1,默许表空间是“USERS,暂时表空间是“TEMP。3.在SQL提示符下,输入以下的命令,为用户user1授予CONNECT

54、权限。GRANTCONNECTTOuser1;实际知识:权限指的是用户执行特定类型的SQL命令或访问其他对象的权益。如衔接数据库、创建表、执行过程等都是一些权限。假设没有任何权限,新创建的用户将无法登录到数据库。-33-Oracle数据库案例教程_教师用书Oracle用户权限有两种类型:系统权限和对象权限。系统权限是指允许用户执行某些数据库操作。如创建表空间就是一个系统权限。对象权限指允许对某一特定对象如表、视图等执行特定操作。用户必需是对象的一切者或者是曾经拥有了GRANTOPTION对象权限才干为其他用户授予对象权限。为用户授权的语法为:GRANTpopedom_nameONobject_

55、nameTOuser_name;其中:popedom_name为权限名或角色名,object_name为对象名,user_name为用户名。4.在SQL提示符下输入“CONNSCOTT/TIGER,以SCOTT用户身份登录后,继续输入下面的授权命令,为用户user1授予查看表dept的权限,user1同时还拥有了把此查看权限授予其他用户的权限。GRANTSELECTONempTOuser1WITHGRANTOPTION;5.再输入“CONN/ASSYSDBA命令以SYSDBA身份登录后,在SQL提示符下输入以下命令,修正用户user1的口令。ALTERUSERuser1IDENTIFIEDBY

56、pwd2;实际知识:Oracle中用ALTERUSER命令修正用户口令,语法如下:ALTERUSERuser_nameIDENTIFIEDBYnew_password;6.系统提示“用户已更改,阐明口令修正胜利。在SQL提示符下输入下面的命令来删除用户user1。DROPUSERuser1CASCADE;实际知识:Oracle中的DROPUSER命令用于删除用户。当删除一个用户时,假设该用户方式中包含方式对象时,必需运用CASCADE选项以删除方式对象。删除用户的语法为:DROPUSERuser_nameCASCADE;7.系统提示“用户已删除,阐明用户user1删除胜利。4.实验按照相关实际

57、知识部分依次练习:-34-专题一Oracle入门1.配置Oracle客户端效力名,参见3.220分钟。2.查看Oracle效力,参见3.310分钟。3.认识Oracle常用工具,参见3.420分钟。4.创建数据库和表空间,参见3.520分钟。5.用户的创建、修正口令和删除以用及为用户授权,参见3.620分钟。5.课后作业1.分别用SQL*Plus和iSQL*Plus查看SCOTT用户方式下emp表的内容。2.新建一个数据库TESTDB,并在该数据库中新建一个表空间testspace。3.先新建一个用户testuser,口令为“test,然后赋予他CONNECT权限,再修正其口令为“testus

58、er,最后删除该用户。-35-Oracle数据库案例教程_教师用书专题二锁和表分区1.教学目的1.1了解锁定的概念1.2会运用锁和时间戳机制来防止数据并发时呵斥的数据不一致1.3了解和运用表分区2.任务义务2.1用锁和时间戳来保证并发操作时数据的一致性2.2运用表级锁2.2运用表分区,创建分区表3.相关实际知识3.1运用行级锁和时间戳来保证数据完好性3.1.1两个会话同时修正某一员工工资从开场菜单中翻开SQL*Plus工具,以SCOTT用户的身份登录到数据库;然后再重新从开场菜单翻开SQL*Plus工具,仍以SCOTT用户的身份登录到数据库。这样就创建了两个会话。雇员编号为7934的雇员,由于

59、任务业绩表现好,工资需求在现工资1300元的根底上加500元,作为新的工资。人事部门把通知下发到财务处,在财务处正好有两个人员处置有关工资变动的任务。这两个财务人员操作如下:1.在第一个会话中的SQL提示符下,输入以下代码:SELECTsalFROMEMPWHEREempno=7934;按回车键,系统显示当前工资为1300元。2.在第二个会话的SQL提示符下,输入以下代码:SELECTsalFROMempWHEREempno=7934;按回车键,系统显示当前工资为1300元。3.在第一个会话中,第一个财务人员执行修正工资操作,输入代码如下:-36-专题二锁和表分区UPDATEempoSETsa

60、l=sal+500WHEREempno=7934;COMMIT;系统显示修正胜利。4.在第二个会话中,由于不知道另一个财务人员曾经修正了工资,而且由于它的查询是在修正之前,所以他以为工资没有修正,因此,他也执行修正工资操作,输入代码如下:UPDATEempoSETsal=sal+500WHEREempno=7934;COMMIT;系统显示修正胜利。5.上面这种情况下,雇员编号为7934的雇员,根本工资曾经变成了1300+500+500=2300元,这会对公司呵斥损失。大家思索,凡是涉及到多个用户同时修正一个数据时,就会出现类似上面的问题,对于这种问题,我们需求经过锁或时间戳来处置。实际知识:当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论