版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ORACLE
数据库培训教程12内容纲要:
数据库基础
DBA基本管理
数据库备份与恢复
数据库性能调整
SQL/PL*SQL22024年5月13日
数据库管理员是一个或一组全面负责管理和控制数据库系统的人员。
简称:DBA(DataBaseAdministrator)序32024年5月13日数据库管理员的主要职责了解ORACLE数据库的体系结构负责数据库管理系统的安装和升级建立数据库启动和关闭数据库管理和监控数据库用户管理数据库特权管理存储空间数据库性能调整42024年5月13日数据库管理员的主要职责(续)备份和恢复数据库问题发现及处理52024年5月13日第一章
ORACLE发展综述及前景62024年5月13日数据管理得发展和特点人工管理阶段文件系统阶段数据库系统阶段72024年5月13日人工管理阶段(50年代中期)
早期的数据处理都是通过手工进行的,因为当时的计算机主要用于科学计算。应用程序2数组2......
手工处理数据有两个缺点:第一,应用程序之间的依赖性太强,不独立;第二,数据组和数据组之间可能有许多重复数据,造成数据冗余。应用程序1数组1应用程序N数组N82024年5月13日文件系统阶段(50年代中期-60年代中期)
文件系统的最大特点是解决了应用程序和数据之间的一个公共接口问题,使得应用程序采用统一的存取方法来操作数据。不过,文件系统只是简单地存放数据,相互之间并没有有机的联系。应用程序1应用程序2应用程序N数据库管理系统92024年5月13日数据库系统阶段(60年代后期-现在)
数据库系统由计算机软、硬件资源组成,它实现了有组织地、动态地存储大量有关联数据,方便多用户访问,它与文件系统的主要区别是数据的充分共享、交叉访问、与应用程序的高度独立性。
数据库管理系统对数据的处理方式和文件系统不同,它把所有应用程序中所使用的数据汇集在一起,并以记录为单位存储起来,以便于应用程序查询和使用。数据库系统和文件系统的区别是:数据库对数据的存储是按照同一结构进行的,不同的应用程序都可以直接操作这些数据(即对应用程序的高度独立性)。102024年5月13日数据库系统的组成数据应用程序用户软件硬件112024年5月13日ORACLE发展历史
LarryEllison(拉里.埃利森)作为Oracle公司的董事长兼首席执行官于1977年和RobertMinor(罗伯特.迈诺)一道在Redwood创建了Oracle公司。他们率先推出了基于IBMSystem/R(关系)模型的关系数据库管理系统(RDBMS),同时它也是第一个使用IBM结构化查询语言(SQL)的RDBMS。
今天,OracleRDBMS支持80多种不同工作环境,这些环境包括IBM大型机、DECVAX小型机,基于UNIX的小型机、WindowsNT以及多种专利硬件操作系统平台。很显然,Oracle是世界上最大的RDBMS开发商。从收入、软件和服务的角度讲,Oracle是仅次于Microsoft的第二大软件公司。
什么是ORACLEORACLE的中文含义为“神谕”122024年5月13日ORACLE发展里程碑1977 Oracle公司成立1979 商用RDBMS1983 可移植的RDBMS1984 可移植的(SQL*)工具集1986 客户/服务器RDBMS1987 CASE工具1988 发布Oracle61990 基于客户机的工具集1992 发布UNIX版本的Oracle71993 发布合作开发环境(CDE)
发布OracleMediaServer(媒体服务器)1994 发布PC版本的Oracle71996 发布OracleUniversalServer1997 发布Oracle8132024年5月13日ORACLE产品及其组成数据服务器应用服务器开发工具决策支持产品应用软件工作组产品142024年5月13日ORACLE的特点支持大型数据库和多用户的高性能事物处理具有可移植性、可兼容性和可连接性先进性152024年5月13日支持大型数据库和多用户的高性能事物处理
Oracle支持最大的数据库,其大小10万G,支持上万个并发用户,在同一数据上实现各种数据应用,并司数据争用最小,保证数据一致性。系统维护具有很高的性能,Oracle每天可连接24小时工作。Oracle将存放在多台计算机上的数据组合成一个逻辑数据库,可被全部网络用户存取。分布式系统像集中式数据库一样具有用户透明性和数据一致性。162024年5月13日具有可移植性、可兼容性和可连接性
由于Oracle软件可在许多不同的操作系统上运行,因而在Oracle上所开发的应用可移植到任何操作系统,只需很少修改或不需要修改。Oracle软件同工业标准相兼容,包括许多工业标准的操作系统,所开发系统可在任何操作系统上运行。可连接性是指Oracle允许不同类型的计算机和操作系统通过网络共享信息。172024年5月13日先进性
Oracle是数据库领域的排头兵,从最早的关系型数据库到Oracle8,一直到最新的全面支持Internet的数据库Oracle8i(它把数据库和Internet彻底地结合在一起),其技术都处于领先地位。182024年5月13日ORACLE的未来基于INTERNET的网络应用e_business企业级应用(CRM、ERP)192024年5月13日第二章ORACLE的体系结构202基本概念数据库表空间文件实例212024年5月13日数据库 数据库是一个数据的集合,Oracle能够提供关系模式存储和访问数据的方法,因此Oracle是一种关系型数据库管理系统(RDBMS),“数据库”不只是指物理上的数据,也指在本章中描述的物理、存储及进程对象的一个组合。 除了以关系格式存储数据,Oracle8支持面向对象结构如抽象数据类型及方式。 无论是面向对象结构还是关系结构,Oracle数据库都将其数据存储在文件中。222024年5月13日表空间
表空间是数据库的逻辑划分,每个数据库至少有一表空间(叫system表空间),为便于管理及提高运行效率,其他表空间可供用户群及应用系统共同使用。一个表空间只能属于一个数据库。232024年5月13日文件
每个表空间由同一磁盘上的一个或多个文件组成,这些文件叫做数据文件。一个数据文件只能属于一个表空间。242024年5月13日实例
数据库实例(也称为服务器server)就是用来访问一个数据库文件集的一个存储结构及后台进程的集合。252024年5月13日ORACLE的体系结构
体系结构概述物理结构
数据文件、日志文件、控制文件、参数文件系统全局区(SystemGlobalArea)
共享池、数据缓冲区、日志缓冲区进程
用户进程、服务器进程、后台进程262024年5月13日总观Oracle内存结构进程文件272024年5月13日共享池数据缓冲区日志缓冲区SGA数据文件日志文件参数文件控制文件DBWRARCHCKPTLGWRPMONLCKnRECOSMON存储介质ServerUserUserUserORACLE的体系结构
体系结构图示282
数据文件日志文件控制文件参数文件ORACLE的体系结构物理结构292
数据文件(DataFile)是物理存储ORACLE数据库数据的文件。其特点如下:每一个数据文件只与一个数据库相联系。数据文件一旦被建立则不能修改其大小。一个表空间可包含一个或多个数据文件。ORACLE的体系结构物理结构302
日志文件(LogFile)记录所有对数据库数据的修改,以备恢复数据时使用。其特点如下:每一个数据库至少包含两个日志文件组。日志文件组以循环方式进行写操作。每一个日志文件成员对应一个物理文件。ORACLE的体系结构物理结构312
日志开关(LogSwitch)是为实现日志文件组的循环使用而设置的。出现日志开关的情况如下:当一个日志文件组被填满时关闭数据库时
DBA手动转移日志开关ORACLE的体系结构物理结构322日志文件写操作图示LogFile1LogFile2Group1Group2Member2.1Member1.1ORACLE的体系结构物理结构332
镜像日志文件是为防止日志文件的丢失,在不同磁盘上同时维护两个或多个联机日志文件的副本。其特点如下:每个日志文件组至少包含两个日志文件成员。每组的成员数目相同。同组的所有成员同时被修改。同组的成员大小相同,不同组的成员大小可不同。ORACLE的体系结构物理结构342ORACLE的体系结构物理结构镜像日志文件Group1Group2Group3Disk1Disk2MemberAMemberAMemberAMemberBMemberBMemberB352
控制文件(ControlFile)是一个较小的二进制文件,用于描述数据库结构。描述信息如下:数据库建立的日期。数据库名。数据库中所有数据文件和日志文件的文件名及路径。恢复数据库时所需的同步信息。要点注意:在打开和存取数据库时都要访问该文件。镜像控制文件。记录控制文件名及路径的参数为:
CONTROL_FILESORACLE的体系结构物理结构362
参数文件(ParameterFile)是一个文本文件,可直接使用操作系统下的文本编辑器对其内容进行修改。该文件只在建立数据库或启动实例时才被访问,在修改该文件之前必须关闭实例。初始参数文件:init.ora生成参数文件:initSID.oraconfig.oraORACLE的体系结构物理结构372参数文件的作用:确定存储结构的大小。设置数据库的全部缺省值。设置数据库的范围。设置数据库的各种物理属性。优化数据库性能。ORACLE的体系结构物理结构382参数文件中参数的数据类型:整型例:DB_BLOCK_SIZE=2048字符型例:DB_NAME=‘ora7’逻辑型例:CHECKPOINT_PROCESS=trueORACLE的体系结构物理结构392共享池数据库缓冲区日志缓冲区ORACLE的体系结构系统全局区402实例(INSTANCE)是存取和控制数据库的软件机制,它由系统全局区(SystemGlobalArea,简称SGA)和后台进程组成。ORACLE的体系结构系统全局区412Oracle实例PMON服务器进程LCKnRECOSMONSNPnSnnnSharedPoolDatabaseBufferCacheSGARedoLog
BufferCKPTARCHDBWRLGWR用户进程DnnnOracleInstancePnnn422024年5月13日
SGA是ORACLE系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。ORACLE的体系结构系统全局区432共享池(SharedPool)由共享SQL区和数据字典区组成。参数SHARED_POOL_SIZE确定共享池的大小。共享SQL区包括
SQL或PL/SQL语句的文本
SQL或PL/SQL语句的语法分析形式
SQL或PL/SQL语句的执行方案数据字典区用于存放数据字典信息行。ORACLE的体系结构系统全局区442数据缓冲存储区(DatabaseBufferCache)用于存储从数据文件中读的数据的备份。数据缓冲区数据文件DB_BLOCK_SIZE
确定数据块的大小,一般为2K或4K,对于大数据块的数据库,此参数值为物理块的倍数。DB_BLOCK_BUFFERS
确定数据块的数目。ORACLE的体系结构系统全局区452数据缓冲存储区分为
脏列表包括被修改过但尚未写到数据文件的缓冲块。
LRU(LeastRecentlyUsed)列表
包括空闲缓冲块、正在存取的缓冲块、已被修改但尚未移到脏列表的缓冲块。ORACLE的体系结构系统全局区462日志缓冲存储区(LogBuffer)以记录项的形式备份数据库缓冲区中被修改的缓冲块,这些记录将被写到日志文件中。LOG_BUFFER
确定日志缓冲区的大小。日志缓冲区日志文件ORACLE的体系结构系统全局区472用户进程服务器进程后台进程ORACLE的体系结构进程482用户进程当用户运行一个应用程序时,就建立一个用户进程。ORACLE的体系结构用户进程492服务器进程处理用户进程的请求。处理过程分析SQL命令并生成执行方案。从数据缓冲存储区中读取数据。将执行结果返回给用户。ORACLE的体系结构服务器进程502后台进程为所有数据库用户异步完成各种任务。主要的后台进程有
DBWR数据库写进程
LGWR日志写进程
CKPT检查点写进程
SMON系统监控进程
PMON进程监控进程
ARCH归档进程
RECO恢复进程
LCKn封锁进程ORACLE的体系结构后台进程512DBWR(DataBaseWriter)
将数据缓冲区中所有修改过的缓冲块数据写到数据文件中,并使用LRU算法来保持缓冲区中的数据块为最近经常使用的,以减少I/O次数。该进程在启动实例时自动启动。ORACLE的体系结构后台进程522DBWR进行写操作的情况:脏列表达到最低限制。相当于参数DB_BLOCK_WRITE_BATCH值的一半。一个进程在LRU列表中扫描指定数目的缓冲块,未找到空闲缓冲块。参数DB_BLOCK_MAX_SCAN_CNT确定扫描数目。ORACLE的体系结构后台进程532DBWR进行写操作的情况:出现超时3秒钟内该进程未活动,则该进程将在LRU列表中查找尚未查找的缓冲块,这组缓冲块的数目相当于参数DB_BLOCK_WRITE_BATCH值的2倍。出现检查点。ORACLE的体系结构后台进程542LGWR(LogWriter)
将日志缓冲区中的所有记录项写到日志文件中。该进程在启动实例时自动启动。ORACLE的体系结构后台进程552LGWR进行写操作的情况:用户进程提交一个事务(Commit)
日志缓冲区达到1/3范围
DBWR对一个检查点需要清除缓冲块出现超时(3秒钟内未活动,则进行一次写操作。)ORACLE的体系结构后台进程562检查点(Checkpoint):在检查点出现期间,DBWR进程将数据缓冲区中的所有脏缓冲块写到数据文件中,LGWR进程将日志缓冲区中的所有记录项写到日志文件中,以确保上一个检查点至今修改过的所有数据块都被写到磁盘上。ORACLE的体系结构后台进程572检查点:预定数目的记录项被填满。参数LOG_CHECKPOINT_INTERVAL确定了预定数目。设置指定的秒数。参数LOG_CHECKPOINT_TIMEOUT确定了间隔秒数。每个日志开关处关闭实例时
DBA手动操作。表空间离线。ORACLE的体系结构后台进程582CKPT(Checkpointer)
在控制文件中记录检查点。参数CHECKPOINT_PROCESS确定了检查点的启动/不启动状态。若CKPT进程不启动,则该进程的工作将由LGWR进程代劳。(如果数据库的数据文件过多,这样操作会降低系统性能。)ORACLE的体系结构后台进程592ARCH(Archiver)
在日志文件组出现切换时,将旧日志文件的内容拷贝到脱机存储介质上,出现介质失败时用于恢复数据。
LOG_ARCHIVE_START确定了该进程的启动/不启动状态。ARCH存储介质ORACLE的体系结构后台进程602ARCH(Archiver)LOG_ARCHIVE_DEST当数据库在归档模式下操作时,该参数确定了日志文件的归档目标。
LOG_ARCHIVE_FORMAT当数据库在归档模式下操作时,该参数确定了归档日志文件的缺省文件名格式。ARCH存储介质ORACLE的体系结构后台进程612SMON(SystemMonitor)负责完成自动实例恢复。该进程在启动实例时自动启动。回收用户不在使用的临时段所站的空间。连接所有数据文件中空闲表空间。ORACLE的体系结构后台进程622ORACLE的体系结构后台进程PMON(Process)撤消异常中断的用户进程,并释放该进程已获得的系统资源或锁。回滚未提交操作。632024年5月13日RECO(Recover)在分布式操作的情况下,恢复一个事务的失败。LCKn(Lock)在并行服务器系统间加锁,最多可加10个锁,分别为LCK0,LCK1,
,LCK9。ORACLE的体系结构后台进程642处理SQL语句的三个阶段
语法分析(parse)执行(execute)返回指令(fetch)Server共享池数据缓冲区日志缓冲区SGAUserUserUserSQL>SELECTenameFROMemp;Server共享池数据缓冲区日志缓冲区SGAUserUserUserSMITHALLENWARD
ORACLE的体系结构示例652
SELECT操作SQL>SELECTsalFROMempWHEREjob=‘CLERK’;Server共享池数据缓冲区SGAUserUserUserB1B2EMPTableBlock1Block2ORACLE的体系结构示例662UPDATE操作
为了支持读一致性,恢复和回滚,所有修改操作需要回滚段。修改操作执行:将数据块送到数据缓冲区将回滚块送到数据缓冲区在修改行上设置行锁保存回滚数据到回滚段块将修改写到数据块ORACLE的体系结构示例672
UPDATE操作SQL>SELECTsalFROMempWHEREjob=‘CLERK’;Server1UserUserUser1Server2UserUserUser2共享池数据缓冲区SGAB1B2R2R1EMPTableBlock1Block2RB01R1R2DataFile1DataFile2SQL>UPDATEempSETsal=sal*1.1WHEREjob=‘CLERK’;ORACLE的体系结构示例682第三章ORACLE的存储逻辑结构692ORACLE的逻辑结构
ORACLE的逻辑结构是由一个或多个表空间组成。一个表空间由一组分类段组成一个段由一组范围组成一个范围由一批数据库块组成一个数据库块对应一个或多个物理块702逻辑结构示意图DatabaseFileNextExtent5MBSegment20MBInitialExtent15MBDatabaseBlocksTablespace712
数据库块(DatabaseBlock)是数据库使用的I/O最小单元,又称逻辑块或ORACLE块。一个数据库块对应一个或多个物理块,块的大小由参数DB_BLOCK_SIZE确定。ORACLE的逻辑结构数据库块722024年5月13日数
据
库
块
的
格
式CommandandVariableHeaderTableDirectoryRowDirectoryFreeSpaceROWDATAORACLE的逻辑结构数据库块732024年5月13日标题:包括通用的块信息,如块地址/段类型等,最佳大小为85-100bytes。表目录:存储聚集中表的信息,这些信息用于聚集段。行目录:包括这块中的有效行信息,允许使用每行开头的2bytes。自由空间:这块中能插入或修改的一组空间。行数据:存储表或索引的数据。ORACLE的逻辑结构数据库块742
PCTFREE用于行的UPDATE操作,在遇到PCTFREE后,这块被填满且不能进行INSERT操作。ORACLE的逻辑结构数据库块752024年5月13日控制PCTFREE参数值
设定一个较小的PCTFREE参数值允许插入更多的记录.要求相对较少的数据块来存储数据.会造成行迁移.链接会因为源于同一个逻辑行的数据被分配到不同的物理位置,而影响运行性能.762024年5月13日控制PCTFREE参数值
设定一个较大的PCTFREE参数值保留更多的空间用来做更新操作.要求相对较多的数据块来存储数据.会减少行迁移.772024年5月13日PCTUSED用于行的INSERT的操作,当块的百分比小于PCTUSED时,可通过行DELETE或UPDATE来减少列存储。ORACLE的逻辑结构数据库块782024年5月13日设定一个较大的PCTUSED参数值因为数据块不总是空闲,故而会降低Processingcosts.会造成空间的浪费.设定一个较大的PCTUSED参数值因为数据块会经常空闲,故而会增大Processingcosts.提高空间利用率控制PCTUSED参数值
792024年5月13日ROWDATAPCTFREE=20%PCTUSED=40%PCTFREE=20%PCTUSED=40%FreeSpaceORACLE的逻辑结构数据库块802
范围(Extent)是数据库存储空间分配的逻辑单位,一个范围由一组数据库块组成,范围是由段分配的,分配的第一个范围称初始范围,以后分配的范围称增量范围。ORACLE的逻辑结构范围812FREELISTS
为INSERT操作保留的空闲块列表数目。OPTIMAL
为回滚段指定最佳大小,默认值为NULL。PCTINCREASE
每个增量范围的增量百分比,默认值为50%。MINEXTENTS这个段中可分配的范围最大数目,默认值为1。MAXEXTENTS
这个段中可分配的范围最大数目,默认值为99。NEXT
增量范围的大小,默认值为5个数据库块。逻
辑
结
构
范
围控制范围分配的参数INITIAL初始范围的大小,默认值为5个数据库块。INITIALNEXTMAXEXTENTSMINEXTENTSPCTINCREASEOPTIMALFREELISTS822
段(Segment)是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。ORACLE的逻辑结构段832引导段(BootstrapSegment)存储数据字典表的定义回滚段(RollbackSegment)存储为读一致性、回滚或恢复用数据临时段(TemporarySegment)存储排序操作期间建立的临时表的数据索引段(IndexSegment)存储表或聚集上最佳查询的所有索引数据段的分类数据段(DataSegment)存储表或聚集的所有数据ORACLE的逻辑结构段842
表空间(Tablespace)是数据库中物理编组的数据仓库,对应一个或多个数据文件,表空间的大小是它所对应的数据文件大小的总和。ORACLE的逻辑结构表空间852SystemTablespaceDataTablespaceTableTableTableTableTableTableTableIndexIndexIndexIndexTableTableTableTableTableIndexIndexIndexIndexTableTableTableClusterTableTableIndexIndexIndexClusterClusterDBFiles1DBFiles2DBFiles3ORACLE的逻辑结构表空间862
ORACLE数据库中的数据逻辑存储在表空间中,物理存储在数据文件中。数据库结构数据文件日志文件控制文件参数文件物理结构表空间段范围数据库块逻辑结构ORACLE的逻辑结构数据库结构872第四章数据库的安装882硬件结构终端方式服务器终端1终端3终端5终端2终端4终端6服务器微机1微机3微机5微机2微机4微机6客户/服务器方式1客户/服务器方式2主服务器微机1微机3微机5微机2微机4微机6子服务器微机1微机3微机5微机2微机4微机6892数据库的安装硬件需求服务器
CPUIntel486
网卡支持TCP/IP协议
内存16M
外存1GB客户
Intel486
支持TCP/IP协议
16M
400MB902服务器
操作系统
TCP/IP协议
客户
操作系统
TCP/IP协议
数据库的安装软件需求9121.修改OS参数
SEMMNI20
SEMMNS60
SHMMAX20971520
SHMMNI100
SHMSEG15
2.重新启动系统
3.建立一个ORACLE用户(DBA组),并登录到ORACLE用户下。
数据库的安装安装示例9224.设置环境变量
vi.profile
追加下列语句:
ORACLE_HOME=/目录名/用户名
(/oracle/oracle7)
ORACLE_SID=数据库名(ora7)
TK2DEV=终端类型(ansi)数据库的安装安装示例9325.读介质
磁盘:
$.切入root用户#mkdir/cdrom#chmod777/cdrom将光盘放入光驱内#mount-fRCKRDG,lower/dev/cd0/cdrom
数据库的安装安装示例9426.设置安装环境
$换入oracle用户$cd/cdrom/orainst$orainst$su
#cd/home/oracle/orainst
#./rootpre.sh设置安装环境
#exit
$数据库的安装安装示例952
$tcpctlstartSQLNETV1
或$lsnrctlstartSQLNETV2数据库的安装安装示例962一个产品对应一个子目录公共目录(命令)bin管理和维护软件dbs有关安装的软件orainst数据库的安装安装示例972024年5月13日DBA应用程序
SQL*DBA
SQL*Loader
Export/ImportSQL*DBA允许DBA控制和监视ORACLE数据库。(只有DBA特权的用户可以使用)982024年5月13日DBA应用程序
SQL*DBA
SQL*Loader
Export/Import命令执行方式:行命令:$svrgrm30SQLDBA>输入行命令992024年5月13日DBA应用程序
SQL*DBA
SQL*Loader
Export/ImportSQL*Loader将标准操作系统文件(文本文件或C数据格式文件)中的数据安装到ORACLE数据基表中。(DBA和用户都可以使用)1002024年5月13日DBA应用程序
SQL*DBA
SQL*Loader
Export/ImportExport/Import允许DBA卸出/恢复ORACLE格式的数据。1012024年5月13日ORACLE特殊用户
internal
system
sysinternal
只能在服务器端使用的超级用户,它具有DBA的所有特权。连接方式与普通用户相同。1022024年5月13日ORACLE特殊用户
internal
system
sysSystem(manager)
在建立数据库时自动建立的一个超级用户,它拥有显示管理信息的附加表和视图,以及由ORACLE工具使用的所有表和视图。连接方式与普通用户相同。1032024年5月13日ORACLE特殊用户
internal
system
sysSys(change_on_install)
只能在服务器端使用的超级用户,它具有DBA的所有特权。连接方式与普通用户相同。1042024年5月13日第五章数据库的启动和关闭1052数据库的启动启动步骤:启动ServerManager连接INTERNAL用户启动实例读参数文件分配SGA启动后台进程打开后台跟踪文件1062数
据
库
的
启
动启动状态状态描述NOMOUNTMOUNTOPEN仅仅启动例程,用来创建数据库例程启动并同时打开控制文件,用来改变文件结构和控制文件的标志使数据库对所有用户可用1072数据库的启动STARTUPMOUNTNOMOUNTmount_options::=PFILE=filenameRESTRICTFORCEOPENRECOVERdatabasemount_optionsPARALLELEXCLUSIVESHAREDRETRY启动语法1082数据库的启动约束条件:
Open:允许用户进入数据库Mount:允许某些DBA操作,但是不允许用户进入数据库Nomount:创建SGA区并启动后台进程,但不允许进入数据库Exclusive:只允许当前的用户例程进入数据库1092数据库的启动约束条件:Parallel:允许多个例程访问数据库(OracleParallelServer)SharedRetry:提供一种并行的选项,指明一个并行例程应该在5秒钟后启动Pfile=parfile:允许标识一个非缺省的初始化文件1102024年5月13日约束条件:
Force:在启动实例前,强行关闭当前实例。
Restrict:数据库启动后,只有DBA特权的用户才能访问数据库。
Recover:在启动实例时,用日志文件做数据库恢复。数据库的启动1112024年5月13日关闭步骤:启动ServerManager连接INTERNAL用户关闭数据库数据库的关闭1122024年5月13日SHUTDOWNIMMEDIATEABORTNORMAL关闭语法数据库的关闭1132024年5月13日数
据
库
的
关
闭约束条件:Normal处理完用户提交的所有事务,等待用户退出连接后,关闭数据库、卸载数据库、关闭实例。在下次启动实例时,不做实例恢复操作。此方式是数据库关闭的缺省方式。1142约束条件:Immediate结束正在处理的SQL语句、回滚未提交事务,不等待当前的用户退出数据库,关闭数据库、卸载数据库、关闭实例。在下次启动实例时,不做实例恢复操作。数
据
库
的
关
闭1152024年5月13日约束条件:Abort最快的一种关闭数据库方式。不等待当前用户退出联结,而且不回滚当前未提交操作,下次数据库启动时进行例程恢复。数
据
库
的
关
闭1162024年5月13日数据库的关闭例:用行命令关闭数据库$svrmgrlSVRMGR>connectinternalSVRMGR>shutdownabort1172练习:1.用MOUNT的方式启动数据库。2.打开数据库,通过dba_users查询当前的所有数据库用户。1182024年5月13日第六章数据库存储空间管理1192024年5月13日表空间SYSTEM表空间进行数据库操作所必须要求的表空间包含数据字典的信息、存储过程和数据库触发子的定义包括系统回滚段可以存储用户数据,但最好不要非SYSTEM表空间可以包括回滚段、临时段、应用数据、应用索引和用户空间提供了一种更加灵活的数据库管理基础1202024年5月13日CreateTablespace(OK)(Cancel)Name:DataFiles:Storage:()BringOnlineAfterCreation()LeaveOffineAfterCreation创建表空间1212024年5月13日参数说明:Name:表空间名
DataFiles:数据文件名及大小Storage:设置表空间的存储参数BringOnlineAfterCreation:表空间在线LeaveOffineAfterCreation:表空间离线1222024年5月13日行命令建立表空间:CREATETABLESPACE表空间名DATAFILE文件说明DEFAULTSTORAGE存储子句ONLINEOFFLINE,1232024年5月13日创建表空间的例子:CREATETABLESPACEuser_stuDATAFILE‘diska:user_stu1.dat’SIZE20MDEFAULTSTORAGE(INITIAL10KNEXT50KMINEXTENTS1MAXEXTENTS99PCTINCREASE10)ONLINE;1242024年5月13日SetTablespaceOnline(OK)(Cancel)Tablespace:USERS使表空间在线1252024年5月13日ALTERTABLESPACE表空间名ADDDATAFILE文件说明RENAMEDATAFILE‘文件名’TO‘文件名’DEFAULTSTORAGE存储子句
ONLINEOFFLINENORMALTEMPORARYIMMEDIATEBEGINBACKUPEND行命令修改表空间:,,,1262024年5月13日修改表空间的例子:ALTERTABLESPACEaccounting
ONLINE;1272024年5月13日SetTablespaceOffline(OK)(Cancel)Tablespace:USERS()Normal()Temporary()Immediate使表空间离线:1282024年5月13日参数说明:
Normal:ORACLE检测该离线表空间所对应的数据文件是否有问题,如果没有问题可离线。
Temporary:ORACLE检测该离线表空间所对应的数据文件是否有问题,如果有问题可离线。
Immediate:不检测该离线表空间所对应的数据文件,直接离线。1292024年5月13日DropTablespace(OK)(Cancel)Tablespace:USERSTEMPRBS[]Includingcontainedobjects[]Cascadedropofintegrityconstraints删除表空间:1302024年5月13日参数说明:
Includingcontainedobjects
删除表空间的同时,将该表空间包含的对象一并从数据库中删除。
Cascadedropofintegrityconstraints
在删除表空间包含的对象的同时,将每个模式对象所对应的约束一并从数据库中删除。数据库存储空间的管理
表空间1312024年5月13日行命令删除表空间:DROPTABLESPACE表空间名INCLUDINGCONTENTSCASCADECONSTRAINTS1322024年5月13日删除表空间的例子:DROPTABLESPACEuser_stuINCLUDINGCONTENTSCASCADECONSTRAINTS;1332024年5月13日AlterDefaultSegmentStorage(OK)(Cancel)Tablespace:USERSTEMPRBS[]InitialExtentSize:()K()M[]NextExtentSize:()K()M[]Minimum#ofExtents:[]Maximum#ofExtents:[]Pct_increase:修改缺省的段存储参数:1342024年5月13日InitialExtentSize:在表空间中创建的对象的第一个区间的缺省大小NextExtentSize:在表空间中创建的对象的第二个区间的缺省大小Mininum#ofExtents:指定区间缺省的最小值Maxnum#ofExtents:在表空间中创建的对象的缺省最大值%IncreaseNext:连续区间分配的缺省增加百分比。例:某表NextExtentSize的大小是1000字节,pctincrease
的值为10%,那么第二个区间将是1000字节,第三个区间将是1100字节,第四个区间将是1210字节参数说明:1352024年5月13日练习:1.以system/manager登录创建一个表空间TAB,存放在‘c:\temp\tab01.dbf’,大小为10M,并查看dba_tablespaces。2.在TAB的表空间下创建一个基表TEST,然后删除该TAB表空间。1362024年5月13日第七章安全管理1372(一)用户管理1382CreateUser(OK)(Cancel)Name(o)PasswordAuthentication()OSAuthenticationDefaultTablespaceTemporaryTablespaceQuotasProfile创建用户:1392024年5月13日参数说明:Name:用户名PasswordAuthentication:用户密码OSAuthentication:操作系统识别方式,设参数
OS_AUTHENT_PREFIX的值为“OPS$”。DefaultTablespace:用户对象保存的表空间TemporaryTablespace:临时用户对象保存的表空间Quotas:用户使用的表空间限量Profile:用户使用的系统资源限量1402行命令建立用户语法:CREATEUSER用户名INDENTIFIEDBY口令
EXTERNALLYDEFAULTTABLESPACE表空间名
TEMPORARYTABLESPACE表空间名
QUOTA整数K/MON表空间名
UNLIMITEDPROFILE环境文件名1412例1:建立用户sidneyCREATEUSERsidney
INDENTIFIEDBYcartonDEFAULTTABLESPACEcases_tsTEMPORARYTABLESPACEtemp_tsQUOTA5MONcases_tsQUOTA5MONtemp_tsPROFILEengineer;1422例2:建立按操作系统帐号george可存取的用户。
CREATEUSEROPS$georage
INDENTIFIEDEXTERNALLYDEFAULTTABLESPACEaccs_tsTEMPORARYTABLESPACEtemp_tsQUOTAUNLIMITEDONaccs_tsQUOTAUNLIMITEDONtemp_ts;1432AlterUser(OK)(Cancel)User:()NochangeinAuthentication(o)Changepasswordto()ChangetoOSauthenticationDefaultObjectTablespaceTempSegmentTablespaceQuotaProfileDefaultRolesSTU9STU10修改用户:1442参数说明:NochangeinAuthentication:无识别方式PasswordAuthentication:用户密码OSAuthentication:操作系统识别方式DefaultTablespace:用户对象保存的表空间TemporaryTablespace:临时用户对象保存的表空间Quotas:用户使用的表空间限量Profile:用户使用的系统资源限量DefaultRole:分配给用户的角色1452行命令修改用户:ALTERUSER用户名INDENTIFIEDBY口令
EXTERNALLYDEFAULTTABLESPACE表空间名
TEMPORARYTABLESPACE表空间名
QUOTA整数K/MON表空间名
UNLIMITEDPROFILE环境文件名
DEFAULTROLE角色名
ALLEXCEPT角色名
NONE,,1462例1:
ALTERUSERscottINDENTIFIEDBYlionDEFAULTTABLESPACEtstest;例2:
ALTERUSERscottPROFILEclerk;行命令修改用户的例子:1472DropUser(OK)(Cancel)User:
[X]IncludingAssciatedSchemaObjectsSTU9STU10STU11删除用户:1482行命令删除用户:
DROPUSER用户名CASCADE例如:
DROPUSERbradleyCASCADE;1492(二)资源管理1502024年5月13日CreateProfile(OK)(Cancel)Name:[]Sessions/User()Limit:()Unlimited()Default[]CPUTime/Session()Limit:()Unlimited()Default[]CPUTime/Call()Limit:()Unlimited()Default[]ConnectTime()Limit:()Unlimited()Default[]IdleTime()Limit:()Unlimited()Default[]LogicalReads/Session()Limit:()Unlimited()Default[]LogicalReads/Call()Limit:()Unlimited()Default[]PrivateSGA/Session()Limit:()Unlimited()Default[]CompositeLimit()Limit:()Unlimited()Default创建环境文件:1512参数说明:
Sessions/User:限制一个用户的并发会话个数。
CPUTime/Session:限制一次会话的CPU时间,单位:百分之一秒。
CPUTime/Call:限制一次调用(一次语法分析、执行或获得)的CPU时间,单位:百分之一秒。
ConnectTime:限制一会话总的使用时间,单位:分。
IdleTime:限制会话期间连接不活动周期,单位:分。长的运行查询和其它操作不受这个限制。1522参数说明:
LogicalReads/Session:限制在一次会话中读的数据块的数目,包括从内存或磁盘读的块数。
LogicalReads/Call:限制处理一个SQL语句(语法分析、执行和获取)一次调用所读的数据块的数目。
PrivateSGA/Session:限制一次会话在SGA的共享池可分配的专用空间的数目,单位:bytes/Kbytes/Mbytes。CompositeLimit:一次会话总的资源开销,以服务单位表示该参数的值。1532
ORACLE以下列资源的带权的和计算总的资源开销:
CPUTime/SessionConnectTimeLogicalReads/SessionPrivateSGA/Session1542行命令建立环境文件:CREATEPROFILE环境文件名LIMITSESSION_PER_USER整数
CPU_PER_SESSIONUNLIMITEDCPU_PER_CALLDEFAULTCONNECT_TIMEIDLE_TIMELOGICAL_READS_PER_SESSIONLOGICAL_READS_PER_CALLCOMPOSITE_LIMITPRIVATE_SGA整数/K/MUNLIMITEDDEFAULT1552例如:建立环境文件SYSTEM_MANAGERCREATEPROFILEsystem_managerLIMITSESSIONS_PER_USERUNLIMITEDCPU_PER_SESSIONUNLIMITEDCONNECT_TIME45LOGICAL_READS_PER_SESSIONDEFAULTLOGICAL_READS_PER_CALL1000PROVATE_SGA15KCOMPOSITE_LIMIT5000000;1562行命令修改环境文件语法:ALTERPROFILE环境文件名LIMITSESSION_PER_USER整数
CPU_PER_SESSIONUNLIMITEDCPU_PER_CALLDEFAULTCONNECT_TIMEIDLE_TIMELOGICAL_READS_PER_SESSIONLOGICAL_READS_PER_CALLCOMPOSITE_LIMITPRIVATE_SGA整数/K/MUNLIMITEDDEFAULT1572例:在ENGINEER环境文件中定义5个并行会话的限制。
ALTERPROFILEengineerLIMITSESSION_PER_USER5;1582DropProfile(OK)(Cancel)Profile:[]ReasignProfileUserstoDefaultProfileCLERKDBA行命令删除环境文件:
DROPPROFILE环境文件名CASCADE删除Profile文件:1592AlterResourceCost(OK)(Cancel)
CPUTime/Session:ConnectTime:LogicalReads/Session:PrivateSGA/Session:更改资源开销:1602行命令更改资源开销:
ALTERRESOUCECOSTCPU_PER_SESSION整数
CONNECT_TIME整数
LOGICAL_READS_PER_SESSION整数
PRIVATE_SGA整数例如:指定资源的权。
ALTERRESOUCECOSTCPU_PER_SESSION100CONNECT_TIME11612(三)特权管理1622024年5月13日系统特权:完成特殊活动或在一个特殊类型的对象上完成特殊活动的一个特权。对象特权:在一个指定的对象(表、视图、序列、过程、函数或包)上完成一个特殊活动的特权。1632GrantSystemPrivileges/Roles(OK)(Cancel)Grant:To:[]Allowgranteetogranttheprivilege(s)/role(s)toothers
授系统特权或角色给用户1642行命令授予系统特权或角色:GRANT系统特权名TO用户名角色名角色名
PUBLICWITHADMINOPTION1652例1:将CREATESESSION系统特权授予RICHARD。GRANTcreatesessionTOrichard;
例2:将CREATETABLE系统特权授予RICHARD并带有允许授权选项。
GRANTcreatetableTOrichardWITHADMINIOPTION;
1662RevokeSystemPrivileges/Roles(OK)(Cancel)Revoke:From:回收系统特权或角色1672REVOKE系统特权名FROM用户名角色名角色名
PUBLIC,,行命令授予系统特权或角色:1682例:从用户Bill和Mary回收DROPANYTABLE系统特权。
REVOKEdropanytableFROMbill,mary;1692回收系统特权的连锁反映分析:GRANTABCREVOKEABCRESULTABC1702对象特权的授权:例1:GRANTselectONdeptTOstu10,stu11;例2:GRANTselect,insert(empno,ename),update(ename)ONempTOscottWITHGRANTOPTION;1712对象特权的回收:例1:REVOKEselectONdeptFROMstu10,stu11;例2:REVOKEallONempFROMscott;1722(四)角色管理1732024年5月13日角色是由一个命名的关联特权组组成,用来维护和控制特权。角色的特点:减少授权次数动态的特权管理选择可用特权1742无角色管理的授权示意图用户特权1752使用角色管理的授权示意图用户特权角色1762ORACLE数据库预定义的角色:
CONNECT:
创建会话、聚簇、数据库链、序列、同义词、表、触发器
RESOURCE:
创建聚簇、存储过程、序列、表、触发器DBA:
所有权限
EXP_FULL_DATABASE:
选择、备份任何表和在SYS.INCVID
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- “妇幼健康质量管理年”工作计划
- 8总工会某年第一季度重点工作计划
- 2024新年无传销社区工作计划例文
- 2024年度小学美术教学工作计划
- 2024年环保工作计划例文
- 2024下半年财务工作计划方案
- 语文老师课程教学计划范文
- 2024政务服务工作计划024法律服务所工作计划
- 2024广告公司年度计划
- 2024年协议保证金形式多样化分析版B版
- 北师大版(2019)数学必修第一册:8.1《走近数学建模》
- 湖南省岳阳市2023-2024学年高一上学期1月期末联考物理试题 含解析
- 猩红热课件完整版本
- 成都师范学院《论文写作》2021-2022学年第一学期期末试卷
- 世界一流港口综合评价报告
- 《管理学原理》课程期末考试复习题库(含答案)
- 高三英语一轮复习备考实践经验分享 课件
- 肛周脓肿 课件
- DB34T 4139-2022 餐饮业环境保护技术规范
- 施工员证考试试题库及答案(共10套)
- 村庄规划服务投标方案(技术标)
评论
0/150
提交评论