Oracle10g数据库培训学习经典笔记_第1页
Oracle10g数据库培训学习经典笔记_第2页
Oracle10g数据库培训学习经典笔记_第3页
Oracle10g数据库培训学习经典笔记_第4页
Oracle10g数据库培训学习经典笔记_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、Oracle 10g 数据库 培训学习笔记姓名:唐晓锋EMAIL:MSN:oracle_rac1.数据据库备份份.数据库备备份是对对数据库库的物理理结构文文件,包包括数据据文件,日志文文件和控控制文件件的操作作系统备备份,这这是物理理的操作作系统备备份方法法,这种种备份方方法对每每一个数数据库来来说都是是必需的的。操作作系统备备份有完完全数据据库及部部分数据据库备份,其其中,部部分数据据库备份份在数据据库恢复复需要数数据库前前一段运运行时产产生归档档的日志的支支持完全数据据库备份份是对构构成数据据库的全全部数据据文件、在线日日志文件件和控制制文件的的一个操操作系统统备份。完全数数据库备备份在数

2、数据库正正常关闭闭之后进进行。在在数据库库关闭时时,构成成数据库库的所有有文件都都关闭,文件的的同步号号与当前前检验点点号一致致,不存存在不同同步问题题。利用用这种备备份方法法,在拷拷贝回数数据库备备份文件件后,不不需要进进行数据据库恢复复。完全全数据库库备份可可以备份份到任何何类型的的存储介介质上。部分数据据库备份份也是物物理文件件的操作作系统微微备份。不同的的是,部部分数据据库备份份可以在在数据库库关闭时时也可以以数据库库运行时时进行。例如,对对某一个个表空间间中全部部数据库库文件备备份、单单个数据据文件备备份或控控制文件件备份。部分数据据库备份份由于数数据库文文件之间间存在不不同步,在备

3、份份文件拷拷回数据据库时需需要实施施数据库库恢复,所以这这种方法法只可以以在归档档模式下下使用,使用归归档日志志进行数数据库恢恢复。2.数据据库备份份与恢复复的方法法。对于Oracle数据据库,备备份方法法可以分分为物理理备份与与逻辑备备份。根根据数据据库的归归档方式式不同。物理备备份又可可以分为为非归档档的操作作系统备备份、归归档的操操作系统统备份。逻辑备备份使用用Export工具进进行备份份,用Import进进行逻辑辑恢复。3.数据据库归档档方式。数据库备备份与恢恢复方法法的确定定与数据据库归档档方式有有直接关关系的关关系。因因为如果果选择通通过日志志进行数数 据库库恢复的的备份方方法,则

4、则数据库库必需运运行在归归档模式式下,只只有归档档模式下下才会产产生归档档日志,而只有有产生归归档日志志,数据据库才可可能实施施恢复。参数文件件(parameterfile):设设置内内存各项项参数,指定控控制文件件控制文件件(controlfile): 指定定数据文文件,临临时文件件,重做做日志文文件及其其他控制制信息数据文件件(datafile): 存放放数据库库全部数数据重做日志志文件(redologfile):存放所所有事务务日志归档文件件(archivelog file):重重做日志志文件的的截断备备份口令文件件(password file):对对通过网网络进行行管理的的用户进进行认

5、证证警告文件件(alert file):记记录数据据库文件件运行中中主要事事件的命命令与结结果跟踪文件件(trace file):记记载后台台进程遇遇到的重重大事件件信息构成数据据库的8种文件件类型:Oracle10g数据库库备份与与恢复1 .参参数文件件备份与与恢复。参数文件件名及路路径:/u01/app/oracle/admin/oracle/pfile$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora二二进制配配置文件件$ORACLE_HOME/dbs/init$ORACLE_SID.ora文文本配配置文件件spfile与与pfile的的相互生生成SQLcrea

6、te pfile fromspfile;SQLcreate spfilefrom pfile;spfile与pfile特点点spfile:二进制制存储,参数修修改动态态生效.pfile:文文本存存储,易易于查看看修改,修改后后重启生生效.SQLstartupopen pfile=/u01/app/oracle/initora10.ora指点备备份的参参数文件件启动。如果参数数文件没没有备份份而破坏坏了,可可以到相相同的服服务器上上拷贝一一份pfile文件到到破坏的的服务器器上。修修改参数数的值便便可启动动到nomount下下。需要修改改的参数数有:db_name,instance_name,d

7、b_domain,service_names,control_files,db_block_size,user_dump_dest,background_dump_dest等参数数2.控控制文件件备份与恢恢复(1)控控制文文件概述述每个oracle数据据库必须须至少有有一个控控制文件件,用于于记载数数据库物物理结构构每个oracle数据据库应该该至少有有两个控控制文件件相互镜镜像,并并存储在在不同磁磁盘上防防止磁盘盘失效控制文件件记载信信息包括括:数据库名名称,数据文件件名称和和位置,重做日志志名称和和位置,表空间名名称,当前日志志序列号号,检查点信信息,日志历史史信息.在线备份份控制文文件。

8、SQLalterdatabasebackup controlfile to /u02/oracle/control.backup;SQLalterdatabasebackup controlfile to trace;命令令运行结结束后,在以下下目录中中检测跟跟踪文件件:/u01/app/oracle/admin/ora10/udump/*.trc(2)查查询数数据库控控制文件件SQLselect name,block_size,file_size_blksfrom v$controlfile;查看所有有控制文文件及大大小/u01/app/oracle/oradata/ora10/contro

9、l01.ctl/u01/app/oracle/oradata/ora10/control02.ctl/u01/app/oracle/oradata/ora10/control03.ctlSQL selectvaluefrom v$parameter where name=control_files;查看所有有控制文文件SQLhostlsl/u01/app/oracle/oradata/ora10/control*(3)修修改数数据库控控制文件件* 新增增/移动动一个数数据库控控制文件件SQLselect namefromv$controlfile;SQL createpfilefrom spf

10、ile生生成初参参文件SQL shutdown immediate$cpcontrol03.ctlcontrol04.ctl 新增增一个控控制文件件$mvcontrol03.ctl./controlbak.ctl移移动/更更名一个个控制文文件$viinit$ORACLE_SID.ora修修改初参参文件SQL startuppfile=$ORACLE_HOME/dbs/init$ORACLE_SID.oraSQLselect namefromv$controlfile;SQL createspfilefrompfile;* 所有有控制文文件被全全部破坏坏的恢复复$ cd /u01/app/ora

11、cle/oradata/ora10$ mv *.ctl . 模拟拟破坏控控制文件件$ cp /u01/app/oracle/oradata/ora10/*./bak/备份数据据文件和和日志文文件,以以免重建建控制文文件失败败时数据据文件和和日志文文件也被潜在损损坏.SQLstartupopen 启动动失败SQLstartupnomountSQLaltersystem set重重新指定定控制文文件2 control_files=/u01/app/oracle/oradata/ora10/newcontrolfile01,3 /u01/app/oracle/oradata/ora10/newcon

12、trolfile014 scope=spfile;SQLshutdownimmediate;重重启生效效SQLstartupnomount;SQLselect value fromv$parameterwherename=control_files;查查看新新设定SQLhostlsl/u01/app/oracle/oradata/ora10/查查看数数据/日日志文件件SQLcreate controlfile database ora10 noresetlogs 重建建控制文文件2 logfile3 group 1/u01/app/oracle/oradata/ora10/redo01.log

13、,4 group 2/u01/app/oracle/oradata/ora10/redo02.log,4 group 3/u01/app/oracle/oradata/ora10/redo03.log5 datafile6/u01/app/oracle/oradata/ora10/system01.dbf,7/u01/app/oracle/oradata/ora10/undotbs01.dbf,8/u01/app/oracle/oradata/ora10/sysaux01.dbf,8 /u01/app/oracle/oradata/ora10/users01.dbf,8 /u01/app/or

14、acle/oradata/ora10/example01.dbf9 charactersetzhs16gbkSQLalterdatabaseopen;SQLaltertablespacetemp addtempfile重重新建立立临时文文件2 /u01/app/oracle/oradata/ora10/temp.dbf以以避免免免排序序报错3 size10485760reuseautoextendoff; reuse指重用用原OS文件SQLselect namefromv$controlfile;SQLhostlsl/u01/app/oracle/oradata/ora10控控制文件件已生成成

15、4 .日日志管理理与归档档方式每一个数数据库实实例至少少有两个个日志文文件组,日志文文件中记记录全部部的数据据库修改改信息,日志与与Oracle的后台台进程LGWR一起工工作,当当一个在在线日志志文件组组被写满满后,就就发生日日志却换换。行成成了数据据库的归归档日志志文件,这时LGWR进程将将日志信信息写倒倒下一个个在线日日志文件件组,当当最后一一个可用用的在线线日志文文件的检检查点到到来时,又回到到第一个个组。1.确认认数据库库的归档档方式可可以查询询数据字字典v$database;SQLselect dbid标标识号号,name数数据库库名,created 创建建时间,log_mode归归

16、档模模式from v$database;也可以使使用sql*plus显示数数据库归归档模式式:$sqlplus/ as sysdbaSQLarchiveloglist;2.数据据库归档档设置:第一步关关闭数数据库:SQLshutdown immediate;第二步把把数据库库启动到到mount状状态下:SQLstartupmount;第三步修修改数据据库运行行模式:SQLalter database archivelog;第四步打打开数据据库:SQLalterdatabaseopen;也可以修修改参数数启动自自动归档档进程:将LOG_ARCHIVE_START设为TRUE在数据库库归档完完成后

17、,如果发发生了日日志切换换,则在在规定的的目录下下会自动产生归归档日志志文件,可以使使用alter systemswitchlogfile命令令强制日日志切换。然然后可以以查询数数据库字字典v$archived_log检测是是否有归归档日志志产生。SQLselect recid,stamp,sequence#,first_change#,first_time,namefrom v$archived_log;5.归档档日志参参数设置置1,归档档日志目目录:log_archive_dest=/u01/app/oracle/ora10/arch12,归档档日志文文件存格格式,参参数log_archi

18、ve_format用于于设置日日志格式,可可以使用用%ORACLE_SID%、%T、%t、%S、%s、%raltersystemset log_archive_format=%r-%t-%s.da Scope=spfile;3,归归档日志志镜像目目录log_archive_duplex_dest=/u02/oracle/arch2(1)重重做日日志文件件概述* 记录录数据库库数据进进行的所所有修改改操作,保证数数据的一一致性和和安全性性.* 数据据库失败败需要进进行恢复复时,能能提供恢恢复所需需的依据据.* 每个个数据库库应有多多个redolog文文件,按按序循循环轮流流被使用用进行日日志记载

19、载,每个redolog文件件称为一一个日志志组.一一个例程程至少需需两组联联机重做做日志文文件.多个日志志组应分分开放在在不同磁磁盘上以以均衡磁磁盘IO.* 为防防止每个个日志组组文件本本身失效效,应应对每个个日志组组文件进进行至少少一份镜镜像,每个日志志组文件件和其镜镜像文件件称为其其日志组组的组员员.两者者应分开开放在不不同磁盘上以以避免磁磁盘失效效.(2)查查看重做做日志文文件RRSQL select* fromv$log; 查看看日志组组的信息息Group#BytesMembersArchivedStatus-1 52824400 1NOCurrent2 52824400 1NOIna

20、ctive3 52824400 1NOInactive日志组的的状态:current:使使用状态态,该日日志组正正在使用用中active: 激活活状态, 实例例恢复时时将需要要该日志志组inactive:非非激活状状态,实实例恢复复时不再再需要该该日志组组unused: 未使使用状态态,该日日志组尚尚未记录录过日志志信息(新添加加组)SQL select* fromv$logfile;查查看日志志组成员员信息Group#Status TypeMember- -1 online/u01/app/oracle/oradata/ora10/redo01.log2 stale online/u01/a

21、pp/oracle/oradata/ora10/redo02.log3 stale online/u01/app/oracle/oradata/ora10/redo03.log日志组成成员的状状态:空白:该该文件件是可用用/活动动的(但但不一定定是正在在使用中中的,参参考v$log)stale:表表示该该文件内内容不完完全(系系统特殊殊状态)invalid:表表明该文文件暂不不可访问问(新添添加镜像像)deleted:表明明该文件件已不再再使用(已删除除)(3)修修改重重做日志志文件* 添加加日志组组(添加加重做日日志文件件个数)SQLalterdatabaseora10add logfile

22、group4(/u01/app/oracle/oradata/ora10/redo04.log)size 5M;SQLselect *fromv$log;新新添加加组状态态为unused.* 添加加日志组组成员(添加镜镜像文件件)SQLalterdatabaseora10add logfilemember/u01/app/oracle/oradata/redo01.logtogroup1,/u01/app/oracle/oradata/redo02.logtogroup2,/u01/app/oracle/oradata/redo03.logtogroup3,/u01/app/oracle/or

23、adata/redo03.logtogroup4;SQLselect *fromv$logfile; 新加加镜像状状态为invalid.SQLaltersystem switchlogfile;进进行一次次日志切切换启用用镜像.SQLselect *fromv$logfile; 再查查新加镜镜像状态态.* 删除除日志组组(削减减重做日日志文件件个数)SQLalterdatabaseora10droplogfile group 4;SQLselect *fromv$logfile;SQLselect *fromv$log;SQLaltersystem switchlogfile;inactive

24、和unused状状态的日日志组才才能删除除,current和active状态态的日志志组不能删除除.要删删除current状状态的日日志组, 应先先用logswitch将current状态的的日志组转转换为active状状态,而而要删除除active状态的的日志组组,则需需用checkpoint将其转换换为inactive状态,才能删删除:SQLaltersystem checkpoint;* 删除除日志组组成员(删除镜镜像文件件)SQLalterdatabaseora10droplogfile member/u01/app/oracle/oradata/redo01.log,SQLselec

25、t *fromv$log;SQLselect *fromv$logfile;日志组组中最后后一个日日志成员员不能被被删除;current日志组组中任何何成员都都不能删删除;其他情况况下不能能删组成成员时,可用logswitch将将日志组组状态进进行转换换后才能能删除.SQLaltersystem switchlogfile;手工切换换日志,以将log3转变变为非current状态.* 移动动或重命命名日志志文件SQL alter systemswitchlogfile;SQL shutdown immediateSQL hostmv/u01/app/oracle/oradata/ora10/*

26、.log/u01/appSQL startupmountSQL alter database renamefile3 /u01/app/oracle/oradata/ora10/redo01.log,4 /u01/app/oracle/oradata/ora10/redo02.log,5 /u01/app/oracle/oradata/ora10/redo03.log6 to7 /u01/app/redo01.log,8 /u01/app/redo02.log,9 /u01/app/redo03.log;SQL alter database open;SQL alter systemswitc

27、hlogfile;SQL select* fromv$log;SQL select* fromv$logfile;3.数数据文件件(1)数数据文文件概述述* 每个个oracle数据库库必须至至少有一一个数据据文件,用于存存放数据据库数据据* 多个个数据文文件应分分放在不不同的磁磁盘上以以提高存存取速度度system01.dbf:记录系统统运行信信息,包包含所有有数据库库字典,PL/SQL程序代代码及其其他系统统信息.sysaux01.dbf:system文文件的辅辅助文件件,存放放支持oracle系系统活动动的多种种工具如如LogMinerundotbs01.dbf:存放回退退信息,即DML操

28、作作后的旧旧数据信信息.users01.dbf:新建用户户未指定定存储空空间时,默认数数据存放放在该文文件中.example01.dbf:存放示例例数据信信息.2.物理理备份数数据库(2)查查看数数据库数数据文件件SQLselect name,bytesfromv$datafile;查查看数据据文件及及大小/u01/app/oracle/oradata/ora10/system01.dbf/u01/app/oracle/oradata/ora10/undotbs01.dbf/u01/app/oracle/oradata/ora10/sysaux01.dbf/u01/app/oracle/ora

29、data/ora10/users01.dbf/u01/app/oracle/oradata/ora10/example01.dbfSQLselect *fromdba_data_files;查查看数数据文件件及大小小SQLhostlsl/u01/app/oracle/oradata/ora10/*.dbf(3)修修改数数据库数数据文件件* 移动动/更名名一个数数据文件件SQL shutdown immediate$ cd /u01/app/oracle/oradata/ora10$ mv example01.dbf./example.dbfSQL startupmountSQL alter d

30、atabase ora10 renamefile2 /u01/app/oracle/oradata/ora10/example01.dbf to3 /u01/app/oracle/oradata/example.dbf;SQL alter database open;SQL select* fromv$datafile;* 数据据文件的的扩大和和缩小SQLcreate tablespacetestdatafile新新建表空空间及其其所包含含的数据据文件/u01/app/oracle/oradata/test1.dbfsize 5M;SQL hostlsl/u01/app/oracle/orad

31、ata/test1.dbf 查数数据文件件大小SQL alter database datafile 设置置数据文文件自动动扩充 /u01/app/oracle/oradata/test1.dbf autoextendon;SQL selectautoextensiblefrom dba_data_files 查看看自动扩扩充标志志wherefile_name=/u01/app/oracle/oradata/test1.dbf;SQL alter database datafile 手工工扩充数数据文件件大小 /u01/app/oracle/oradata/test1.dbf resize10

32、M;SQL hostlsl/u01/app/oracle/oradata/test1.dbfSQL alter database datafile 手工工缩减数数据文件件大小 /u01/app/oracle/oradata/test1.dbf resize7M;SQL hostlsl/u01/app/oracle/oradata/test1.dbf* 数据据文件的的添加和和删除A.添加加数据文文件到表表空间SQLaltertablespacetest adddatafile新新增数据据文件/u01/app/oracle/oradata/test2.dbfsize 5M;B.删除除表空间间中的所

33、所有数据据文件SQLselect file_name,tablespace_namefromdba_data_files;查询欲删删的数据据文件对对应的表表空间,是否包包含多个个数据文文件SQLdroptablespace testincluding contents;确定表空空间所含含所有数数据文件件均不需需要,可可直接删删除表空空间.SQLhostrm/u01/app/oracle/oradata/test.dbf删除数据据文件C.删除除表空间间中的部部分数据据文件SQLselect file_name,tablespace_namefromdba_data_files;查询欲删删的数据据

34、文件对对应的表表空间,是否包包含多个个数据文文件SQLalterdatabaseora10datafile/u01/app/oracle/oradata/test2.dbfoffline drop;若表空间间中包含含多个数数据文件件,且部部分数据据文件不不能删掉掉,则欲欲删的数据文文件先进进行脱机机处理.此此处drop不意味味着该数数据文件件在数据据库中已已经删除除,此时时若在操作系统统中直接接删除该该数据文文件,则则数据库库将面临临崩溃.SQLselect file_name,tablespace_name,online_statusfrom dba_data_files;数据文件件依然存存

35、在(状状态recover),故不不能直接接删除该该数据文文件.只只能通过过删除表空空间的方方法删除除表空间间中所有有数据文文件SQLselect owner,segment_name,segment_typefrom dba_segmentswheretablespace_name=TEST;查看表空空间中包包含的所所有数据据文件内内容,将将表空间间中其他他数据文文件中应应保留的内容容进行exp备备份,之之后删除除整个表表空间(此时该该表空间间中所有有数据文文件可删),之后后再重建建表空间间及数据据文件,将备份份内容重重新倒入入.SQLhostrm/u01/app/oracle/oradata

36、/test2.dbf测试:若若不按上上步进行行,违反反警告直直接删除除脱机状状态的数数据文件件,SQLshutdownimmediate;SQLstartupopen;则则数据库库重启可可能报错错,启动动失败,处理方方法如下下:SQLalterdatabaseora10datafile归归档模模式下脱脱机指定定数据文文件/u01/app/oracle/oradata/test2.dbf offline;SQLalterdatabaseora10datafile非非归档档模式下下脱机指指定数据据文件/u01/app/oracle/oradata/test2.dbf offlinedrop;SQL

37、alterdatabaseopen;SQLselect name,status fromv$datafile;SQLdroptablespace testincluding contents;ora10.2可用drop参数删删数据文文件,但但存在限限制:1.表空空间中首首个数据据文件不不能删除除;2.被删删除数据据文件必必须为空空;3.无法法删除表表空间中中最后一一个数据据文件,除非删删表空间间本身.SQLcreate tablespacetest2datafile/u01/test01.dbfsize5M;SQLcreate tablespacetest2add datafile /u01/

38、test02.dbf size5M;SQLcreate tablespacetest2add datafile /u01/test03.dbf size5M;创建表空空间并添添加数据据文件SQLaltertablespacetest2drop datafile /u01/test01.dbf删除表空空间中第第一个数数据文件件报错,不能进进行.SQLalterdatabaseora10datafile/u01/test01.dbfoffline;SQLcreate table mytest(inumber) tablespacetest2;将首个数数据文件件离线,再在表表空间中中建测试试表,则则

39、表将被被保存在在剩余两两数据文文件中SQLselect owner,segment_name,file_id fromdba_extentswheresegment_name=mytest;SQLselect file_name,file_id fromdba_data_fileswherefile_id=?;查看测试试表保存存在哪个个数据文文件中,查到该该数据文文件号后后再根据据文件号号查数据据文件名名SQLaltertablespacetest2drop datafile /u01/test02.dbf;删除表空空间中已已分配了了空间的的数据文文件(非非空)报报错,不不能进行行.SQLal

40、tertablespacetest2drop datafile /u01/test03.dbf;删除表空空间中未未分配空空间的数数据文件件(为空空),允允许进行行.1.完全全数据库库脱机备备份1)编写写一个要要备份的的最新文文件列表表。必需需备份数数据库的的三类文文件,不不得漏掉掉某_一一类文件件。可以以查询dba_data_files确认认数据库库文件、v$logfile确认日日志文件件、v$controlfile确确认控制制文件。SQLselectfile_namefrom dba_data_files;查看数据据文件及及大小/u01/app/oracle/oradata/ora10/sy

41、stem01.dbf/u01/app/oracle/oradata/ora10/undotbs01.dbf/u01/app/oracle/oradata/ora10/sysaux01.dbf/u01/app/oracle/oradata/ora10/users01.dbf/u01/app/oracle/oradata/ora10/example01.dbf关闭数据据库后到到操作系系统下sqlhostcp/u01/app/oracle/oradata/ora10/*.dbf/u02/backupSQLselect* fromv$logfile;查看日志志组成员员信息Group#Status Ty

42、peMember- -1online/u01/app/oracle/oradata/ora10/redo01.log2 stale online/u01/app/oracle/oradata/ora10/redo02.log3 stale online/u01/app/oracle/oradata/ora10/redo03.logsqlhostcp/u01/app/oracle/oradata/ora10/*.log/u02/backupSQLselect name,block_size,file_size_blksfrom v$controlfile;查看所有有控制文文件及大大小/u01/app/oracle/oradata/ora10/control01.ctl/u01/app/oracle/oradat

温馨提示

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

评论

0/150

提交评论