Oracle系统安装及体系结构_第1页
Oracle系统安装及体系结构_第2页
Oracle系统安装及体系结构_第3页
Oracle系统安装及体系结构_第4页
Oracle系统安装及体系结构_第5页
已阅读5页,还剩127页未读 继续免费阅读

下载本文档

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

文档简介

孟宪顺2002-3-1GenersoftInc.OracleDBA

OracleocpcoursecontentArchitectureandAdministrationOracle结构和维护:Oracle特点、结构创建数据库Oracle数据库的访问ManaginganOracleInstanceMaintainingtheControlFileMaintainingRedoLogFilesManagingTablespacesandDataFilesManagingRollbackSegmentsManagingUsers,privileges,roles概述ORACLE具有甲骨文之意,是全世界第二大软件公司。数据库、电子商务套件、erp、财务产品、开发工具培训认证。Oracle服务(server)是一个关系数据库(relationaldatabase)管理系统,提供开放、全面、完整的信息管理。特点高性能、伸缩性安全性:角色、权限、用户并发控制:表锁定、行锁定海量数据:表空间、空间数据构件TB级数据完整性:日志、回滚段分布式数据库:数据库连接Oracle概述、特点发展和构成发展史6.0性能不如sybase7.0分区技术支持分段的大型数据库8.0面向对象8.1.6面向internet支持java、webserver、jdeveloper9iportal手机上网oracle体系结构Oracle体系结构决定了数据库如何使用内存、硬盘、cpu和网络一个Oracleserver包括一个Oracle实例(instance)和几个Oracle数据库文件(databasefile).实例数据库文件Oracleinstance

实例=内存分配+一组后台进程

如果把Oracle比作一部汽车,instance相当于汽车的发动机一样,启动oracle前提应先启动instance..内存被分配,进程被启动SGAbackgroundprocessOracle文件一个Oracle数据库是一个数据单位的集合。主要目的是为了储存和读取信息。Oracle数据库可以分为逻辑(logical)结构和物理(physical)结构。物理结构指数据库中的操作系统文件的集合,包含以下三种文件:数据文件(datafile)包含数据库中实际数据。数据包含在用户定义的表中,而且数据文件还包含数据词典(datadictionary),数据修改以前的映象(before-imagesofmodifiedData)索引(indexes)和其他类型的结构(othertypesofstructures)。一个数据库中至少包含一个数据文件。数据文件的特性有:–一个数据文件只能被一个数据库使用。–当数据库空间不足时,数据文件具有自动扩展的特性。–一个或者多个数据文件构成数据库的逻辑存储单元叫做表空间(tablespace).

重作日志(Redologs)包含对数据库的修改记录,可以在数据失败后恢复。一个数据需要至少两个重作日志文件。控制文件(Controlfiles)包含维护和检验数据库一致性的信息。例如:控制文件用来检验数据文件和重作日志文件。一个数据库需要至少一个控制文件。其它文件其他文件参数文件用来定义Oracle实例的的特性。例例如:他包包含SGA内存的大大小。口令验证文文件用来验证启启动和关闭闭Oracle实例例的用户。。存档重做日日志文件是重做日志志的备份用用以恢复数数据。Oracle数据据库逻辑与与物理结构构DatabaseArchitecture数据库结构构(DatabaseArchitecture)Oracle数据据库结构包包括物理(physical)和逻辑辑(logical)结构•物理(physical)结构包包括控制文文件(controlfiles),在线线重作日志志(onlineredologfiles),和数据据文件(datafiles).•逻辑logical结构构包括表空空间(tablespaces),段段(segments),区间(extents),和数数据块(datablocks).Oracleserver可可以有条理理的通过表表空间以及及段、扩展展、数据块块控制磁盘盘空间表空间(Tablespaces)Oracledatabase的的数据存储储在表空间间中。AnOracledatabasecanbelogicallygroupedintosmallerlogicalareasofspaceknownastablespaces.一个tablespace只能同同时属于一一个database。每个tablespace包含一一个或多个个操作系统统文件-数数据文件(datafiles).一个tablespace可能包包含一个或或多个segments.Tablespaces可可以在数据据库运行时时使其在线线。除了SYSTEMtablespace或或有活动动回滚段的的tablespace,,tablespaces可以被被离线(offline)。。Tablespaces可可以在读/写之间切切换。DatabaseArchitecture(Continued)数据文件DataFilesOracle数据库库tablespace包含含的一个或或多个文件件叫做数据据文件(datafiles)。这这些物理结结构在oracle服务运行行时与操作作系统相配配合。•一个数数据文件只只能属于一一个tablespace。。•Oracle服服务为表表空间创建建一个数据据文件,分分配指定的的磁盘空间间再加上额额外的一小小部分开销销。•数据库管管理员在数数据文件创创建后可以以改变它的的大小或者者设置为根根据需要自自动增长。。段SegmentsSegment指在tablespace中为为特定逻辑存存储结构分配配的空间。例例如,为表表分配的所有有存储空间就就是就是一个个segment。•一个tablespace可能能包含一个或或多个Segment.•segment不能能跨越tablespace;但是,一一个segment可以跨越越多个属于同同一Tablespace的datafiles。•每个segment有一个个或多个extent组组成。区间Extents通过extent来给给segment分配空空间。•一个或多多个extents组成成一个segment.–当一个segment创建时时,至少包含含一个extent。。–当segment增长时,extents被加到segment中。。–DBA可可以手工为segment增加extents。•一个extent由一系列列连续的Oracleblocks组成。。•一个extent不能跨越越datafile,但必须须存在datafile中。TheRelationshipsAmongSegments,Extents,andDataBlocksDataBlocksOracleserver管理datafiles存存储空间的单单位叫做Oracleblocksordatablocks.•Oracle数数据库最小的的存储数据单单位为datablocks.•Oracledatablocks是是Oracleserver存存储储、、读读、、写写的的最最小小的的存存储储单单位位。。•一一个个datablock对对应应一一个个或或多多个个分分配配给给datafile的的操操作作系系统统块块。。•在在Oracle数数据据库库创创建建时时,,初初始始参参数数文文件件的的DB_BLOCK_SIZE确确定定Oracle数数据据库库Datablock的的大大小小。。•Datablock的的大小应应该为操操作系统统块的整整数倍,,以减少少I/O量。•Datablock的的最大尺尺寸依赖赖于操作作系统。。OracleInstance-SGAOracleinstance包包含SGA内存结构和和管理数据库库的一些后台台进程。Instance被看成使使用各个操作作系统的特定定方法instance只能同同时打开和使使用一个database。SystemGlobalAreaSGA是存储储数据库进程程共享的数据据库信息的内内存区域。它它包含OracleServer数据和控控制信息。分分配在OracleServer驻留的计算算机虚拟内存存中。SGA包含如下内内存结构:•共享池(sharedpool)用来来存储最近执执行的SQL语句和最近近使用的数据据字典(datadictionary)的的数据。这些些SQL语句句可能是被用用户递交的也也可能是存储储过程调用的的。•数据缓冲区(databasebuffercache)用来存存储最近从数数据文件中读读写过的数据据。•重作日志缓冲冲区(redologbuffer)用来记录录服务或后台台进程对数据据库的操作。另外在SGA中还有两个个可选的内存存结构:•Javapool:用来存储储Java代代码。•Largepool:用来存储储不与SQL直接相关的的大型内存结结构。例如::在备份和恢恢复时的数据据拷贝。BackgroundProcesses•DatabaseWriter(DBW0)负责将数数据的更改由由databasebuffercache写到datafiles。。•LogWriter(LGWR)负责将数数据更改记录录由redologbuffer写到redologfiles.•SystemMonitor(SMON)检查数据据库的一致性性,必要的情情况下,在数数据库打开时时执行恢复。。•ProcessMonitor(PMON)用户进程失失败时,进程程监控程序实实现进程恢复复。•TheCheckpointProcess(CKPT)负责更新新数据库的控控制文件(controlfiles))中的状态信信息。在数据据缓存永久写写入数据库时时。)PGA(程序序全局区)是内存中的区区域,包含单单个进程的数数据和控制信信息。每个服服务器进程分分配一个PGA,PGA由每个服务务器进程独占占。当用户连连接入Oracle数据据库并建立会会话时,Oracle分分配PGA。。与SGA不不同,PGA仅被一个进进程使用。COMMITs步骤当COMMIT执行行时:1server在redologBuffer中放置一个个SCN作为为commit记号。。2LGWR执执行一个不间间断的写操作作包括所有的的redologbuffer写到redologfiles及commit记号号。在这一点点,Oracleserver可可以保证即使使在实例失败败时数据也不不会丢失。3用户被通知COMMIT完成。.4server记录信息显显示事务已经经完成,锁可可以被释放。。数据缓冲信息息独立的由DBW0执行行,可能在commit前也可能在在Commit后。SystemChangeNumber无论事务在何何时提交,Oracleserver总是分分配一个SystemChangeNumber(SCN)给给这个事务。。SCN自动动增加,在数数据库是唯一一的。它OracleServer被用来作作为内部的时时间戳,来同同步数据及保保证数据读一一致性。使用用SCN可可以不依靠靠操作系统时时间来检验一一致性。SQL语语句句的的执执行行过过程程•A、、用用户户发发出出SQL请请求求,,打打开开游游标标;;B、、把把SQL语语句句语语法法分分析析,,执执行行计计划划,,数数据据字字典典等等信信息息存存入入内内存存中中共共享享池池内内;;C、、从从数数据据文文件件中中把把相相关关数数据据块块读读入入数数据据缓缓冲冲区区;;D、、做做相相应应操操作作,,若若做做修修改改,,先先加加上上行行级级锁锁,,经经确确认认后后,,把把改改过过前前后后记记录录内内容容存存入入重重做做日日志志缓缓冲冲区区内内;;E、、返返回回结结果果给给用用户户,,关关闭闭游游标标。。备注注::SQL语语句句大大小小写写敏敏感感的的,,同同样样的的一一个个语语句句,,若若大大小小写写不不同同,,oracle需需分分析析执执行行两两次次,,每每句句后后必必以以““;;””结结束束。。summaryInthislesson,youshouldhavelearnedhowto:•Explaindatabasefiles:datafiles,controlfiles,onlineredologs•ExplainSGAmemorystructures:DBbuffercache,sharedSQLpool,andredologbuffer•Explainprimarybackgroundprocesses:DBW0,LGWR,CKPT,PMON,SMON,andARC0•ExplainSQLprocessingsteps:parse,execute,fetch数据字字典数据字字典DataDictionary数据字字典数据字字典是是Oracle数据据库的的重要要组成成。它它由一一组只只读表表组成成。包括::数据库库所有有对象象的定定义((表,,视图图,索索引,,簇,,同义义词,,序列列,,过程程,函函数,,程序序包,,触发发器))空间的的分配配和使使用状状况列的缺缺省值值完整性性约束束信息息用户名名已授予予用户户的角角色和和权限限审计信信息等等数据字字典结结构基表存放相相关数数据库库信息息的基基础表表视图汇总并并显示示存放放数据据字典典基表表中信信息的的视图图数据字字典所所有者者Oracle的的sys用用户拥拥有数数据字字典所所有的的基表表和视视图。。任何Oracle用用户都都不能能改变变数据据字典典的任任何数数据。。不能能更新新、插插入、、删删除。。数据据字典典的改改变会会影响响数据据库的的正常常运行行。系统管管理员员需要要严格格管理理系统统用户户.(sysandsystem)数据字字典分分类USER_*:用用户拥拥有的的对象象ALL_*:可可访访问的的对象象DBA_*:所所有有对象象.---7.3.493个---8.0.5118个个---8.1.6165个个从DICTIONARY(DICT))中可可查到到名称称常用的的数据据字典典Dba_tablespacesDba_data_filesDba_tablesDba_usersDba_viewsDba_indexesDba_db_linksDba_free_spaceDba_ind_columnsDba_jobsDba_objectsDba_rollback_segsDba_segmentsDba_sequencesDba_snappshotsDba_synonymsDba_tab_columnsDba_triggersDba_constraintsDba_cons_columns前缀范围USER用户视图ALL用户可访问的部分DBA数据库管理员视图PL*SQLPL*SQLSQL是结结构化化的查查询语语言Oracle的的SQL语语言包包含对对ANSI/ISO标准准SQL语语言的的扩充充。Oracle的的SQL语语言分分为以以下几几类::DML(数数据操操纵语语言))DDL(数数据定定义语语言))事物处处理的的控制制语言言会话控控制语语句系统控控制语语句SQL*PLUS是Oracle的一一个使使用程程序,,它可可以运运行于于客户户端,,也可可以运运行服务器器端,,通过过它能能够查查看数数据字字典的的信息息,以以及查查看用用户数数据和和结构构等,,运行行程序序。PL*SQL是Oracle的一一种过过程化化的SSQLL语言言。他他有自自己的的程序序结构构,有各种种条件件控制制和循循环控控制。。通过过PLL*SSQLL语言言,能能够写写数据据库的的存储储过程程和包包。甚甚至通通过PL*SQL语语言还还可以以开发发基于于Web的的应用用。OracleSQL,,SQL*PlusandPL*SQLDMLSelect(从从一个个或多多个表表或视视图中中检索索数据据)selectempno,ename,sal,deptnofromempwheredeptno=10;复杂的的select语语句::groupby子子句句selectdeptno,min(sal),max(sal)fromempgroupbydeptno;having子子句句selectdeptno,min(sal),max(sal)fromempwherejob=‘CLERK’groupbydeptnohavingmin(sal)<1000;Orderbyselectename,deptno,salfromemporderbydeptnoASC,salDESC;forupfateselectempno,sal,commfromemp,deptwherejob=‘‘CLERK’’andemp.deptno=dept.deptnoandloc=‘NEWYORK’’forupdate;selectempno,sal,commfromemp,deptwherejob=‘‘CLERK’’andemp.deptno=dept.deptnoandloc=‘NEWYORK’’forupdateofemp.sal;joinselectempno,ename,dnamefromemp,deptwhereemp.deptno=dept.deptno;DMLupdate(改变变表与与视图图现有有行与与列的的值)updateempsetsal=1000whereempno=7369;Insert(向向表与与视图图中增增加新新行)insertintoempvalues(8888,‘‘abc’’,‘‘clerk’’,0000,sysdate,2000,0,10);delete(从从表与与视图图中删删除行行)deletefromempwheredeptno=10;不支持持selectinto,,要要用createascreatetableasselect*fromtablename常用的的sql函函数numberfunctionabs(n)mod(m,n)power(m,n)round(m,n)sign(n)sort(n)开开平方方trunc(n,m)DatefunctionADD_MONTHS(d,n)LAST_DAY(d)MONTHS_BETWEEN(d1,d2)NEXT_DAY(d,char)SYSDATE...ConversionFunctionsTO_CHAR(d,format)TO_CHAR(n,format)TO_NUMBERTO_DATEcharacterfunctionCONCAT(char1,char2)/*返返回char1与char2的连连接*/INITCAP(char)/*返返回回第一一个字字母大大写的的string*/LPAD(char1,n[,char2])LTRIM(char[,set])LOWERREPLACE(char,search_string[,replacement_string])SUBSTR(char,m[,n])INSTR(char1,char2[,n[,m]])UPPER(char)LENGTH(char)...其它函函数NVL(expr1,expr2)USER...SQL*PlusSQLPlus是Oracle的的一个个实用程程序.sql*plus的使使用:数据库创创建后,,将安装装scott/tiger的的demo用户户。sqlplusscott/tigersql>/*sql*plus的命令令行状态态*/sql>setpauseonspoolfilenamespooloff维护参数数文件((init.ora))ManaginganOracleInstanceUsesofParametersTheparameterfile,commonlyreferredtoastheinitsid.orafile,isatextfilethatcanbemaintainedusingastandardoperatingsystemeditor.Bydefault,itislocatedinthe%ORACLE_HOME%\databasedirectoryonWindowsNT.WithOracle8ionWindowsNT,theparameterfilepointstothe%ORACLE_HOME%\admin\sid\pfiledirectorywheretheactualparameterfileisstored.Theparametersintheinitsid.orafilecanhaveasignificanteffectondatabaseperformance,andsomeneedtobemodifiedinthefollowingwaysforproductionsystems:•SizetheSystemGlobalArea(SGA).•Setdatabaseandinstancedefaults.•Setuserorprocesslimits.•Setlimitsondatabaseresources.•Definevariousphysicalattributesofthedatabase,suchasthedatabaseblocksize.•Specifycontrolfiles,archivedlogfiles,theALERTfile,andtracefilelocations.RulesforSpecifyingParameters•Specifythevaluesinthefollowingformat:keyword=value.•Allparametersareoptional.•Theserverhasadefaultvalueforeachparameter.Thisvaluemaybeoperatingsystemdependent,dependingontheparameter.•Parameterscanbespecifiedinanyorder.•Commentlinesbeginwiththe#symbol.•Encloseparametersindoublequotationmarkstoincludecharacterliterals.•AdditionalfilescanbeincludedwiththekeywordIFILE.•Ifcaseissignificantfortheoperatingsystem,thenitisalsosignificantinfilenames.•Multiplevaluesareenclosedinparenthesesandseparatedbycommas.Note:Developastandardforlistingparameters;eitherlistthemalphabeticallyorgroupthembyfunctionality.StartingtheInstanceUsuallyyouwouldstartaninstancewithoutmountingadatabaseonlyduringdatabasecreationorthere-creationofcontrolfiles.Startinganinstanceincludesthefollowingtasks:•Readingtheparameterfileinitsid.ora•AllocatingtheSGA•Startingthebackgroundprocesses•OpeningtheALERTfileandthetracefilesThedatabasemustbenamedwiththeDB_NAMEparametereitherintheinitSID.orafileorintheSTARTUPcommand.MountingtheDatabaseToperformspecificmaintenanceoperations,youstartaninstanceandmountadatabasebutdonotopenthedatabase.Forexample,thedatabasemustbemountedbutnotopenduringthefollowingtasks:•Renamingdatafiles•Enablinganddisablingredologarchivingoptions•PerformingfulldatabaserecoveryMountingadatabaseincludesthefollowingtasks:•Associatingadatabasewithapreviouslystartedinstance•Locatingandopeningthecontrolfilesspecifiedintheparameterfile•Readingthecontrolfilestoobtainthenamesandstatusofthedatafilesandredologfiles(However,nochecksareperformedtoverifytheexistenceofthedatafilesandonlineredologfilesatthistime.)OpeningtheDatabaseNormaldatabaseoperationmeansthataninstanceisstartedandthedatabaseismountedandopen;thisallowsanyvalidusertoconnecttothedatabaseandperformtypicaldataaccessoperations.Openingthedatabaseincludesthefollowingtasks:•Openingtheonlinedatafiles•OpeningtheonlineredologfilesIfanyofthedatafilesoronlineredologfilesarenotpresentwhenyouattempttoopenthedatabase,theOracleserverreturnsanerror.Duringthisfinalstage,theOracleserververifiesthatallthedatafilesandonlineredologfilescanbeopenedandcheckstheconsistencyofthedatabase.Ifnecessary,theSystemMonitorbackgroundprocess(SMON)initiatesinstancerecovery.StartingUpTostartupaninstance,usethefollowingcommand:STARTUP[FORCE][RESTRICT][PFILE=filename][OPEN[RECOVER][database]|MOUNT|NOMOUNT]ToopenthedatabasefromSTARTUPNOMOUNTtoaMOUNTstageorfromMOUNTtoanOPENstage,usetheALTERDATABASEcommand:ALTERDATABASE{MOUNT|OPEN}ALTERDATABASEOPEN[READWRITE|READONLY]Example:Startuptheinstanceandopenthedatabase:STARTUPPFILE=/DISK1/initU15.ChangethestateofthedatabasefromNOMOUNTtoMOUNT:ALTERDATABASEdatabaseMOUNT;Openthedatabaseasaread-onlydatabase:ALTERDATABASEdatabaseOPENREADONLY;QuickReference管理理控控制制文文件件课程程目目标标解释控制文文件的使用用了解控制文文件的内容容获取控制文文件信息复用控制文文件控制文件的的作用是小的二进进制文件,,在:数据库MOUNT数据库运行行需要使用用。控制文件与与一个数据据库有关应该复用以以防止文件件丢失控制文件的的内容数据库名数数据文件件位置重重作日志位位置

表空空间名当当前日志文文件顺序号号

检查点点信息日日志历史备备分信息息影响控制文文件大小的的参数控制文件的的大小受下下列参数影影响:MAXLOGFILESMAXLOGMEMBERSMAXLOGHISTORYMAXDATAFILESMAXINSTANCESCONTROL_FILE_RECORD_KEEP_TIME获取控制文文件的信息息V$CONTROLFILE

-NAMEV$PARAMETER-NAME(control_file)-VALUEV$CONTROLFILE_RECORD_SECTION-TYPE-RECORDS_SIZE-RECORDS_TOTAL-RECORDS_USED控制文件使使用的原则则复用控制文文件在CONTROL_FILES中中包含完全全路径在数据库结结构发生变变化时备份份控制文件件复用控制文件件control_files=(/DISK1/control01.con,/DISK2/control02.con)常见问题改变控制文件件的位置1.正常关关闭数据库2.将控制制文件从当前前位置依到新新的位置3.修改initsid.ora或configsid.ora中control_file参数数.4.启动数数据库常见问题----一一个控制文文件丢失可关闭数据库库复制好的控控制文件----所所有控制文件件丢失,重建建控制文件svrmgrl>startupmountsvrmgrl>alterdatabasebackupcontrolfiletotrace编辑udump下的TRACE文件件执行文件管理表空间和和数据文件课程目标了解数据库的的逻辑结构建立表空间利用几种方法法改变表空间间的大小改变表空间的的状态和存储储参数改变数据文件件位置准备需要的表表空间表空间表空间由一组组数据文件组组成每个数据文件件属于一个表表空间每个表,索引引,分区和所所有其他的段段均属于一个个表空间但可可以跨表空间间的多个数据据文件SYSTEM和非SYSTEM表表空间SYSTEM表空间包包含:数据字典信息息SYSTEM回滚段非SYSTEM表空间包包含:回滚段临时段应用数据应用索引临时表空间用于排序操作作不能包含永久久性数据CREATETABLESPACEsortDATAFILE?DISK2/sort01.dbf?SIZE50MMINIMUMEXTENT1MDEFAULTSTORAGE(INITIAL2MNEXT2MMAXEXTENTS500PCTINCREASE0)TEMPORARY;回滚表空间用于保存回回滚段不要包含其其他永久性数数据CREATETABLESPACErbsDATAFILE?DISK2/sort01.dbf?SIZE50MMINIMUMEXTENT1MDEFAULTSTORAGE(INITIAL2MNEXT2MMAXEXTENTS500PCTINCREASE0);建立表空间CREATETABLESPACEapp_dataDATAFILE?DISK4/app01.dbf?SIZE100M,?DISK5/app02.dbf?SIZE100MMINIMUMEXTENT500KDEFAULTSTORAGE(INITIAL500KNEXT500KMAXEXTENTS500PCTINCREASE0);存储参数下述参数影响响段的空间分分配:INITIALNEXTMAXEXTENTSMINEXTENTSPCTINCREASE表空间管理的的一般原则使用同样大小小的子段只在表空间上上指定存储参参数子段大小为160K,5120KB,160MB监视子段个数数超过1024的段非常大的表应应单独建立表表空间TEMP段应应放在TEMP表空间回滚段应单独独放在回滚段段的表空间给表空间增加加数据文件ALTERTABLESPACEAPP_dataADDDATAFILE?DISK5/app03.dbf?SIZE200M;允许数据文件件自动扩展ALTERTABLESPACEapp_dataADDDATAFILE?DISK6/app04.dbf?SIZE200MAUTOEXTENDONNEXT10MMAXSIZE500M;TablespaceAPP_DATAALTERDATABASEDATAFILE?DISK5/app02.dbf?RESIZE200M;手工改变数据据文件的大小小改变存储参数数ALTERTABLESPACEapp_dataMINIMUMEXTENT2M;ALTERTABLESPACEapp_dataDEFAULTSTORAGE(INITIAL2MNEXT2MMAXEXTENTS999);将表空间OFFLINE不能访问处于于OFFLINE状态的的表空间的数数据SYSTEM和包含活活动回滚段的的表空间不能能OFFLINEALTERTABLESPACEapp_dataOFFLINE;移动数据文件件表空间APP_DATA必须OFFLINE目标文件必须须存在ALTERTABLESPACEapp_dataRENAMEDATAFILE?DISK4/app01.dbf?TO?DISK5/app01.dbf?只读表空间ALTERTABLESPACEapp_dataREADONLY;表空间必须在在ONLINE状态表空间中不含含活动的事事物.表空间中不含含活动的回回滚段表空间中不在在作在线备份份删除表空间DROPTABLESPACEapp_dataINCLUDINGCONTENTS;下述命令删除除APP_DATA表表空间及其中的内容.获取表空间有有关的信息DBA_TABLESPACESTABLESPACE_NAMENEXT_EXTENTMAX_EXTENTSPCT_INCREASEMIN_EXTLENSTATUSCONTENTS获取数据文件件有关的信息息DBA_DATA_FILESFILE_NAMETABLESPACE_NAMEBYTESAUTOEXTENSIBLEMAXBYTESINCREMENT_BY一般原则使用多个表空空间为表空间指定定存储参数给用户指定表表空间限额回滚段的管理理课程目标回滚段个数和和大小的规划划使用用合合适适的的存存储储参参数数建建立立回回滚滚段段回滚滚段段的的维维护护从数数据据字字典典中中获获取取回回滚滚段段的的信信息息回滚滚段段问问题题的的诊诊断断回滚滚段段的的类类型型SYSTEM非-SYSTEM私用用公用用1、事事物和和回滚滚段2、回回滚段段的增增长4、读读一致致性介绍回回退段段的有有关概概念3、回回滚段段的回回缩回滚段段个数数的规规划OLTP多个小小的回回滚段段每个回回滚段段四个个事物物《=N/4Batch少量的的大回回滚段段回滚段段个数数的规规划查询是是否有有回滚滚段的的竞争争SVRMGR>select*fromv$waitstat;CLASSCOUNTTIME--------------------------------------datablock00sortblock00saveundoblock00segmentheader00saveundoheader00freelist00systemundoheader00systemundoblock00undoheader00undoblock00回滚段的大大小规划使用同样大大小的子段段INITIAL,NEXT应应用2KB,4KB。。。MINEXTENTS设为20OPTIMAL应应大于MINTEXTENTS的大小小INITIAL=NEXT=1。25M/n建立回滚段段CREATEROLLBACKSEGMENTrbs01TABLESPACErbsSTORAGE(INITIAL100KNEXT100KOPTIMAL4MMINEXTENTS20MAXEXTENTS100);使回滚段ONLINEALTERROLLBACKSEGMENTrbs01ONLINE;ROLLBACK_SEGMENTS=(rbs01)在初始化参参数中指定定,以保证证数据库启启动时ONLINE用下述命令令使回滚段段可用事物如何使使用回滚段段将所有回滚滚段ONLINE获得私有回回滚段有足够的回滚段获取公用回回滚段计算需要的的回滚段个个数YesNo修改回滚段段存储参数数ALTERROLLBACKSEGMENTrbs01STORAGE(MAXEXTENTS200);使用ALTERROLLBACKSEGMENT命令从回滚段中中释放空间间ALTERROLLBACKSEGMENTrbs01SHRINKTO4M;使用ALTERROLLBACKSEGMENT命命令使回滚段OfflineALTERROLLBACKSEGMENTrbs01OFFLINE;删除回滚段段DROPROLLBACKSEGMENTrbs01;ALTERROLLBACKSEGMENTrbs01OFFLINE;回滚段在删删除之前必必须OFFLINE将回回滚滚段段offline后后回回滚滚段段不不可可用用数据据库库中中的的回回滚滚段段\查查询询回回滚滚段段信信息息DBA_ROLLBACK_SEGS标识识SEGMENT_IDSEGMENT_NAME所在在表表空空间间,,类类型型和和状状态态TABLESPACE_NAMEOWNER(PUBLICorSYS)STATUS(ONLINEorOFFLINE)回滚滚段段统统计计信信息息V$ROLLNAMEUSNNAMEV$ROLLSTATUSNEXTENTSRSSIZEXACTSOPTSIZEHWMSIZEAVEACTIVESTATUSCUREXTCURBLK回滚滚段段常常见见问问题题空间间不不够够读一一致致性性错错误误阻塞塞事事物物表空空间间offline时时出出错错空间间不不够够表空空间间中中无无空空闲闲空空间间增大大文文件件允许许文文件件自自动动扩扩充充增加加文文件件达到到段段的的MAXEXTENTS增大大MAXEXTENTS用更更大大的的子子段段参参数数重重建建回回滚滚段段用户户管管理理1、创创建建、、改改变变、、删删除除和和监监控控oracle的的新新用用户户用户户管管理理(1)赋赋于于合合法法的的用用户户或或和和密密码码SVRMGL>CREATEUSERusernameIDENTIFIEDBYuserpassword[DEFAULTTABLESPACEtablespace1][TEMPORARYTABLESPACEtablespace2][QUOTAnKONtablespace1];MUNLIMITED空间间限限额额(2)授授于于用用户户连连接接Oracle数数据据库库的的权权限限SVRMGL>grantconnecttousername[withgrantoption];rolenameprivelege......常用的几几个角色色role(权限的的集合)connect(8)连连上Oracle,做最基基本操作作resource(5)具具有程序序开发最最基本的的权限dba(77)数数据库管管理员所所有权限限exp-full-database可可把数数据库整整个备份份输出的的权限imp-full-datsabase可可把数数据库整整个备份份恢复输输入的权限限(3)alteruser;(4)dropuser[cascade];(5)revokerolefromuser;2、权限限的管理理权限的分分类systemprivilege针针对整个个系统操操作的权权限objectprivilege针针对整整个具体体object操作的的权限可查看dba-sys-privs,dba-fab-privs;视图图dba-col-privs;数据库的的实用程程序OracleExportOracleImportOracleEnterpriseManager数据库的的实用程程序Export它是Oracle数据据库的一一个实用用程序。。它将Oracle数数据库的的数据和结构构移出Oracle放放入到一一个二进进制的export文文件中中。它转出的数数据只有有Oracle的import程序序能够处处理。Import它将读取取转出的的数据将将重建数数据库的的内容与与结构。。SQL*LOAD它提供了了将ascii格式的的数据装装载入库库的工具具。它是是一种非非常灵活活多样的的工具。。Export(卸载载)执行exportexpusername/passwordparfile=filename交互式expusername/password获取联机机帮助exphelp=yPARFILE文件格式:FULL=YFILE=DBA.DMPGRANTS=YINDEXES=YCONSISTENT=YExport(卸卸载)export常见参参数的含义义userid是exp命命令的第一一个参数。。定义你需需要卸载数数据的用户户。file定义export文文件的名名字buffer决定在export时,用来来存放卸载载数据的缓缓冲区的大大小。full控制export级级别。它是是决定数据据的备份级级别是基于于全数据库库grants决定export程程序是否卸卸载授权default=yowner决定数据卸卸载的级别别。如果设设定owner参数数,卸载的的级别为用户级tables决定数据卸卸载的级别别,如果设设tables参数数,则卸载载级别为表表级rows决定只卸载载数据结构构还是需要要卸载数据据Export举例全数据库的的备份expsystem/managerfull=Yfile=dba.dmpgrants=Yrows=Y用户级的数数据库备份份expscott/tigerfile=scott.dmpowner=scottgrants=Yrows=Ycompress=y表级数据库库备份expblake/paperfile=blake.dmptables=(dept,manager)rows=ycompress=Y执行importimpusername/passwordparfile=filename交互式impusername/password获取联机帮帮助imphelp=yparfile格式式FULL=YFILE=DBA.DMPGRANTS=YINDEXES=Y#importallindexesImport(装装载)import常见参参数含义file/*定定义被装载载的文件名名*/fromuser/*定义import包含对象象的schme的列列表*/full/*完全全数据库的的装载*/indexes/*定义义是否装载载索引*/tables/*定义需要要装载表名名的列表*/touser/*定义需要要装载的用用户列表*/userid/*定定义义执执行行imp的的用用户户*/Import举举例例对特特定定用用户户选选择择表表的的数数据据装装载载impsystem/managerfile=dba.dmpfromuser=scotttables=(dept,emp)装载载从从另另外外用用户户中中卸卸载载的的表表impscott/tigerfromuser=blaketouser=scottfile=blake.dmptables=(unit,manager)装载从一一个用户户到另外外一个用用户的表表impsystem/managerfile=scott.dmpfromuser=scotttouser=blaketables=(*)Oracle数数据库库的备份份与恢复复数据库备备份数据库例例程失败败的恢复复介质故障障的恢复复备份方式式物理备份份就是Oracle的数数据文件件通过操操作系统统的工具具进行的的备份份。热备份数据库启启动并以以归档方方式onlineoffline冷备份数据库关关闭归档方式式非归档方方式逻辑备份份通过Oracle的实实用程序序进行的的备份exp&imp物理备份份确认需要要备份的的文件的的位置数据文件件以Oracle用户的的身份进进入操作作系统sqlplussys/managerselectname,statusfromv$datafile;NAMESTATUS------------------------------------------------------------------------------------------------------------------------------------------------------------------/u02/oradata/test/systest.dbfSYSTEM/u03/oradata/test/rbstest.dbfONLINE/u03/oradata/test/temptest.dbfONLINE/u04/oradata/test/usrtest.dbfONLINE/u04/oradata/test/tooltest.dbfONLINE日志文件件以Oracle用户的的身份进进入操作作系统sqlplussys/managerselectmemberfromv$logfile;MEMBER------------------------------------------------------------------------------------------------------------------------------------------------------/u01/oradata/test/log1test.dbf/u01/oradata/test/log2test.dbf/u01/oradata/test/log3test.dbf物理理备备份份确认认需需要要备备份份的的文文件件的的位位置置控制制文文件件以Oracle用用户户的的身身份份进进入入OS。。$svrmgrlsvrmgr>connectinternal;connectedsvrmgr>showparametercontrol_file;NAMETYPEVALUE------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------control_filesstring/u01/oradata/test/ctrl1test.ctlsvrmgr>通常情情况下下,系系统会会有三三个控控制文文件归档文文件以Oracle的身身份进进入操操作系系统。。键入入如下下命令令:$svrmgrlsvrmgr>connectinternal;connected.svrmgr>showparameterarchive;NAMETYPEVALUE-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------log_archive_desstring?/dba/archlog_archive_formatstring%t_%s.dbfsvrmgr>物理备备份确认需需要备备份的的文件件的位位置参数文文件以oracle用户户的身身份进进入操操作系系统,,并且且知道道oracle数据据库的的sid.假设sid为ora805$cd$ORACLE_HOME/dbs$lsinit*.orainit.orainitora805.ora(其其中initora805.ora是是系系统的的参数数文件件)或者通通过下下列的的命令令查询询instance的的sid::sqlplussys/manager;sql>selectinstancefromv$tread;INSTANCE-----------------------------------------------------------------------------------test/*test为oracle的sid*/热备份(物理备备份)定义在数据库库启动的的情况下下进行的的备份。。对数据据库所有有的物理理文件进进行拷贝贝时,Oracle用用户仍然然处于不不间断运运行的环环境中。。热备份可可以两种种:online与与offline的唯唯一区别别是:数数据库的的tablespace是是否在线线。online需要备份份的tablespace是是在线的的。offline需要备份份的tablespace是是离线的的。数据库热热备份的的步骤1.以以archivelog方式式启动数数据库在正常数数据shutdown。修改改参数文文件:init<sid>.ora增加下面面两行::log_archive_start=truelog_archive_dest=$ORACLE_HOME/dbs/arch重新启动动数据库库,这时时数据库库将以archivelog方方式运行行.$svrmgrlsvrmgr>connectinternal;svrmgr>startupmount;svrmgr>alterdatabasearchivelog;svrmgr>archivelogstart;svrmgr>alterdatabaseopen;数据库热备备份的步骤骤2. 备份份数据库在线的tablespace的备份执行svrmgrlsvrmgr>connectinternal;svrmgr>altertablespacetablespace_namebeginbackup;svrmgr>执行行系统的备备份文件命命令cpsvrmgr>altertablespacetablespace_nameendbackup;下线的tablespace的备份svrmgr>altertablespacetablespace_nameofflinenormal;svrmgr>执执行行操操作作系系统统备备份份的的命命令令svrmgr>altertablespacetablespace_nameonline;数据据库库热热备备份份的的步步骤骤2.备备份份数数据据库库备份份控控制制文文件件svrmgr>connectinternal;svrmgr>alterdatabasebackupcontrolfileto‘‘filename’’reues;备份份控控制制文文件件tracesvrmgr>connectinternal;svrmgr>alterdatabasebackupcontrolfiletotrace;在系系统统发发生生故故障障时时的的恢恢复复工工作作,,需需要要根根据据不不同同的的故故障障情情况况,,在在oracle工工程程师师的的指指导导下下实实现现恢恢复复的的工工作作。。数据据库库热热备备份份的的注注意意事事项项在执执行行热热备备份份的的方方式式下下,,数数据据库库不不能能运运行行于于noarchivelog方方式式。。查询询数数据据库库的的运运行行模模式式::svrmgr>connectinternal;svrmgr>archiveloglist;DatabaselogModeArchiveModesql>connectsys/managersql>selectlog_modefromv$database;LOG_MODE----------------------------------------------------------------ARCHIVELOG在数数据据库库中中,,system表表空空间间不不能能offline,所所以以,,只只能能使使用用online的的热热备备份份方方式式。。对于于一一个个tablespace中中所所有有的的数数据据文文件件均均需需要要进进行行备备份份,,否否则则整整个个tablespace是是无无效效的的。。在做做热热备备份份时时,,尽尽量量选选择择数数据据库库最最不不繁繁忙忙时时进进行行。。冷备备份份定义义::在数数据据库库系系统统正正常常关关闭闭的

温馨提示

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

评论

0/150

提交评论