
oracle备份的几种方法:\x0d\1)导出/导入(EXP/IMP)。\x0d\ 2)热备份。\x0d\ 3)冷备份。\x0d\ 注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份。\x0d\ 一、 导出/导入(Export/Import)\x0d\ 利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。\x0d\ 1、简单导出数据(Export)和导入数据(Import)\x0d\ Oracle支持三种方式类型的输出:\x0d\(1)、表方式(T方式),将指定表的数据导出。\x0d\exp amis/amis@amisdb tables= B_S_AGT_LNE_ACCT_H_0714 file=B_S_AGT_LNE_ACCT_H_0714dmp \x0d\imp odsbdata/odsbdata@amisdb file= B_S_AGT_DEP_ACCT_TDE_H_0714dmp full=y ignore=y\x0d\ (2)、用户方式(U方式),将指定用户的所有对象及数据导出。\x0d\ (3)、全库方式(Full方式),瘵数据库中的所有对象导出。\x0d\ 数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。\x0d\ 2、 增量导出/导入\x0d\ 增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。导出文件名缺省为exportdmp,如果不希望自己的输出文件定名为exportdmp,必须在命令行中指出要用的文件名。\x0d\ 增量导出包括三种类型:\x0d\ (1)、“完全”增量导出(Complete)\x0d\ 即备份三个数据库,比如:\x0d\ exp system/manager inctype=complete file=040731dmp\x0d\ (2)、“增量型”增量导出\x0d\ 备份上一次备份后改变的数据,比如:\x0d\ exp system/manager inctype=incremental file=040731dmp\x0d\ (3)、“累积型”增量导出\x0d\ 累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。比如:\x0d\ exp system/manager inctype=cumulative file=040731dmp\x0d\ 数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。\x0d\ 比如数据库的被封任务可以做如下安排:\x0d\ 星期一:完全备份(A)\x0d\ 星期二:增量导出(B)\x0d\ 星期三:增量导出(C)\x0d\ 星期四:增量导出(D)\x0d\ 星期五:累计导出(E)\x0d\ 星期六:增量导出(F)\x0d\ 星期日:增量导出(G)\x0d\ 如果在星期日,数据库遭到意外破坏,数据库管理员可按一下步骤来回复数据库:\x0d\ 第一步:用命令CREATE DATABASE重新生成数据库结构;\x0d\ 第二步:创建一个足够大的附加回滚。\x0d\ 第三步:完全增量导入A:\x0d\ imp system/manager inctype=RESTORE FULL=y FILE=A\x0d\ 第四步:累计增量导入E:\x0d\ imp system/manager inctype=RESTORE FULL=Y FILE=E\x0d\ 第五步:最近增量导入F:\x0d\ imp system/manager inctype=RESTORE FULL=Y FILE=F\x0d\二、 冷备份\x0d\ 冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份时将关键性文件拷贝到另外的位置的一种说法。对于备份Oracle信息而言,冷备份时最快和最安全的方法。冷备份的优点是:\x0d\ 1、 是非常快速的备份方法(只需拷文件)\x0d\ 2、 容易归档(简单拷贝即可)\x0d\ 3、 容易恢复到某个时间点上(只需将文件再拷贝回去)\x0d\ 4、 能与归档方法相结合,做数据库“最佳状态”的恢复。\x0d\ 5、 低度维护,高度安全。\x0d\ 但冷备份也有如下不足:\x0d\ 1、 单独使用时,只能提供到“某一时间点上”的恢复。\x0d\ 2、 再实施备份的全过程中,数据库必须要作备份而不能作其他工作。也就是说,在冷备份过程中,数据库必须是关闭状态。\x0d\ 3、 若磁盘空间有限,只能拷贝到磁带等其他外部存储设备上,速度会很慢。\x0d\ 4、 不能按表或按用户恢复。\x0d\ 如果可能的话(主要看效率),应将信息备份到磁盘上,然后启动数据库(使用户可以工作)并将备份的信息拷贝到磁带上(拷贝的同时,数据库也可以工作)。冷备份中必须拷贝的文件包括:\x0d\ 1、 所有数据文件\x0d\ 2、 所有控制文件\x0d\ 3、 所有联机REDO LOG文件\x0d\ 4、 Initora文件(可选)\x0d\ 值得注意的使冷备份必须在数据库关闭的情况下进行,当数据库处于打开状态时,执行数据库文件系统备份是无效的。\x0d\ 下面是作冷备份的完整例子。\x0d\ (1) 关闭数据库\x0d\ sqlplus /nolog\x0d\ sql>connect /as sysdba\x0d\ sql>shutdown normal;\x0d\ (2) 用拷贝命令备份全部的时间文件、重做日志文件、控制文件、初始化参数文件\x0d\ sql>cp \x0d\ (3) 重启Oracle数据库\x0d\ sql>startup\x0d\ 三、 热备份\x0d\ 热备份是在数据库运行的情况下,采用archivelog mode方式备份数据库的方法。所以,如果你有昨天夜里的一个冷备份而且又有今天的热备份文件,在发生问题时,就可以利用这些资料恢复更多的信息。热备份要求数据库在Archivelog方式下 *** 作,并需要大量的档案空间。一旦数据库运行在archivelog状态下,就可以做备份了。热备份的命令文件由三部分组成:\x0d\ 1 数据文件一个表空间一个表空间的备份。\x0d\ (1) 设置表空间为备份状态\x0d\ (2) 备份表空间的数据文件\x0d\ (3) 回复表空间为正常状态\x0d\ 2 备份归档log文件\x0d\ (1) 临时停止归档进程\x0d\ (2) log下那些在archive rede log目标目录中的文件\x0d\ (3) 重新启动archive进程\x0d\ (4) 备份归档的redo log文件\x0d\ 3 用alter database bachup controlfile命令来备份控制文件\x0d\ 热备份的优点是:\x0d\ 1 可在表空间或数据库文件级备份,备份的时间短。\x0d\ 2 备份时数据库仍可使用。\x0d\ 3 可达到秒级恢复(恢复到某一时间点上)。\x0d\ 4 可对几乎所有数据库实体做恢复\x0d\ 5 恢复是快速的,在大多数情况下爱数据库仍工作时恢复。\x0d\ 热备份的不足之处:\x0d\ 1 不能出错,否则后果不堪设想。\x0d\ 2 假如热备份不成功,所得结果则不能用于时间点的恢复(scn)。\x0d\如果是全库一般需要配置一个rman\x0d\oracle的恢复方案:\x0d\oracle 恢复表到以前的某个状态\x0d\1用bda登录进去\x0d\select from syssmon_scn_time; --scn 与时间的对应关系 \x0d\每隔5分钟,系统产生一次系统时间标记与scn的匹配并存入syssmon_scn_time表。 \x0d\以下是我在测试机上做了一个测试:\x0d\select from table as of scn 3296161275\x0d\\x0d\select from table as of scn 3296200982;\x0d\\x0d\然后我们恢复到这个检查点。\x0d\以上是oracle的备份和恢复方案。
1、 准备数据库创建脚本
create tablespace whc_tbs datafile 'E:\oracle\oradata\whcdb\whcdbf' size 100M;
--DROP TABLESPACE whc_tbs INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
create user whc identified by whc default tablespace whc_tbs;
grant connect,resource to whc;
grant dba to whc;
--Revoke dba from whc;
其中--的注释语句是删除命名空间和移除DBA用户的权限的。
以上这些脚本是为了我们在新建一个表空间和Oracle数据库的时候使用的。
其中E:\oracle\oradata\whcdb\whcdbf路径是我们要存放数据库数据的位置,因此要保证该路径有足够的空间和足够的访问权限,否则会失败的。
2、 导出数据库对象
在PL/SQL Developer的菜单Tools=>Export User Objects中出来一个对话框界面,然后框选要到处的Oracle 数据库对象,包括表,序列,存储过程,视图,函数等等,并指定导出的文件名称,如下 *** 作。
3)导出表数据
导出表结构和其他对象后,我们下一步就是把数据库的表数据进行导出,PL/SQL Developer工具支持导出数据到PL/SQL数据库脚本中,如下所示。这样导出的脚本,我们可以在PL/SQL Developer工具导入或者自己通过Sql plus 工具进行导入。
至此,我们就已经完成了三种脚本了,包括创建数据库空间和数据库脚本、创建Oracle数据库对象(表、存储过程、视图、序列等)、创建导入数据的脚本,这样三种合一,就是一个完整的数据库了。最后一步就是我们如何导入数据库对象和数据的问题了。
4)导入数据库对象及数据
导入数据库对象和数据的 *** 作一样,都可以通过Import Tables *** 作实现,我们指定刚才上面两步创建的数据库脚本,执行即可再新的环境中创建数据库对象和数据库数据了。如下所示。
完成上面几个步骤,我们在新的数据库环境中,就具备了所有的东西了,顺利完成整个Oracle数据库对象及数据的迁移工作。
以上值得注意的是,我们导出Oracle对象和数据的时候,默认还是原来Oracle数据库的表空间和数据库用户名称的,如果我们想要在新的数据库服务
器中指定不同的表空间和数据库用户对象,那么我们就需要替换生成的sql脚本,并在第一步指定合理的表空间和数据库用户。
如果是Linux平台下的数据库服务器,第一步 *** 作也是差不多的,就是指定表空间的路径名稍微不同,其他 *** 作并无差异。
Oracle数据库的备份与恢复有三种标准的模式,大致分为两大类,备份恢复(物理上的)以及导入导出(逻辑上的)。物理备份又可以根据数据库的工作模式分为非归档模式(Nonarchivelog-style)和归档模式(Archivelog-style),通常,我们把非归档模式称为冷备份,而相应的把归档模式称为热备份。
冷备份是指在数据库关闭的情况下对数据文件、控制文件和重做日志文件进行拷贝。冷备份的优点是简单、快速、安全,缺点是需要停机维护,影响业务连续性。
热备份是指在数据库开启并处于归档模式下对数据文件进行拷贝。热备份的优点是不需要停机维护,不影响业务连续性,缺点是比较复杂、耗时、占用资源。
导入导出是指使用EXP/IMP或者数据泵技术将数据库中的对象或者数据导出到一个二进制文件中,并且可以将这个文件导入到另一个数据库中。导入导出的优点是灵活、方便、可移植,缺点是不能保证一致性、效率低、不能恢复系统对象。
Oracle数据库备份方式
Oracle的内核提供数据库的备份和恢复机制,SQLDBA按表空间进行数据的备份和恢复。Oracle提供两种方式:备份恢复和向前滚动,保证意外故障恢复数据库的一致性和完整性。
1 备份恢复方式
对数据库的某个一致状态建立副本,并储存在介质上脱机保存,以此作为数据库恢复的基础。现以Oracle实用程序Export/Import来介绍备份恢复方式。
Export/Import是Oracle提供的两个互补性程序,即卸载和装载。它们既完成数据库与 *** 作系统文件的互为转载,同时可以有效地回收数据库的碎片,提供不同版本间Oracle 数据传送的手段,进行不同用户间的数据传送。
Export数据卸载,将数据从Oracle写到指定的 *** 作系统文件进行备份。卸载的对象、内容与数量有三种模式:TABLE MODE(表模式)、USER MODE(用户模式)、FULL DATABASEM ODE(所有数据库模式)。使用方式既可用交互方式,也可采用命令行方式,以"关键字=值" 将所需信息在命令行中逐一描述来进行卸载。Export要求用户具有CONNECT或DBA特权。
Import与Export互逆,将 *** 作系统文件重新装载至Oracle数据库中,使用方式如Expo rt。使用者要求具有CONNECT和RESOURCE特权,且可选择部分或全部装入。
Export/Import非常方便,系统开销小,它的限制是输出的 *** 作系统文件采用专门的压缩方式存放,仅提供给Import使用。
也可采用SQLPLUS和SQLLOADER实用工具进行备份。使用SQLPLUS的SPOOL命令通过脱机定向输出,使用PLUS格式化结果,形成指定格式的ASCII文件,需要时可用SQLLOADER 进行加载。它的方便之处是ASCII文件可以编辑,可方便地加载至其他数据库(如FoxPro、 Sybase中)。
2 向前滚动方式
Oracle提供向前滚动方式,使建立备份后成功的事务不会丢失。恢复的基础是数据库的某个一致性状态(即方式1完成的备份恢复),恢复的依据是存档的重作记录文件。启动重作记录文件方法如下:
(1) 启动Oracle;
(2) 连接Oracle:CONNECT SYSTEM/PASSWORD;
(3) 启动ARCHIVE LOG。
出现介质故障时,可用SQLDBA的RECOVER命令,利用存档的重作记录文件恢复一个或多个表空间。RECOVER命令对DATABASE或TABLASPACE进行恢复。前者要求SQLDBA START UP已被排斥方式装载且未被打开;后者对无活跃回退段的表空间执行脱机,要求数据库已装载且被打开。
由于向前滚动方式恢复的依据是存档的重作记录文件,因而系统开销大,但恢复的是建立备份以后的成功事务,所以恢复的程度更高、更完备。
IT JOB
以上就是关于Oracle数据库两个用户名使用同一表空间如何备份与恢复全部的内容,包括:Oracle数据库两个用户名使用同一表空间如何备份与恢复、怎么用PL/SQL备份oracle数据库、oracle数据库如何备份与恢复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)