您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > oracle-数据库的备份与恢复[优质ppt]
数据库的备份与恢复Oracle数据库应用与设计杭州电子科技大学2Question•1、创建一个概要文件,要求登录尝试3次,被锁口令3天后自动解除。并使用户user01采用该概要文件。•2、禁用所有角色。Oracle数据库应用与设计杭州电子科技大学3假设各用户初始时都不具有权限,经过下列语句的执行问myuser1,myuser2,user1,user2和user3各具有什么权限?SQLgrantcreatetabletomyrole1withadminoption;SQLgrantcreatesessiontomyrole1;SQLgrantmyrole1tomyrole2withadminoption;SQLgrantmyrole1tomyuser1;SQLgrantmyrole2tomyuser2withadminoption;SQLconnmyuser1/abcSQLgrantmyrole1touser1;SQLconnuser1/123SQLgrantcreatesessiontouser2;SQLconnmyuser2/abcSQLgrantcreatetabletouser3;Oracle数据库应用与设计杭州电子科技大学4目标在完成本章学习后,你将掌握下列技能:数据库备份和恢复策略逻辑备份和恢复的方式归档模式的设置物理备份和恢复的方式闪回操作Oracle数据库应用与设计杭州电子科技大学5本章内容数据库备份和恢复概述逻辑备份和恢复(导出/导入)归档模式的设置脱机备份(冷备份)和恢复联机备份(热备份)数据库的手动恢复闪回操作Oracle数据库应用与设计杭州电子科技大学6本章内容导航数据库备份和恢复概述逻辑备份和恢复(导出/导入)归档模式的设置脱机备份(冷备份)和恢复联机备份数据库的手动恢复闪回操作Oracle数据库应用与设计杭州电子科技大学7数据库备份和恢复概述——备份和恢复的概念备份与恢复是数据库管理中最重要的方面之一。如果数据库崩溃却没有办法恢复它,那么会对企业造成毁灭性的结果。数据库的备份是数据库中数据的副本,它可以保护数据在出现意外损失时最大限度的恢复。Oracle数据库使用几种结构来保护数据:数据库后备、日志、回滚段和控制文件。Oracle数据库应用与设计杭州电子科技大学8数据库备份和恢复概述——数据库系统故障类型故障类型语句故障介质故障实例故障用户进程故障导致数据库操作中止的故障包括四种类型:在执行SQL语句过程中发生的逻辑故障可导致语句故障。如果用户编写的SQL语句无效,就会发生逻辑故障当用户程序出错而无法访问数据库时发生用户进程故障。导致用户进程故障的原因是异常断开连接或异常终止进程当Oracle的数据库实例由于硬件或软件问题而无法继续运行时,就会发生实例故障在数据库无法正确读取或写入某个数据库文件时,会发生介质故障Oracle数据库应用与设计杭州电子科技大学9Oracle数据库的备份包括以下两种类型:备份物理备份逻辑备份•对数据库的操作系统物理文件(如数据文件、控制文件和重做日志文件等)的备份•有脱机备份(冷备份)和联机备份(热备份)•对数据库逻辑组件(如表、视图和存储过程等数据库对象)的备份•有导出/导入(EXPORT/IMPORT)数据库备份和恢复概述——备份类型Oracle数据库应用与设计杭州电子科技大学10导出/导入(EXPORT/IMPORT)–将ORACLE中数据移出/移入数据库。–导出实用程序将数据库中的对象定义和数据备份到一个操作系统二进制文件中。–导入实用程序读取二进制导出文件并将对象和数据载入数据库中。数据库备份和恢复概述——逻辑备份和恢复Oracle数据库应用与设计杭州电子科技大学11数据库备份和恢复概述——物理备份类型冷备份–冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。–冷备份时将关键性文件拷贝到另外的位置。热备份–数据库需要二十四小时运行,而且随时有新的数据加入。Oracle数据库应用与设计杭州电子科技大学12本章内容导航数据库备份和恢复概述逻辑备份和恢复(导出/导入)归档模式的设置脱机备份(冷备份)和恢复联机备份数据库的手动恢复闪回操作Oracle数据库应用与设计杭州电子科技大学13逻辑备份和恢复(导出/导入)——三种工作方式使用以下三种方法调用导出和导入实用程序调用导出和导入程序命令行参数参数文件交互提示符在命令行指定执行程序的参数和参数值。以交互的方式提示用户逐个输入参数的值。允许用户将运行参数和参数值存储在参数文件中,以便重复使用参数Oracle数据库应用与设计杭州电子科技大学14逻辑备份和恢复(导出/导入)——三种模式用户模式(U方式)–导出用户所有对象以及对象中的数据表模式(T方式)–导出用户所有表或者指定的表整个数据库(E方式)–导出数据库中所有对象Oracle数据库应用与设计杭州电子科技大学15逻辑备份和恢复(导出/导入)——增量导出/导入增量导出是一种常用的数据备份方法,它只能由SYSTEM对整个数据库来实施。三种类型:–完全型(COMPLETEEXPORT):备份整个数据库–积累型(COMULATIVEEXPORT):备份上一次积累型备份所改变的数据–增量型(INCREAMENTALEXPORT):备份上一次备份后改变的数据Oracle数据库应用与设计杭州电子科技大学16导出工具exp交互式命令行方式使用的例子$exptest/test@hduEnterarrayfetchbuffersize:4096回车Exportfile:expdat.dmpc:\mybak.dmp生成导出的文件名(1)E(ntiredatabase),(2)U(sers),or(3)T(ables):(2)U3Exporttabledata(yes/no):yes回车Compressextents(yes/no):yes回车ExportdoneinZHS16GBKcharactersetandZHS16GBKNCHARcharactersetAbouttoexportspecifiedtablesviaConventionalPath...Table(T)orPartition(T)tobeexported:(RETURNtoquit)stu要导出的表名..exportingtableCMAMENU4336rowsexportedTable(T)orPartition(T)tobeexported:(RETURNtoquit)要导出的表名nTable(T)orPartition(T)tobeexported:(RETURNtoquit)回车Exportterminatedsuccessfullywithoutwarnings.逻辑备份和恢复(导出/导入)——交互式导出expOracle数据库应用与设计杭州电子科技大学17导入工具imp交互式命令行方式使用的例子$impImport:Release8.1.6.0.0-Productionon星期五12月717:01:082001(c)Copyright1999OracleCorporation.Allrightsreserved.用户名:test口令:****连接到:Oracle8iEnterpriseEditionRelease8.1.6.0.0-64bitProductionWiththePartitioningoptionJServerRelease8.1.6.0.0-Production导入文件:expdat.dmpc:\mybak.dmp输入插入缓冲区大小(最小为8192)30720经由常规路径导出由EXPORT:V08.01.06创建的文件已经完成ZHS16GBK字符集和ZHS16GBKNCHAR字符集中的导入逻辑备份和恢复(导出/导入)——交互式导入impOracle数据库应用与设计杭州电子科技大学18导入工具imp交互式命令行方式使用的例子(续)只列出导入文件的内容(yes/no):no由于对象已存在,忽略创建错误(yes/no):noyes导入权限(yes/no):yes导入表数据(yes/no):yes导入整个导出文件(yes/no):noyes.正在将TEST的对象导入到TEST..正在导入表“stu21行被导入成功终止导入,但出现警告。逻辑备份和恢复(导出/导入)——交互式导入impOracle数据库应用与设计杭州电子科技大学19导出工具exp非交互式命令常用例子–$exphelp=y获取帮助–$expsystem/managerfile=bible_dblog=dible_dbfull=y导出一个完整数据库–$expsystem/managerfile=bible_dblog=dible_dbfull=yrows=n导出数据库定义而不导出数据–$expsystem/managerfile=seaparklog=seaparkowner=(seapark,amy,amyc,harold)导出一个或一组指定用户所属的全部表、索引和其他对象–$expseapark/seaparkfile=tanklog=tanktables=tank–$expsystem/managerfile=tanklog=tanktables=(seapark.tank,amy.artist)导出一个或多个指定表逻辑备份和恢复(导出/导入)——命令行导出expOracle数据库应用与设计杭州电子科技大学20导入工具imp非交互式命令常用例子–$imphelp=y获取帮助–$impsystem/managerfile=bible_dblog=dible_dbfull=yignore=y导入一个完整数据库–$impsystem/managerfile=seaparklog=seaparkfromuser=seapark导入一个或一组指定用户所属的全部表、索引和其他对象–$impsystem/managerfile=tankfromuser=seaparktouser=seapark_copyignore=y将一个用户所属的数据导入另一个用户–$impsystem/managerfile=tanklog=tankfromuser=seaparktables=(a,b)导入一个指定表逻辑备份和恢复(导出/导入)——命令行导入impOracle数据库应用与设计杭州电子科技大学21逻辑备份和恢复(导出/导入)——exp常用参数Oracle数据库应用与设计杭州电子科技大学22逻辑备份和恢复(导出/导入)——imp常用参数Oracle数据库应用与设计杭州电子科技大学23数据库对象已经存在–一般情况,导入数据前应该彻底删除目标数据下的表,序列,函数/过程,触发器等。数据库对象已经存在,按缺省的imp参数,则会导入失败;如果用了参数ignore=y,会把exp文件内的数据内容导入;如果表有唯一关键字的约束条件,不合条件将不被导入;如果表没有唯一关键字的约束条件,将引起记录重复。权限不够–把A用户数据导入B用户下,A用户要有imp_full_database权限。逻辑备份和恢复(导出/导入)——导入过程常见问题Oracle数据库应用与设计杭州电子科技大学24数据库对象有主外键约束–不符合主外键约束时,数据会导入失败。解决办法:先导入主表,再导入依存表disable目标导入对象的主外键约束,导入数据后,再enable它们。imp和exp使用的字符集不同–如果字符集不同,导入会失败,可以改变unix环境变量或者NT注册表里NLS_LANG相关信息.导入完成后再改回来。逻辑备份和恢复(导出/导入)——导入过程常见问题Oracle数据库应用与设计杭州电子科技大学25导入大表(大于80M)时,存储分配失败–默认的EXP时,compress=Y,也就是把所有的数据压缩在一
本文标题:oracle-数据库的备份与恢复[优质ppt]
链接地址:https://www.777doc.com/doc-4272069 .html