版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章Oracle11g数据库安装与卸载
主要内容Oracle11g数据库服务器安装准备安装Oracle11g数据库服务器检查数据库服务器的安装结果Oracle11g客户机安装与配置卸载Oracle11g产品小结1.1Oracle11g数据库服务器安装准备软件与硬件需求注意事项1.1.1软件与硬件需求CPU:最小550MHz;内存(RAM):最低1GB;硬盘空间(NTFS格式):基本安装5.364GB,高级安装4.904GB虚拟内存:最小为RAM的2倍;监视器:256色;分辨率:最小为1024X768网络协议:TCP/IP、支持SSL的TCP/IP、NamedPipes;浏览器:IE7、IE8、IE9。1.1.2注意事项启动操作系统,以管理员身份登录。检查计算机名称以及当前操作系统管理员名称中是否包含中文字符以及特殊符号。检查服务器系统是否满足软、硬件要求。如果服务器上运行有其它Oracle服务,必须在安装前将它们全部停止。决定数据库服务器的安装类型、安装位置及数据库的创建方式。准备好要安装的Oracle11g数据库服务器软件产品1.2安装Oracle11g数据库服务器系统软硬件先决条件检查1.3检查数据库服务器的安装结果系统服务文件体系结构网络配置1.3.1系统服务1.3.2文件体系结构1.3.3网络配置1.4Oracle11g客户机安装与配置安装客户机配置客户机1.4.1安装客户机1.4.2配置客户机1.5卸载Oracle11g产品从Oracle11g的版本开始,Oracle提供了一个用于数据库产品卸载的工具deinstall,位于Oracle主目录的deinstall目录中(ORACLE_HOME\deinstall)小结Oracle11g数据库服务器安装准备安装Oracle11g数据库服务器检查数据库服务器的安装结果Oracle11g客户机安装与配置卸载Oracle11g产品第2章Oracle数据库管理与开发工具介绍主要内容Oracle企业管理器SQLPlusSQLDeveloper网络配置与管理工具小结2.1Oracle企业管理器Oracle企业管理器简介启动数据库控制OEM数据库控制OEM功能界面介绍OEM控制台首选项设置2.1.1Oracle企业管理器简介Oracle11g企业管理器(OEM)是一个基于Java框架开发的集成化管理工具实现对Oracle运行环境的完全管理实现对单个Oracle数据库的本地管理实现对多个Oracle数据库的集中管理实现对Oracle应用服务器的管理检查与管理目标计算机系统软硬件配置2.1.2启动数据库控制OEM打开IE浏览器,在地址栏中输入OEM控制台的URL,按“回车键”,进入OEM登录界面。OEM控制台的URL格式为:https://hostname:portnumber/em。如果在服务器本地,可以选择“开始→所有程序→Oracle-OraDb11g_home1→DatabaseControl–orcl”,启动ORCL数据库的OEM。在登录界面中输入用户名、口令,并选择连接身份后,单击“登录”按钮2.1.4OEM控制台首选项设置设置主机首选身份证明设置数据库首选身份证明设置主机首选身份证明操作系统用户权限分配设置主机首选身份证明设置数据库首选身份证明2.2SQLPlusSQLPlus简介启动SQLPlusSQLPlus常用命令2.2.1SQLPlus简介利用SQLPlus可以实现以下操作:输入、编辑、存储、提取、运行和调试SQL语句和PL/SQL程序。开发、执行批处理脚本。执行数据库管理。处理数据、生成报表、存储、打印、格式化查询结果。检查表和数据库对象定义。启动/关闭数据库实例。2.2.2启动SQLPlus打开命令提示符窗口在命令提示符窗口中执行sqlplus命令sqlplus[username]/[password][@connect_identifier][NOLOG]2.2.3SQLPlus常用命令连接命令:CONNECT[username]/[password][@connect_identifier]断开连接命令:DISC[ONNECT]编辑命令:EDIT执行缓冲区命令:RUN命令或“/”文件操作命令:SAVEfilename[CREATE]|[REPLACE]|[APPEND]GETfilename[L[IST]]|[NOL[IST]]STARTfilename[arg1arg2…]@filename[arg1arg2…]环境变量的显示:SHOW环境变量的设置:SET显示任何数据库对象的结构信息:DESC[RIBE]将屏幕内容存放到文本文件中:SPOOL清除屏幕上所有的内容:CLEARSCREEN2.3SQLDeveloperSQLDeveloper简介创建数据库连接SQLDeveloper基本操作2.3.1SQLDeveloper简介OracleSQLDeveloper是一个免费的、图形化的、集成的数据库开发工具。使用SQLDeveloper,用户可以浏览数据库对象、运行SQL语句和SQL脚本,并且还可以编辑和调试PL/SQL程序。SQLDeveloper还提供了许多ApplicationExpress报表供用户使用,用户也可以创建和保存自己的报表。2.3.2创建数据库连接2.3.3SQLDeveloper基本操作浏览数据库对象进行数据的DML操作(插入、删除、修改数据)行DDL操作(创建、修改、删除数据库对象)开发和调试PL/SQL程序进行数据的导出与导入创建与生成报表2.4.2利用DBCA创建数据库2.5网络配置与管理工具网络配置助手ONCA网络管理工具ONM2.5.1网络配置助手ONCA监听程序配置命名方法配置本地网络服务名配置目录使用配置2.5.2网络管理工具ONM概要文件:确定客户端如何连接到Oracle网络的参数集合。使用概要文件可以配置命名方法、事件记录、跟踪、外部命令参数以及OracleAdvancedSecurity的客户端参数。服务命名:创建或修改数据库服务器的网络服务的描述。监听程序:创建或修改监听程序。小结Oracle企业管理器SQLPlusSQLDeveloper数据库配置助手网络配置与管理工具第3章Oracle数据库系统结构主要内容Oracle数据库系统结构概述Oracle数据库存储结构Oracle数据库内存结构Oracle数据库后台进程3.1Oracle数据库系统结构概述Oracle数据库的存储结构(StorageStructure)分为物理存储结构和逻辑存储结构两种,分别描述了在操作系统中和数据库系统内部数据的组织与管理方式。。Oracle数据库的软件结构,即Oracle实例(Instance),包括内存结构与后台进程结构两个部分。3.2Oracle数据库存储结构存储结构概述物理存储结构概述逻辑存储结构概述3.2.1存储结构概述一个数据库在物理上包含多个数据文件,在逻辑上包含多个表空间。一个表空间包含一个或多个数据文件,一个数据文件只能从属于某个表空间。数据库的逻辑块由一个或多个操作系统块构成。一个逻辑区只能从属于某一个数据文件,而一个数据文件可包含一个或多个逻辑区。3.2.2物理存储结构概述数据文件控制文件重做日志文件归档重做日志文件初始化参数文件跟踪文件告警文件数据文件数据文件是数据库中所有数据的实际存储空间,所有数据文件大小的和构成了数据库的大小。根据数据信息类型不同,数据文件分为永久性数据文件和临时数据文件两种。控制文件控制文件是记录数据库结构信息的重要的二进制文件,由Oracle系统进行读写操作,DBA不能直接操作控制文件。数据库启动时,根据初始化参数文件中的CONTROL_FILES参数找到控制文件,然后根据控制文件中的信息,进行数据库数据文件和重做日志文件的加载,最后打开数据库。一个数据库至少需要一个控制文件,如果控制文件损坏将导致数据库无法启动。重做日志文件重做日志文件是以重做记录的形式记录、保存用户对数据库所进行的变更操作,是数据库中最重要的物理文件。利用重做日志文件可以进行事务的重做(REDO)或回退(UNDO),是数据库实例恢复的基础。归档重做日志文件归档重做日志文件是历史联机重做日志文件的集合,是联机重做日志文件被覆盖之前备份的副本。如果数据库工作在归档模式,数据库归档进程会自动将写满的重做日志文件在覆盖之前复制到指定的位置。归档重做日志文件是数据库出现介质故障后实现数据库完全恢复的必要条件初始化参数文件初始化参数文件是数据库启动过程所必需的文件,记录了数据库显式参数的设置。数据库启动的第一步就是根据初始化参数文件中的设置,创建并启动实例,即分配内存空间、启动后台进程。跟踪文件跟踪文件是数据库中重要的诊断文件跟踪文件中包含数据库系统运行过程中所发生的重大事件的有关信息,可以为数据库运行故障的解决提供重要信息。告警文件告警文件也是数据库中重要的诊断文件,记录数据库在启动、关闭和运行期间后台进程的活动情况。在数据库出现故障时,应首先查看该文件,但文件中的信息与任何错误状态没有必然的联系。3.2.3逻辑存储结构的构成与关系Oracle数据块区段表空间Oracle数据库的逻辑存储结构分为Oracle数据块(OracleDataBlock)、区(Extent)、段(Segment)和表空间(Tablespace)。Oracle数据块数据库中最小的逻辑存储单元。在Oracle11g数据库中,数据块分为标准块和非标准块两种。Oracle数据库的默认数据缓冲区就是由标准数据块构成,由数据库初始化参数DB_BLOCK_SIZE设置。区区是由一系列连续的数据块构成的逻辑存储单元,是存储空间分配的最小单位。当创建一个数据库对象时,Oracle为对象分配若干个区,以构成一个段来为对象提供初始的存储空间。当段中已分配的区都写满后,Oracle会为段分配一个新区,以容纳更多的数据。段段是由一个或多个连续或不连续的区组成的逻辑存储单元。段分类表段索引段临时段回退段
利用回退段中保存的回退信息,可以实现事务回滚数据库恢复数据的读一致性闪回查询表空间表空间是Oracle数据库最大的逻辑存储单元,数据库的大小从逻辑上看就是由表空间决定表空间与数据库文件直接关联,一个表空间包含一个或多个数据文件,一个数据文件只能从属于某一个表空间,数据库对象就是存储在表空间对应的一个或多个数据文件中表空间分类:系统表空间非系统表空间撤销表空间临时表空间用户表空间3.3Oracle数据库内存结构Oracle内存结构概述SGAPGA3.3.1Oracle内存结构概述用户的所有操作都在内存中进行,最后由数据库后台进程将操作结果写入各种物理文件中永久性保存。内存结构类型:系统全局区(SystemGlobalArea,SGA)程序全局区(ProgramGlobalArea,PGA)。3.3.2SGASGA是由Oracle分配的共享内存结构,包含一个数据库实例的数据和控制信息。SGA数据供所有的服务器进程和后台进程共享,所以SGA又称为共享全局区(SharedGlobalArea)。SGA构成数据高速缓冲区(DatabaseBufferCache)共享池(SharedPool)重做日志缓冲区(RedoLogCache)大型池(LargePool)Java池(JavaPool)流池(StreamsPool)其它结构(如固定SGA、锁管理等)数据高速缓冲区功能存储从数据文件中检索出来的数据拷贝。应用程序要访问的数据必须从磁盘的数据文件读到数据缓冲区中处理。在数据缓冲区中被修改后的数据由数据写入进程写到硬盘的数据文件中永久保存。提高获取和更新数据的性能。
数据高速缓冲区的工作过程
缓冲块的类型脏缓存块(DirtyBuffers):脏缓存块中保存的是已经被修改过的数据。空闲缓存块(FreeBuffers):空闲缓存块中不包含任何数据,它们等待后台进程或服务器进程向其中写入数据。命中缓存块(PinnedBuffers):命中缓存块是那些正被使用的数据块,同时还有很多会话等待修改或访问的数据块。干净缓存块(CleanBuffers):干净缓存块是指那些当前没有被使用,即将被换出内存的缓存块。
缓存块的管理脏缓存块列表:包含那些已经被修改但还没有写入数据文件的脏缓存块。LRU列表(LeastRecentlyUsed):包含所有的空闲缓存块、命中缓存块和那些还没有来得及移入到脏缓存块列表中的脏缓存块。在该列表中,最近被访问的缓存块被移动到列表的头部,而其他缓存块向列表尾部移动,最近最少被访问的缓存块最先被移出LRU列表,从而保证最频繁使用的缓存块始终保存在内存中。数据高速缓冲区大小
数据高速缓冲区越大,用户需要的数据在内存中的可能性就越大,即缓存命中率越高,从而减少了Oracle访问硬盘数据的次数,提高了数据库系统执行的效率。然而,如果数据高速缓冲区的值太大,Oracle就不得不在内存中寻找更多的块来定位所需要的数据,反而降低了系统性能。显然需要确定一个合理的数据高速缓冲区大小。DB_CACHE_SIZE(标准块)重做日志缓冲区功能重做日志缓冲区用于缓存用户对数据库进行修改操作时生成的重做记录。为了提高工作效率,重做记录并不是直接写入重做日志文件中,而是首先被服务器进程写入重做日志缓冲区中,在一定条件下,再由日志写入进程(LGWR)把重做日志缓冲区的内容写入重做日志文件中做永久性保存。在归档模式下,当重做日志切换时,由归档进程(ARCH)将重做日志文件的内容写入归档文件中重做日志缓冲区的工作过程重做日志缓冲区的大小LOG_BUFFER较大的重做日志缓冲区,可以减少对重做日志文件写的次数,适合长时间运行的、产生大量重做记录的事务。共享池功能共享池用于缓存最近执行过的SQL语句、PL/SQL程序和数据字典信息,是对SQL语句、PL/SQL程序进行语法分析、编译、执行的区域。组成库缓存库缓存用于缓存已经解释并执行过的SQL语句和PL/SQL程序代码,以提高SQL或PL/SQL程序的执行效率。包括SQL工作区和PL/SQL工作区数据字典缓存区数据字典缓存区保存最常用的数据字典信息共享池大小SHARED_POOL_SIZE合适的共享池大小,可使编译过的程序代码长驻内存,大大降低重复执行相同的SQL语句、PL/SQL程序的系统开销,从而提高数据库的性能。大型池功能大型池是一个可选的内存配置项,主要为Oracle多线程服务器、服务器I/O进程、数据库备份与恢复操作、执行具有大量排序操作的SQL语句、执行并行化的数据库操作等需要大量缓存的操作提供内存空间。如果没有在SGA区中创建大型池,上述操作所需要的缓存空间将在共享池或PGA中分配,因而影响共享池或PGA的使用效率。大型池大小LARGE_POOL_SIZEJava池功能Java提供对Java程序设计的支持,用于存储Java代码、Java语句的语法分析表、Java语句的执行方案和进行Java程序开发。Java池大小JAVA_POOL_SIZE通常不小于20M,以便安装Java虚拟机流池功能流池是一个可选的内存配置项,用于对流的支持。流池大小STREAMS_POOL_SIZE3.3.3PGAPGA是一个私有的内存区,不能共享,每个服务器进程只能访问自己的PGA,因此PGA又称为私有全局区(PrivateGlobalArea)。系统同时为每个后台进程分配私有的PGA区。所有服务器进程PGA与所有后台进程PGA大小的和,即为实例的PGA的大小。PGA随着服务器进程与后台进程的启动而分配,随着服务器进程和后台进程的终止而被释放。PGA构成:排序区(SortArea):存放排序操作所产生的临时数据。游标信息区(CursorInformation):存放执行游标操作时所产生的数据。会话信息区(SessionInformation):保存用户会话所具有的权限、角色、性能统计信息。堆栈区(StackSpace):用于保存会话过程中的绑定变量、会话变量等信息。3.4Oracle数据库后台进程Oracle进程概述Oracle服务器进程Oracle后台进程3.4.1Oracle进程概述进程的概念进程是操作系统中一个独立的可以调度的活动,用于完成指定的任务。进程与程序的区别在于:进程是动态的概念,即动态创建,完成任务后立即消亡;而程序是一个静态实体。进程强调执行过程,而程序仅仅是指令的有序集合。进程的类型用户进程服务器进程后台进程3.4.2Oracle后台进程DBWR数据库写入进程LGWR日志写入进程CKPT检查点进程SMON系统监控进程PMON进程监控进程ARCH归档进程恢复进程(RECO)锁进程(LCKn)度进程(Dnnn)等DBWR(数据库写入进程)Database把数据高速缓冲区中已经被修改过的数据(脏缓存块)成批写入数据文件中永久保存,同时使数据高速缓冲区有更多的空闲缓存块,保证服务器进程将所需要的数据从数据文件中读取到数据高速缓冲区中,提高缓存命中率。启动DBWR进程执行INSERT、UPDATE等操作时,没有足够的空闲块当检查点发生时,将启动DBWR进程当数据缓存的LRU列表的长度达到初始化DB_BLOCK_WRITE_BATCH指定值的一半时若发生超时(大约3秒未被启动)LGWR(日志写入进程)Database日志写入进程负责把重做日志缓冲区的重做记录写入重做日志文件中永久保存。启动LGWR进程用户通过COMMIT语句提交当前事务重做日志缓存被写满三分之一DBWR进程开始将脏缓存块写入数据文件每隔3秒,即发生一次超时,将启动LGWRCKPT(检查点进程)检查点概念检查点是一个事件,当该事件发生时(每隔一段时间发生),DBWR进程把数据高速缓冲区中脏缓存块写入数据文件中,同时Oracle将对数据库控制文件和数据文件的头部的同步序号进行更新,以记录下当前的数据库结构和状态,保证数据的同步CKPT进程的作用更新控制文件与数据文件的头部,使其同步触发DBWR进程,将脏缓存块写入数据文件SMON(系统监控进程)Database实例恢复执行前滚(ROLLFORWARD),将重做日志信息已经写入到重做日志文件中但还数据还没有写入到数据文件中的已提交的数据写入到数据文件。在前滚完成后立即打开数据库。此时用户可以连接数据库,但此时数据文件中可能存在一些没有提交的数据需要回滚。回滚没有提交的事务回收不再使用的临时空间。将各个表空间的空闲碎片合并(表空间的存储参数PCTINCREASE不为0时)PMON(进程监控进程)负责恢复失败的用户进程或服务器进程,并且释放进程所占用的资源。清除非正常中断的用户进程留下的孤儿会话,回退未提交的事务,释放会话所占用的锁、SGA、PGA等资源。监控调度进程和服务器进程的状态,如果它们失败,则尝试重新启动它们,并释放它们所占用的各种资源。ARCH(归档进程)功能归档进程负责在日志切换后将已经写满的重做日志文件复制到归档目标中,防止写满的重做日志文件被覆盖RECO(恢复进程)功能RECO进程负责在分布式数据库环境中自动解决分布式事务的故障。一个节点的RECO自动解决所有的悬而未决的事务。当一个数据库服务器的RECO后台进程试图建立同一远程服务器的通信,如果该远程服务器不可用或者网络连接不能建立时,RECO自动地在一个时间间隔之后再次连接。。LCKn(锁进程)功能LCKn进程用于Oracle并行服务器环境中。在数据库中最多可以启动10个LCKn进程,主要用于实例间的封锁。Dnnn(调度进程)功能Dnnn进程是多线程服务器(MultithreadedServer,MTS)的组成部分,以后台进程的形式运行。调度进程接受用户进程请求,将它们放入请求队列中,然后为请求队列中的用户进程分配一个服务器进程。最后,从响应队列返回数据给用户进程3.5数据字典数据字典概述数据字典的结构数据字典的使用3.5.1数据字典概述概念Oracle数据库的数据字典是在数据库创建的过程中创建的,由一系列表和视图构成,这些表和视图对于所有的用户(包括DBA),都是只读的。只有Oracle系统才可以对数据字典进行管理与维护。在Oracle数据库中,所有数据字典表和视图都属于SYS模式,存储于SYSTEM表空间中。Oracle数据字典保存数据库本身的系统信息及所有数据库对象信息,包括:各种数据库对象的定义信息,包括表、视图、索引、同义词、序列、存储过程、函数、包、触发器及其他各种对象;数据库存储空间分配信息,如为某个数据库对象分配了多少空间,已经使用了多少空间等;数据库安全信息,包括用户、权限、角色、完整性等;数据库运行时的性能和统计信息;其他数据库本身的基本信息。数据字典的主要用途包括:Oracle通过访问数据字典获取用户、模式对象、数据库对象定义与存储等信息,以判断用户权限的合法性、模式对象的存在性及存储空间的可用性等;使用DDL语句修改数据库对象后,Oracle将在数据字典中记录所做的修改;任何数据库用户都可以从数据字典只读视图中获取各种数据库对象信息;DBA可以从数据字典动态性能视图中获取数据库的运行状态,作为进行性能调整的依据。3.5.2数据字典的结构数据字典结构分为:数据字典表数据字典视图根据数据字典对象的虚实性不同,可分为:静态数据字典动态数据字典静态数据字典表静态数据字典表是在数据库创建过程中自动运行sql.bsq脚本创建的,由SYS用户所拥有,表中信息都是经过加密处理的。静态数据字典表的命名中通常包含$符号。只有Oracle才能读/写这些静态数据字典表。例如,静态数据字典表tab$。静态数据字典视图通过对静态数据字典表进行解密和处理,创建了一系列用户可读的静态数据字典视图。在数据库创建过程中,通过自动运行catalog.sql脚本创建静态数据字典视图及其公共同义词,并进行授权,如静态数据字典视图USER_TABLES。动态数据字典表动态数据字典表是在数据库实例运行过程中由Oracle动态创建和维护的一系列“虚表”,在实例关闭时被释放。动态数据字典表中记录与数据库运行的性能相关的统计信息,因此又称为动态性能表。通常,动态性能表的命名以X$开头。动态性能表由SYS用户所拥有,如动态性能表X$KSPPI。动态数据字典视图在动态性能表上创建的视图称为动态数据字典视图,又称为动态性能视图。所有动态性能视图命名都以V$开头,Oracle自动为这些视图创建了以V$开头命名的公共同义词,因此动态性能视图又称为“V$视图”,如动态性能视图V$DATAFILE。查询数据字典信息查询表dictionary,可以获得全部可以访问的数据字典表或数据字典视图的名称和解释;查询表dict_columns,可以获得全部可以访问的数据字典表或数据字典视图中的字段名称和解释。示例SELECT*FROMdictionary;SELECT*FROMdict_columnsWHERETABLE_NAME='USER_TABLES';3.5.3数据字典的使用静态数据字典表的使用静态数据字典表只能由Oracle进行维护,用户不能对这些表进行直接操作。静态数据字典视图的使用通常,用户通过对静态数据字典视图的查询可以获取所需要的所有数据库信息。Oracle静态数据字典视图可以分为3类,各类视图具有独特的前缀.名称前缀含义USER_包含了当前数据库用户所拥有的所有模式对象的信息ALL_包含了当前数据库用户可以访问的所有模式对象的信息DBA_包含了所有数据库对象信息,只有具有DBA角色的用户才能够访问这些视图动态性能表的使用动态性能表都属于SYS用户,Oracle使用这些表生成动态性能视图。动态性能视图的使用动态性能视图是SYS用户所拥有的,在默认情况下,只有SYS用户和拥有DBA角色的用户可以访问。与静态数据字典表和视图不同,在数据库启动的不同阶段只能访问不同的动态性能视图。当数据库启动到NOMOUNT状态时:Oracle数据库打开初始化参数文件,分配SGA并启动后台进程,因此只能访问从SGA中获得信息的动态性能视图,如V$PARAMETER,V$SGA,V$SESSION,V$PROCESSE,V$INSTANCE,V$VERSION,V$OPTION等当数据库启动到MOUNT状态时:Oracle打开控制文件,因此不仅能访问从SGA中获得信息的动态性能视图,还可以访问从控制文件中获得信息的动态性能视图,如V$LOG,V$LOGFILE,V$DATAFILE,V$CONTROLFILE,V$DATABASE,V$THREAD,V$DATAFILE_HEADER等。当数据库完全启动后:可以访问V_$fixed_table表中所有的动态性能视图。小结Oracle数据库系统结构Oracle数据库存储结构物理存储结构逻辑存储结构Oracle数据库示例内存结构Oracle数据库进程数据字典第4章
案例数据库的创建与客户端的连接案例数据库分析与设计案例数据库的创建客户端与案例数据库的连接配置4.1案例数据库分析与设计案例数据库的分析案例数据库概念结构设计案例数据库逻辑结构设计4.1.1案例数据库的分析员工管理部门管理职位管理员工职位调动管理企业所在区域管理企业所在国家管理企业所在位置管理4.1.2案例数据库概念结构设计4.1.3案例数据库逻辑结构设计REGIONS字段名数据类型长度约束说明region_idNUMBERPRIMARYKEY区域编号region_nameVARCHAR225NOTNULL区域名称COUNTRIES字段名数据类型长度约束说明country_idCHAR2PRIMARKEY国家编号country_nameVARCHAR240NOTNULL国家名称region_idNUMBERFOREIGNKEY所属区域编号LOCATIONS字段名数据类型长度约束说明location_idNUMBER4PRIMARYKEY位置编号street_addressVARCHAR240街道postal_codeVARCHAR212邮政编码cityVARCHAR230NOTNULL城市名称state_provinceVARCHAR225州或省名称country_idCHAR2FOREIGNKEY所属国家编号DEPARTMENTS字段名数据类型长度约束说明department_idNUMBER4PRIMARYKEY部门编号department_nameVARCHAR230NOTNULL部门名称manager_idNUMBER6部门管理者编号location_idNUMBER4FOREIGNKEY部门所属位置编号JOBS字段名数据类型长度约束说明job_idVARCHAR210PRIMARYKEY职位编号job_titleVARCHAR235NOTNULL职位名称min_salaryNUMBER6职位最低工资max_salaryNUMBER6职位最高工资EMPLOYEES字段名数据类型长度约束说明employee_idNUMBER6PRIMARYKEYfirst_nameVARCHAR220last_nameVARCHAR225NOTNULLemailVARCHAR225NOTNULLUNIQUEphone_numberVARCHAR220hire_dateDATENOTNULLjob_idVARCHAR210NOTNULLFOREIGNKEYsalaryNUMBER8,2大于0commission_pctNUMBER2,2manager_idNUMBER6FOREIGNKEYdepartment_idNUMBER4FOREIGNKEYJOB_HISTORY字段名数据类型长度约束说明employee_idNUMBER6PRIMARYKEYstart_dateDATEPRIMARYKEYend_dateDATENOTNULLend_date>start_datejob_idVARCHAR210NOTNULLdepartment_idNUMBER4FOREIGNKEY字段名数据类型长度约束说明gradeNUMBER2PRIMARYKEY工资等级min_salaryNUMBER6NOTNULL等级最低工资max_salaryNUMBER6NOTNULL等级最高工资SAL_GRADESUSERS字段名数据类型长度约束说明user_idNUMBER2PRIMARYKEY管理员编号user_nameCHAR20管理员名passwordVARCHAR220NOTNULL密码序列的设计创建一个名为“EMPLOYEES_SEQ”的序列,用于产生员工编号,起始值为100,步长为1,不缓存,不循环。创建一个名为“DEPARTMENTS_SEQ”的序列,用于产生部门编号,起始值为10,步长为10,最大值为9990,不缓存,不循环。创建一个名为“LOCATIONS_SEQ”的序列,用于产生位置编号,起始值为1000,步长为100,最大值为9990,不缓存,不循环。索引的设计在employees表的department_id列上创建名为“EMP_DEPARTMENT_INDX”的平衡树索引。在employees表的job_id列上创建名为“EMP_JOB_INDX”的平衡树索引。在employees表的manager_id列上创建名为“EMP_MANAGER_INDX”的平衡树索引。在employees表的last_name,first_name列上创建名为“EMP_NAME_INDX”的复合索引。在departments表的location_id列上创建名为“DEPT_LOCATION_INDX”的平衡树索引。在job_history表的job_id列上创建名为“JHIST_JOB_INDX”的平衡树索引。在job_history表的employee_id列上创建名为“JHIST_EMP_INDX”的平衡树索引。在job_history表的department_id列上创建名为“JHIST_DEPT_INDX”的平衡树索引。在locations表的city列上创建名为“LOC_CITY_INDX”的平衡树索引。在locations表的state_province列上创建名为“LOC_STATE_PROVINCE_INDX”的平衡树索引。在locations表的country_id列上创建名为“LOC_COUNTRY_INDX”的平衡树索引。视图的设计用于员工信息综合查询的视图名为“EMP_DETAILS_VIEW”,包括员工编号、员工名、工资、奖金、职位编号、职位名称、部门编号、部门名称、部门所在地信息、国家信息、区域信息等。创建一个名为“DEPT_STAT_VIEW”的视图,包含部门号、部门人数、部门平均工资、部门最高工资、部门最低工资以及部门工资总和。存储过程、函数、包、触发器的设计创建名为“PROC_SHOW_EMP”的存储过程,以部门编号为参数,查询并返回该部门平均工资,以及该部门中比该部门平均工资高的员工信息。创建名为“PROC_RETURN_DEPTINFO”的存储过程,以部门编号为参数返回该部门的人数和平均工资。创建名为“PROC_SECURE_DML”的存储过程,检查当前用户操作时间是否为工作时间,即非周六、周日,时间为08:00-18:00。创建名为“FUNC_EMP_SALARY”的函数,以员工编号为参数,返回员工的工资。创建名为“FUNC_DEPT_MAXSAL”的函数,以部门编号为参数,返回部门最高工资。创建名为“FUNC_EMP_DEPT_AVGSAL”的函数,以员工编号为参数,返回该员工所在部门的平均工资。创建名为“PKG_EMP_PAGE”的包,利用集合实现员工的分页显示功能。创建名为“PKG_EMP_CURSOR_PAGE”的包,利用游标变量实现员工分页显示功能
4.2案例数据库的创建4.3客户端与案例数据库的连接配置总结案例系统分析与设计案例数据库的创建客户端的配置第5章
数据库存储设置与管理主要内容数据库存储设置与管理概述表空间的设置与管理数据文件的设置与管理控制文件的设置与管理重做日志文件设置与管理归档重做日志文件设置与管理5.1数据库存储设置与管理概述在Oracle数据库的存储结构包括物理存储结构和逻辑存储结构。物理存储结构主要用于描述Oracle数据库外部数据的存储,即在操作系统中如何组织和管理数据,与具体的操作系统有关;逻辑存储结构主要描述Oracle数据库内部数据的组织和管理方式,与操作系统没有关系。物理存储结构是逻辑存储结构在物理上的、可见的、可操作的、具体的体现形式。Oracle数据库物理存储结构数据文件:用于存储数据库中的所有数据;控制文件:用于记录和描述数据库的物理存储结构信息;重做日志文件:用于记录外部程序对数据库的改变操作;归档文件:用于保存已经写满的重做日志文件;初始化参数文件:用于设置数据库启动时的参数初始值;跟踪文件:用于记录用户进程、数据库后台进程等的运行情况;口令文件:用于保存具有SYSDBA,SYSOPER权限的用户名和SYS用户口令;警告文件:用于记录数据库的重要活动以及发生的错误;备份文件:用于存放数据库备份所产生的文件。逻辑结构单元类型数据块:BLOCK区:EXTENT段:SEGMENT表空间:TABLESPACE5.2表空间的设置与管理表空间介绍创建表空间修改表空间大小修改表空间的可用性修改表空间的读写性设置默认表空间删除表空间查询表空间信息5.2.1表空间介绍表空间是Oracle数据库的最大逻辑容器,一个表空间包含一个或多个数据文件。数据库容量在物理上由数据文件大小与数量决定的,在逻辑上由表空间大小与数量决定的。表空间属性:类型:永久性表空间(PERMANENTTABLESPACE)、临时表空间(TEMPTABLESPACE)、撤销表空间(UNDOTABLESPACE)管理方式:字典管理方式(DICTIONARY)和本地管理方式(LOCAL)区分配方式:自动分配(AUTOALLOCATE)和定制分配(UNIFORM)段的管理方式:自动管理(AUTO)和手动管理(MANUAL)5.2.2创建表空间创建永久表空间使用CREATETABLESPACE语句来实现,该语句包含以下几个子句:DATAFILE:设定表空间对应的数据文件。EXTENTMANAGEMENT:指定表空间的管理方式,取值为LOCAL(默认)或DICTIONARY。AUTOALLOCATE(默认)或UNIFORM:设定区的分配方式。SEGMENTSPACEMANAGEMENT:设定段的管理方式,其取值为MANUAL或AUTO(默认)。创建本地管理的永久表空间,区采用自动分配方式,段采用自动管理方式。
CREATETABLESPACEHRTBS1DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTBS1_1.DBF'SIZE50M;创建本地管理的永久表空间,区采用定制分配方式,段采用自动管理方式。CREATETABLESPACEHRTBS2DATAFILE
'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTBS2_1.DBF'SIZE50MEXTENTMANAGEMENTLOCALUNIFORMSIZE512K;创建本地管理的永久表空间,区采用自动分配方式,段采用手动管理方式。CREATETABLESPACEHRTBS3DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTBS3_1.DBF'SIZE50MSEGMENTSPACEMANAGEMENTMANUAL;创建一个永久性的表空间HRTBS4,区定制分配,段采用手动管理方式。CREATETABLESPACEHRTBS4DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTBS4_1.DBF'SIZE50MEXTENTMANAGEMENTLOCALUNIFORMSIZE512KSEGMENTSPACEMANAGEMENTMANUAL;创建一个永久性的表空间INDX,区自动扩展,段采用自动管理方式,专门用于存储HUMAN_RESOURCE数据库中的索引数据。CREATETABLESPACEINDXDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\INDEX01.DBF'SIZE50M;创建大文件表空间一个大文件表空间只包含一个数据文件,该数据文件可以包含4G(232)个数据块。通过查询数据字典DATABASE_PROPERTIES中数据库的属性DEFAULT_TBS_TYPE,可以知道数据库默认创建的是小文件表空间还是大文件表空间。创建一个大文件表空间,文件大小为1G,区的分配采用定制方式。CREATEBIGFILETABLESPACEbig_tbsDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\ORCL\big01.dbf'SIZE1GUNIFORMSIZE512K;需要注意的是,大文件表空间中段的管理只能采用自动管理方式,而不能采用手动管理方式。创建临时表空间临时表空间是指专门存储临时数据的表空间,这些临时数据在会话结束时会自动释放。在数据库实例运行过程中,执行排序等SQL语句时会产生大量的临时数据,而内存不足以容纳这么多数据,此时可以使用临时表空间集中管理临时数据,既提高了排序操作的并发度,又提高了存储空间管理的效率。创建一个临时表空间HRTEMP1CREATETEMPORARYTABLESPACEHRTEMP1TEMPFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTEMP1_1.DBF'SIZE20MEXTENTMANAGEMENTLOCALUNIFORMSIZE15M;为了避免临时空间频繁分配与回收时产生大量碎片,临时表空间的区只能采用自动分配方式。创建一个临时表空间HRTEMP2,并放入临时表空间组TEMP_GROUP。同时,将临时表空间HRTEMP1也放入该TEMP_GROUP中。CREATETEMPORARYTABLESPACEHRTEMP2TEMPFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRTEMP2_1.DBF'SIZE20MEXTENTMANAGEMENTLOCALUNIFORMSIZE15MTABLESPACEGROUPTEMP_GROUP;ALTERTABLESPACEHRTEMP1TABLESPACEGROUPTEMP_GROUP;创建撤销表空间从Oracle9i开始,Oracle数据库中引入撤销表空间,专门用于回退段的自动管理,由数据库自动进行回退段的创建、分配与优化。创建一个撤销表空间HRUNDO1。CREATEUNDOTABLESPACEHRUNDO1DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\HRUNDO1_1.DBF'SIZE20M;5.2.3修改表空间大小改变数据文件大小的方法添加数据文件改变已有数据文件的大小改变数据文件的可扩展性重新设置数据文件的大小。为表空间添加数据文件通过ALTERTABLESPACE…ADDDATAFILE语句为永久表空间添加数据文件通过ALTERTABLESPACE…ADDTEMPFILE语句为临时表空间添加临时数据文件向USERS表空间中添加一个大小为10MB的数据文件。ALTERTABLESPACEUSERSADDDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'SIZE10M向TEMP表空间中添加一个大小为5MB的临时数据文件。ALTERTABLESPACETEMPADDTEMPFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\TEMP02.DBF'SIZE5M改变数据文件的扩展性如果在创建表空间或为表空间增加数据文件时没有指定AUTOEXTENDON选项,则该文件的大小是固定的。如果为数据文件指定了AUTOEXTENDON选项,当数据文件被填满时,数据文件会自动扩展,即表空间被扩展了。修改USERS表空间的数据文件USERS02.DBF为自动增长方式。ALTERDATABASEDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'AUTOEXTENDONNEXT1MMAXSIZEUNLIMITED;USERS表空间的数据文件USERS02.DBF的自动增长方式。ALTERDATABASEDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'AUTOEXTENDOFF;重新设置数据文件的大小可以使用ALTERDATABASEDATAFILE…RESIZE改变表空间已有数据文件的大小。将HUMAN_RESOURCE数据库USERS表空间的数据文件USERS02.DBF大小设置为8MB。ALTERDATABASE
DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'RESIZE8M;5.2.4修改表空间的可用性表空间的可用性是指表空间脱机或联机操作。除了SYSTEM表空间、存放在线回退信息的撤销表空间和临时表空间不可以脱机外,其它的表空间都可以设置为脱机状态。将某个表空间设置为脱机状态时,属于该表空间的所有数据文件都处于脱机状态。可以使用ALTERTABLESPACE…OFFLINE将表空间脱机。5.2.5修改表空间的读写性满足下列条件的表空间才可以设置为只读状态。表空间必须处于联机状态。表空间中不能包含任何活动的回退段。系统表空间SYSTEM、辅助系统表空间SYSAUX、当前使用的撤销表空间(UNDO)和当前使用的临时表空间(TEMP)不能设置为只读状态。如果表空间正在进行联机数据备份,则不能将该表空间设置为只读状态。可以使用ALTERTABLESAPCE…READONLY语句将表空间设置为只读状态可以使用ALTERTABLESPACE…READWRITE语句将表空间由只读状态恢复为读写状态。5.2.6设置默认表空间在Oracle11g数据库中,数据库的默认表空间为USERS表空间,默认的临时表空间为TEMP表空间。可以使用ALTERDATABASEDEFAULTTABLESPACE语句设置数据库默认表空间。可以使用ALTERDATABASEDEFAULTTEMPORARYTABLESPACE语句设置数据库的默认临时表空间。将HRTBS1表空间设置为案例数据库的默认表空间。ALTERDATABASEDEFAULTTABLESPACEHRTBS1;将HRTEMP1表空间设置为默认临时表空间ALTERDATABASEDEFAULTTEMPORARYTABLESPACEHRTEMP1;将temp_group临时表空间组设置为默认临时表空间。ALTERDATABASEDEFAULTTEMPORARYTABLESPACEtemp_group;5.2.7表空间的备份对表空间进行联机备份备份的基本步骤为(1)使用ALTERTABLESPACE…BEGINBACKUP语句将表空间设置为备份模式;(2)在操作系统中备份表空间所对应的数据文件;(3)使用ALTERTABLESPACE…ENDBACKUP语句结束表空间的备份模式。备份案例数据库的HRTBS1表空间。ALTERTABLESPACEHRTBS1BEGINBACKUP;复制HRTBS1表空间的数据文件HRTBS1_1.DBF到目标位置。ALTERTABLESPACEHRTBS1ENDBACKUP;5.2.8删除表空间可以使用DROPTABLESPACE语句删除表空间如果表空间的数据文件不是空的,需要带有INCLUDINGCONTENTS子句;如果在删除表空间的同时还要删除操作系统中的数据文件,则需要带有ANDDATAFILES子句;如果表空间中的对象被其它表空间引用,则还需要带有CASCADECONSTRAINTS子句。删除HRUNDO1表空间。DROPTABLESPACEHRUNDO1INCLUDINGCONTENTS;删除HRUNDO1表空间,同时删除其所对应的数据文件。DROPTABLESPACEHRUNDO1INCLUDINGCONTENTSANDDATAFILES;删除HRUNDO1表空间,同时删除其所对应的数据文件,以及其他表空间中与HRUNDO1表空间相关的参照完整性约束。DROPTABLESPACEHRUNDO1INCLUDINGCONTENTSANDDATAFILESCASCADECONSTRAINTS;5.2.9查询表空间信息V$TABLESPACE:从控制文件中获取的表空间名称和编号信息。DBA_TABLESPACES:数据库中所有表空间的信息。DBA_TABLESPACE_GROUPS:表空间组及其包含的表空间信息查询案例数据库中各个表空间的名称、区的管理方式、段的管理方式、表空间
类型等信息。SELECTTABLESPACE_NAME,EXTENT_MANAGEMENT,ALLOCATION_TYPE,CONTENTSFROMDBA_TABLESPACES;5.3数据文件的设置与管理数据文件介绍创建数据文件修改数据文件的大小改变数据文件的可用性改变数据文件的名称或位置查询数据文件的信息5.3.1数据文件介绍Oracle数据库的数据文件是用于保存数据库中数据的文件,系统数据、数据字典数据、临时数据、索引数据、应用数据等都物理地存储在数据文件中。Oracle数据库中有一种特殊的数据文件,称为临时数据文件,属于数据库的临时表空间。临时数据文件中的内容是临时性的,在一定条件下自动释放。5.3.2创建数据文件数据文件依附于表空间而存在,创建数据文件就是向表空间添加文件在创建数据文件时应该根据文件数据量的大小确定文件的大小以及文件的增长方式。语法ALTERTABLESPACE…ADDDATAFILEALTERTABLESPACE…ADDTEMPFILE向USERS表空间中添加一个大小为10MB的数据文件。ALTERTABLESPACEUSERSADDDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS03.DBF'SIZE10M;向TEMP表空间中添加一个大小为5MB的临时数据文件。ALTERTABLESPACETEMPADDTEMPFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\TEMP03.DBF'SIZE5M;5.3.3修改数据文件的大小方法设置数据文件为自动增长方式。手工改变数据文件的大小。设置数据文件为自动增长方式创建时设置数据文件为自动增长创建后修改数据文件为自动增长AUTOEXTENDONNEXT…MAXSIZE…|UNLIMITED手工改变数据文件的大小ALTERDATABASEDATAFILE…RESIZE…5.3.4改变数据文件的可用性概念可以通过将数据文件联机或脱机来改变数据文件的可用性。
在下面几种情况下需要改变数据文件的可用性:要进行数据文件的脱机备份时,需要先将数据文件脱机;需要重命名数据文件或改变数据文件的位置时,需要先将数据文件脱机;如果Oracle在写入某个数据文件时发生错误,会自动将该数据文件设置为脱机状态,并且记录在警告文件中。排除故障后,需要以手动方式重新将该数据文件恢复为联机状态。数据文件丢失或损坏,需要在启动数据库之前将数据文件脱机。(1)归档模式下数据文件可用性的改变数据文件可用性的改变ALTERDATABASEDATAFILE…ONLINE|OFFLINE临时数据文件可用性的改变ALTERDATABASETEMPFILE…ONLINE|OFFLINE将USERS表空间的数据文件USERS02.DBF脱机ALTERDATABASEDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'OFFLINE;将USERS表空间的数据文件USERS02.DBF联机ALTER
DATABASE
DATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBF'ONLINE;在归档模式下,将数据文件联机之前需要使用RECOVERDATAFILE语句对数据文件进行恢复。5.3.5改变数据文件的名称或位置改变同一个表空间中数据文件的名称或位置ALTERTABLESPACLE…RENAMEDATAFILE…TO改变多个表空间中数据文件的名称或位置ALTERDATABASERENAMEFILE…TO注意改变数据文件的名称或位置时,Oracle只是改变记录在控制文件和数据字典中的数据文件信息,并没有改变操作系统中数据文件的名称和位置,因此需要DBA手动更改操作系统中数据文件的名称和位置。1.改变同一个表空间中的数据文件名称或位置改变同一个表空间中的数据文件的名称或位置,可以在表空间级别进行,将改变数据文件名称或位置的操作对系统的影响降低到最小。其步骤为:将数据文件所属表空间设置为脱机状态;在操作系统中改变数据文件的名称或位置执行ALTERTABLESPACE…RENAMEDATAFILE…TO语句,修改数据字典和控制文件中与该数据文件相关的信息将数据文件所属表空间设置为联机状态。将案例数据库中USERS表空间的数据文件USERS01.DBF移动到D:\APP\ADMINISTRATOR\ORADATA目录中。ALTERTABLESPACEUSERSOFFLINE;HOSTCOPYD:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS01.DBFD:\APP\ADMINISTRATOR\ORADATA\USERS01.DBFALTERTABLESPACEUSERSRENAMEDATAFILE'D:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS01.DBF'TO'D:\APP\ADMINISTRATOR\ORADATA\USERS01.DBF'ALTERTABLESPACEUSERSONLINE;2.改变多个表空间中的数据文件的名称或位置如要要在数据库级别一次性完成所有数据文件名称或位置的修改,必须关闭数据库,将数据库启动到加载状态下进行。步骤为:关闭数据库;启动数据库到加载状态(MOUNT);在操作系统中修改数据文件的名称或位置;执行ALTERDATABASE…RENAMEFILE…TO语句,修改数据字典和控制文件中与这些数据文件相关的信息;打开数据库。将USERS表空间中的USERS02.DBF文件和UNDOTBS1表空间中的UNDOTBS01.DBF文件移动到D:\APP\ADMINISTRATOR\ORADATA目录中。SHUTDOWNIMMEDIATEHOSTCOPYD:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\USERS02.DBFD:\APP\ADMINISTRATOR\ORADATA\USERS01.DBFHOSTCOPYD:\APP\ADMINISTRATOR\ORADATA\HUMAN_RESOURCE\UNDOTBS01.DBFD:\APP\ADMINISTRATOR\ORADATA\UNDOTBS01.DBFSTARTUPMOUNTALTERDATABASERENAMEFILE
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUMAN_RESOURCE\USERS002.DBF',
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUMAN_RESOURCE\TOOLS01.DBF'TO
'D:\ORACLE\PRODUCT\10.2.0\ORADATA\USERS002.DBF','D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUMAN_RESOURCE\TOOLS001.DBF';ALTERDATABASEOPEN;5.3.6查询数据文件信息DBA_DATA_FILES:包含数据库中所有数据文件的信息,包括数据文件所属的表空间、数据文件编号等。DBA_TEMP_FILES:包含数据库中所有临时数据文件的信息。V$DATAFILE:包含从控制文件中获取的数据文件信息。V$TEMPFILE:包含所有临时文件的基本信息。查询当前数据库所有的表空间及其数据文件信息。SELECTTABLESPACE_NAME,FILE_NAMEFROMdba_data_files;5.4控制文件的设置与管理控制文件介绍创建控制文件添加多路复用控制文件备份控制文件删除控制文件查询控制文件信息5.4.1控制文件介绍控制文件是一个很小的二进制文件。控制文件描述了整个数据库的结构。在加载数据库时,实例必须首先通过初始化参数文件找到数据库的控制文件。每个数据库至少拥有一个控制文件。一个数据库也可以同时拥有多个控制文件。分配在不同的物理硬盘中,以免数据库或硬盘损坏时,能够利用备份的控制文件启动数据库实例,可以提高数据库的可靠性。控制文件的内容数据库名称和标识;数据库创建的时间;表空间名称;数据文件和重做日志文件的名称和位置;当前重做日志文件序列号;数据库检查点的信息;回退段的开始和结束;重做日志的归档信息;备份信息;数据库恢复所需要的同步信息。5.4.2创建控制文件CREATECONTROLFILE[REUSE][SET]DATABASEdatabase[LOGFILElogfile_clause]RESETLOGS|NORESETLOGS[DATAFILEfile_specification][MAXLOGFILES][MAXLOGMEMBERS][MAXLOGHISTORY][MAXDATAFILES][MAXINSTANCES][ARCHIVELOG|NOARCHIVELOG][FORCELOGGING][CHARACTERSETcharacter_set创建控制文件的基本步骤制作数据库中所有的数据文件和重做日志文件列表SELECTMEMBERFROMV$LOGFILE;SELECTNAMEFROMV$DATAFILE;SELECTVALUEFROMV$PARAMETERWHERENAME='CONTROL_FILES';如果数据库仍然处于运行状态,则关闭数据库SHUTDOWNIMMEDIATE在操作系统级别备份所有的数据文件和联机重做日志文件启动实例到NOMOUNT状态STARTUPNOMOUNT利用前面得到的文件列表,执行CREATECONTROLFILE创建一个新控制文件。在操作系统级别对新建的控制文件进行备份如果数据库重命名,则编辑DB_NAME参数来指定新的数据库名称如果数据库需要恢复,则进行恢复数据库操作如果创建控制文件时指定了NORESTLOGS,可以完全恢复数据库。RECOVERDATABASE;如果创建控制文件时指定了RESETLOGS,则必须在恢复时指定USINGBACKUPCONTROLFILE。RECOVERDATABASEUSINGBACKUPCONTROLFILE;打开数据库如果数据库不需要恢复或已经对数据库进行了完全恢复,则可以正常打开数据库。ALTERDATABASEOPEN;如果在创建控制文件时使用了RESETLOGS参数,则必须指定以RESETLOGS方式打开数据库。ALTERDATABASEOPENRESETLOGS;5.4.3添加多路复用控制文件关闭数据库。使用操作系统命令拷贝一个控制文件的副本到新的位置,并重新命名;或者改变控制文件的名称或位置。编辑初始化参数文件中的CONTROL_FILES参数,将新添加的控制文件的名称添加到控制文件列表中,或修改控制文件列表中原有控制文件的名称与位置。重新启动数据库。当前数据库的控制文件为CONTROL01.CTL和CONTROL02.CTL,再添加一个名为CONTROL03.CTL的控制文件。ALTERSYSTEMSETCONTROL_FILES='D:\APP\ADMINISTRATOR\ORADATA\HUMAN_REOSUECE\CONTROL01.CTL','D:\APP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- OPT英语初级模拟试题(含详细答案解析)
- 阳台防水找坡及地漏周边加强方案
- 铣工技能鉴定考核试题库及答案
- 化妆品专柜BA(美容顾问)产品知识培训方案
- 2026年信息系统项目的成本分析试题及答案
- 2026年上半年教师资格证考试《保教知识与能力》(幼儿园)真题及答案
- 湖南省A佳教育2024-2025学年高三上学期语文期中联考卷(含答案)
- 浙江省杭州市萧山区钱江片2025-2026学年九年级上学期语文期中试卷(含答案)
- 口腔医学专业临床技能测试卷及答案
- 独山县2025年数学四年级第二学期期末质量检测模拟试题含答案
- 2025年新能源汽车售后服务网络项目可行性研究报告及总结分析
- 河南省南阳市2025-2026学年高三上学期期中考试历史试题(原卷版)
- 驾校安全培训考试题及答案解析
- 艺术形态作品赏析课件
- 国际减灾日培训课件
- 鼠疫应急培训课件
- 工程标的供货方案(3篇)
- 新宪法宣传课件
- 员工环保培训课件内容
- 《中国文化概论》全套教学课件
- 铁道车辆电气装置检查与维护项目四25T客车电气系统72课件
评论
0/150
提交评论