Oracle数据库备份和恢复操作手册

合集下载

oracle 数据库的备份与恢复

oracle 数据库的备份与恢复
– $ imp system/manager file=tank fromuser=seapark touser=seapark_copy ignore=y 将一个用户所属的数据导入另一个用户
– $ imp system/manager file=tank log=tank fromuser=seapark tables=(a,b)
第七页,共51页。
数据库备份和恢复概述
——备份类型
Oracle数据库的备份包括以下两种类型:
备份
物理备份
逻辑备份
• 对数据库的操作系统物理文件 (如数据文件、控制文件和重做日 志文件等)的备份 • 有脱机备份(冷备份)和联机
备份(热备份)
• 对数据库逻辑组件(如表、视 图和存储过程等数据库对象)
– $ exp seapark/seapark file=tank log=tank tables=tank – $ exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)
导出一个或多个指定表
第十八页,共51页。
逻辑备份和恢复(导出/导入)
– $ exp system/manager file=bible_db log=dible_db full=y rows=n 导出数据库定义而不导出数据
– $ exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold) 导出一个或一组指定用户所属的全部表、索引和其他对象
第四页,共51页。
本章内容导航
数据库备份和恢复概述 逻辑备份和恢复(导出/导入) 归档模式的设置 脱机备份(冷备份)和恢复 联机备份 数据库的手动恢复 闪回操作

Oracle:备份、还原数据库

Oracle:备份、还原数据库

Oracle:备份、还原数据库⼀ . 数据的导⼊与导出1. 数据的导出:输⼊exp 指令,没有数据的表不导出。

2. 数据的导⼊:进⼊到备份⽂件所在路径,输⼊imp 指令。

实际⼯作中不使⽤这种⽅式导出。

⼆. 数据库的冷备份:常⽤的说明:冷备份,称为归档备份,指的是数据库要关闭服务,备份如下⽂件: 控制⽂件:控制着oracle 的实例信息 “v$controlfile” 数据字典⽂件 重做⽇志⽂件:“v$logfile”数据⽂件:"v$datafile"核⼼配置⽂件 (pfile) :""1. 使⽤ sys登陆2. select * from v$controlfile ;select * from v$logfile select * from v$datafile show parameter pfile3, 记录好这些⽂件的路径4. 关闭 Oracle 服务。

shutdown immediate5 拷贝所有备份⽂件6 重新启动服务startup这种备份是允许关闭计算机服务。

参考: ——————————————————————————————————————————————————————————————————————————————Oracle数据导⼊导出imp/expOracle数据导⼊导出imp/exp在cmd的dos命令提⽰符下执⾏,⽽不是在sqlplus⾥⾯,但是格式⼀定要类似于:imp/exp ⽤户名/密码@service_name或oracle_sid full=y file=C:\导出⽂件名称.dmp ignore=yimp 命令是在dos提⽰符下执⾏的,直接cmd后执⾏⽽不是在sql下执⾏的数据导出:1 将数据库完全导出,⽤户名wlj ,密码wlj 导出到D:exportoracle.dmp中exp wlj/wlj@IP地址/orcl file=d:exportoracle.dmp full=yexp wlj/wlj@ip地址/orcl file=d:exportoracle.dmp full=yexp wlj/wlj@ip地址/orcl tables=表名 file=d:exportoracle.dmp full=y--expdp导出数据expdp CCENSE/CCENSE@OracleDB directory = "dpdata1" dumpfile ="oracleExpdp.dmp" logfile = oracleExpdp20161103.log注意:如果出现:EXP-00056: 遇到 ORACLE 错误 12154ORA-12154: TNS: ⽆法解析指定的连接标识符EXP-00000: 导出终⽌失败这个很明显是连接不上你的数据库,你可以查看⼀下你的net manager⾥⾯的服务名有没配置好解决⽅法:1、不再服务端的话,在其它机器可能通过service_name或oracle_sid来访问数据库,注意service_name必须写正确,需要查看oracle net manager 中的数据库的tns配置实例名称(上⾯@后⾯的 orcl)是否与需要连接的⼀样,cmd中使⽤ tnsping orcl 可以ping同的话,就说明没有问题。

Oracle数据库的备份与恢复操作手册(Linux)

Oracle数据库的备份与恢复操作手册(Linux)

CommVault Oracle数据库的备份及恢复For Linux北京同有飞骥科技有限公司上海分公司技术部目录1.iDataAgent for Oracle on Linux安装准备 (2)mV ault软件安装 (2)2.1.在Linux安装iDataAgent For Oracle (2)2.2.在Linux上载卸iDataAgent For Oracle (6)3.配置Oracle备份 (6)3.1.确认RMAN的备份方式 (6)3.2.配置CommVault内oracle子客户端 (7)3.3.建立备份策略 (10)4.Oracle数据恢复 (17)4.1.恢复控制文件 (17)4.2.将数据库启到Mount状态下 (20)4.3.恢复数据文件和归档日志 (20)4.4.重建redolog,并打开数据库 (25)1.iDataAgent for Oracle on Linux安装准备1.版本兼容,详见”Online Book CD”系统需求部分;2.Oracle需要处于自动归档模式下;3.在安装iData Agent For Oracle的过程中要停止oracle数据库,请做好停机准备;4.需要事先确认Oracle数据库的备份方式,本文档采用NOCATALOG的方式备份恢复oracle数据库。

5.在安装之前,请检查在CommServer和本机上的/etc/hosts文件中是否写入了CommServer和本机的IP地址及对应的主机名;mVault软件安装2.1. 在Linux安装iDataAgent For Oracle1.运行安装程序;2.接受安装协议;3.选择安装类型,本项目中选择安装到物理主机;4.选择Galaxy客户端模块;5.基本软件安装,选择备份服务器;6.选择安装路径;7.选择日志存放路径;8.输入Galaxy组名;9.选择客户端使用的存储策略;10.配置ORACLE实例;11.按照提示选择直至完成;2.2. 在Linux上载卸iDataAgent For Oracle1.运行卸载程序;# cd /appbakup/galaxy# ./cvpkgrm2.按ENTER开始卸载;This script will uninstall Galaxy from your machine.Press ENTER to begin ...3.选择要卸载的模块;1) CVGxBase <= Galaxy Base Module2) CVGxIDA <= FileSystem iDataAgent3)CVGxOrIDA <= Oracle iDataAgent4) ExitSubsystem number: [3]选择模块的序列号,用于相应模块的卸载。

(完整版)Oracle数据库备份和恢复操作手册.doc

(完整版)Oracle数据库备份和恢复操作手册.doc

1ORACLE 数据库数据备份和恢复操作手册1.1. ORACLE 参数设置进入 CMD 操作界面,使用sqlplus 连接数据库,图例 1 数据库连接操作连接语法: sqlplus system/Oracle2013@orcl参数说明参数说明备注sqlplus 语法命令system 数据库管理员用户名Oracle2013 system 用户密码数据库安装目录的tnsnames.ora 文件中可以找到orcl 数据库连接标示符Oracle11G 目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN图例 2 成功连接数据库环境变量设置 (在 Sqlplus 中执行 )create or replace directory <dir_name> as‘c:\tmpdir’;参数说明参数说明备注dir_name c:\tmpdir 路径名称文件路径也可以是另外的随意目录,用单引号括起来。

图例 3 环境变量设置1.2.数据备份备份脚本: expdp system/Oracle2013@orcl directory=file_pathdumpfile=ARADMIN.dat logfile=ARADMIN.log schemas=ARADMIN参数说明参数说明备注expdp 语法命令system 数据库管理员用户名Oracle2013 system 用户密码数据库安装目录的 tnsnames.ora 文件中可以找到orcl 数据库连接标示符Oracle11G 目录:C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMINdirectory 文件目录名称导出数据库文件的存放目录dumpfile 数据库文件名称导出数据库文件的文件名logfile 数据库日志文件名称导出数据库的日志文件名称schemas 数据库用户操作:图例 4 数据库备份操作成功导出。

Oracle的数据备份与恢复

Oracle的数据备份与恢复

第四部分 数据备份(续)
• 联机热备份:
– 前提条件:数据库必须工作在Archivelog模 式 – 要进行的步骤:
• 逐个表空间备份数据文件
– ALTER TAB_SP BEGIN BACKUP; – 拷贝与表空间有关的数据文件; – ALTER TAB_SP END BACKUP;
• 备份归档日志文件
第二部分 相关的背景知识
• 数据备份模式
– 物理备份
• 冷备份:也称脱机备份,是在数据库处于关闭的状态下的 备份操作。 • 热备份:也称联机备份,是在数据库处于打开状态下的备 份操作。
– 逻辑备份
• 整个数据库的逻辑备份 • 指定表的逻辑备份 • 指定用户的逻辑备份
• Oracle数据库工作模式
第二部分 相关的背景知识(续)
– 1、关闭数据库、 – 2、利用操作系统命令移动控制文件 – 3、编辑init.ora文件,重新定义control_files 中的控制文件路径。 – 4、重新启动数据库。
第四部分 数据备份
• 冷备份(脱机备份):
– Shutdown数据库 – 复制所有的数据文件、控制文件、联机重做 日志文件(比较简单的做法是复制database 的整个目录)。 – 重新启动数据库。
– ARCHIVELOG模式:归档日志模式,即当当前联 机日志的记录空间充满后,形成一个归档日志文件 写到系统配置指定的位置。 – NOARCHIVELOG模式:非归档日志模式,不形成 归档日志文件,联机日志切换时把原有的内容覆盖。
• 数据文件:
– 存放表空间的文件(一个表空间可以跨越多个数据 文件),通过操作系统可以对数据文件进行备份。 – 用 SELECT * FROM DBA_DATA_FILES 可以查询 当前数据库中所有的数据文件。

Oracle10g数据库备份与恢复操作手册

Oracle10g数据库备份与恢复操作手册

Oracle10g数据库备份与恢复操作⼿册Oracle 10g数据库备份与恢复操作⼿册⽬录Oracle 10g数据库备份与恢复操作⼿册 (1)前⾔ (5)⽂档⽬的 (5)⽂档范围 (5)⽬标读者 (5)其他说明 (5)1冷备份 (6)1.1冷备份概述 (6)1.2备份步骤 (6)1.3恢复测试 (6)1.4结论 (7)2热备份 (7)2.1热备份特点 (7)2.2备份操作 (7)2.2.1数据⽂件备份 (8)2.2.2在线备份控制⽂件 (9)3热备份下的完全恢复 (9)3.1⾮ system表空间数据⽂件受损 (9)3.2 system表空间数据⽂件或⼤量数据⽂件受损 (10)3.3回滚数据⽂件损坏恢复 (11)3.4临时表空间⽂件损坏的恢复 (11)3.5控制⽂件损坏的恢复 (12)3.5.1单个控制⽂件被破坏 (12)3.5.2所有控制⽂件被破坏 (12)3.6⽇志⽂件损坏的恢复 (13)3.6.1正常关机情况下⾮当前联机⽇志⽂件被破坏 (13)3.6.2正常关机情况下当前联机⽇志损坏 (14)3.6.3数据库运⾏时或⾮正常关机情况下已归档⽇志 active⽇志⽂件被破坏 (15)3.6.4有备份的情况下数据库运⾏时或⾮正常关机情况下未归档active或 current⽇志⽂件被破坏173.6.5⽆备份的情况下数据库运⾏时或⾮正常关机情况下未归档active或 current⽇志⽂件被破坏194恢复不完全恢复 (20)4.1时间的恢复 (20)4.1.1概述 (20)4.1.2操作步骤 (21)4.2基于SCN的恢复 (22)4.2.1概述 (22)4.2.1操作步骤 (22)5 RMAN备份与恢复 (23)5.1 RMAN概述 (23)5.2 RMAN服务器和⽬标服务器的配置 (24)5.3 RMAN配置 (25)5.4备份集操作 (26)5.5 RMAN备份与恢复 (26)5.5.1全库备份与恢复 (26)5.5.2表空间备份与恢复 (27)5.5.3表空间备份与恢复 (28)5.5.4控制⽂件备份与恢复 (28)5.5.5归档⽂件备份与恢复 (29)5.5.6 RMAN脚本 (29)5.5.7 RMAN增量备份与恢复 (30)6逻辑备份(export/import) (31)6.1概述 (31)6.2简单导出、导⼊数据 (31)6.2.1简单导出 (31)6.2.2简单导⼊ (32)6.3增量导出导⼊ (32)6.3.1增量导出 (32)6.3.2导⼊ (33)7 Flashback. 337.1概述 (33)7.2 Flashback配置步骤 (33)7.3⾏级闪回操作步骤 (35)7.4表级闪回操作步骤 (36)7.5库级闪回操作步骤 (38)8 LogMiner.. 398.1概述 (39)8.2系统配置 (39)8.3操作步骤 (40)⽬录前⾔⽂档⽬的 备份与恢复是数据库管理中最重要的⽅⾯之⼀。

Oracle10g数据库的备份与恢复

Oracle10g数据库的备份与恢复

oracle 10g备份与还原总结一.总述1.数据库归档模式:* 非归档模式:当数据库数据只读不会改变时,数据不会改变,数据库适合用非归档模式, 这样提高性能* 归档模式:对于数据库数据经常变动,数据库最好用归档模式,这样可以尽量避免数据库数据丢失,使出现问题时灾害降到最低2.非归档模式与归档模式间的切换(在命令窗口下):@检查当前日志操作模式f:\>sqlplus sys/dba as sysdba连接数据库sql>select log_mode from v$database;@关闭数据库,后装载数据库,只能在mount状态下改变日志操作模式sql>startup mount@改变日志模式sql>alter database achivelog;(变为归档方式,否则为nochivelog)sql>alter database open;3.查看归档模式相关信息:@若采用默认设置,归档日志位置在快速恢复区@配置归档日志位置 log_archive_dest_n (n=[1:10])sql>alter system setlog_archive_dest_1 = 'location =c:\demo\archive [optional]';sql>alter system setlog_archive_dest_2 = 'service =standby [mandatory] [reopen]';其中:location 是本地service 是远程optional 无论归档是否成功,都会覆盖重做日志mandatory只有成功归档才会覆盖重做日志reopen 重新归档时间间隔默认是300s@显示归档信息,即显示显示日志操作模式sql>select name,log_mode from v$database;@显示归档日志信息sql>select name,sequence#,first_change# from v$archive_log;sequence#: 归档序列号first_change# : 起始SCN值@显示归档日志位置sql>select dest_name,destination,status from v$archive_dest;dest_name 归档位置参数名destination 位置@显示日志历史信息sql>select * from v$loghist;threade# : 重做线程号sequence# : 日志序列号first_change# : 起始SCN值first_time : 起始SCN发生时间switch_change : 切换SCN值二.非归档模式下的备份与还原. 日志采用覆盖原有日志的方式存储. 出现介质失败时,只能恢复到过去的完全备份点. 数据库OPEN状态是,不能备份数据库. 必须先关闭数据库,再备份,且必须备份所有数据,控制文件1.备份==冷备份@ 先关闭数据库sql>shutdown immediate@ 拷贝所有数据文件,和控制文件2.恢复* 数据文件出现丢失,但备份以来的重做日志内容尚未被覆盖,此时可以完全恢复@装载数据库sql>startup force mount@复制数据文件备份@恢复数据文件sql>recover datafile 1@打开数据库sql>alter database open;* 备份文件的重做日志内容已经被覆盖,则只能还原到备份点@关闭数据库@复制所有数据和控制备份文件至原位置@装载数据库,执行恢复命令sql>startup mountsql>recover database until cancel提示控制文件不再使用原有重做日志@用resetlogs选项打开数据库sql>alter database open resetlogs;三.归档模式. 可以防止数据丢失. 数据处于OPEN状态时可以进行备份. 当出现介质失败时,除了SYSTEM表空间中的数据文件外其他的都可以在open状态下恢复. 可执行完全恢复,也可以恢复到备份点与失败点之间的某时刻1.备份1)冷备份shutdown后拷贝所需数据文件和控制文件2)热备份@将数据库设置为归档模式@在数据库上发出全局检查点,在所有的数据文件头块上加锁sql>alter database begin backup ;@备份数据文件及控制文件数据文件直接拷贝至其他目录控制文件需使用alter database backup controlfilesql>alter database backup controlfile to 'd:\backup\demo.ctl';@结束数据备份,为确保数据文件备份的同步性,还应该归档当前日志组sql>alter database end backup;sql>alter system archive log cuurent;3)备份表空间*脱机备份(表空间处于OFFLINE状态,SYSTEM表空间和正在使用的UNDO空间不能脱机)@确定表空间包涵的数据文件,如空间USERSsql>select file_name from dba_data_fileswhere tablespace_name = 'users';@设置表空间为脱机状态sql>alter tablespace users offline;@复制数据文件@设置表空间联机sql>alter tablespace users online;*联机备份@确定对应关系@设置表空间为备份模式sql>alter tablespace users begin backup ;@复制数据文件@设置表空间为正常模式sql>alter tablespace users end backup ;*处理联机备份失败当执行联机备份时,若出现例程失败,再次打开数据库时,如果数据文件仍处于备份状态,则会出错,此时需要结束备份@装载数据库sql>startup force mount@查看处于联机备份状态的所有数据文件sql>select file# from v$backup where status = 'active';@结束联机备份状态sql>alter tablespace end backup或alter tablespace datafile backup;或recover datafile 序号@打开数据库sql>alter database open;2.还原1)完全恢复相关命令:recover database :恢复数据库的多个数据文件(在MOUNT状态下运行)recover tadaspace :恢复多个表空间的所有数据文件(在open状态下运行)recover datafile :恢复一个或多个数据文件(在mount,open 状态下都可)*在mount状态下恢复数据文件(用于SYSTEM表空间恢复)@装载数据库 mount状态@确定需要恢复的数据文件sql>select file#,error from v$recover_file@拷贝备份至原位置@恢复数据库 recover..上述命令@打开数据库 alter database open;*在open状态下恢复关闭后意外对视的数据文件,此时数据库将无法打开@装载数据库 mount@确定需要恢复的数据文件@使相应的数据文件脱机sql>alter database datafile 4 offline;@打开数据库sql>alter database open@复制数据备份文件@恢复数据文件@是数据文件联机 alter database datafile 4 online; *在open状态下恢复打开时意外丢失的数据文件@确定要恢复的数据文件@使数据文件脱机@复制数据文件@恢复相应的表空间或数据文件@使相应的表空间或数据文件联机*在open状态下恢复未备份的数据文件(要求在归档模式下,新建数据文件,其从简历开始的所有归档日志必须全部存在)@装载数据库@确定要恢复的数据文件@是数据文件脱机@打开数据库@重新建立数据文件sql>alter database create datafile 'd:\demo\users01.dbf';@恢复数据文件@使数据文件联机2)不完全恢复使用已备份的数据文件,归档日志,和重做日志,将数据库恢复到备份点与失败点之间某个时刻的状态*恢复分类基于时间的恢复:误删除表,误截断表,提交了错误的数据基于取笑恢复:恢复到某个日志序列号之前的状态基于SCN的恢复:恢复到特定SCN值的状态基于备份控制文件恢复:表空间被意外删除,或所有控制文件全部损坏*不完全恢复指令recover database until timerecover database until changerecover database until cancelrecover database .. using backup controlfile*基于时间的恢复@关闭数据库(为防止备份失败,应备份当前数据库所有文件 @装载数据库 startup mount@复制所有备份数据文件,并确定备份文件的时间点sql>select file#,to_char(time,'yyyy-mm-dd hh24:mi:ss)from v$recover_file;@执行recover database until timesql>recover database until time "2006-09-26 16:40:33'@以resetlogs方式打开数据库,并检查恢复结果sql>alter database open resetlogs;@备份数据库所有数据文件和控制文件,因为当以resetlogs方式打开数据库后会重新建立重做日志,清空原有重做日志的所有内容,并将日志序列号复位为1sql>select name from v$datafile;sql>alter database begin backup;拷贝数据文件sql>alter database end backup;sql>alter database backup controlfileto 'd:\backup\demo.ctl' reuse;sql>alter system archive log cuurent;*基于SCN恢复@关闭数据库@装载数据库 mount@复制所有备份数据文件,确定备份文件SCN值sql>select file#,change#, from v$recover_file; @执行recover database until changesql>recover database until change 675978;@以resetlogs方式打开数据库@备份数据库所有数据文件和控制文件*基于取消恢复@关闭数据库@装载数据库@复制所有备份的数据文件,确定备份文件的SCN值sql>select file#,change# from v$recover_file; @执行recover database until canclesql>recover database until cancel@以resetlogs方式打开数据库@备份所有数据文件和控制文件*基于备份控制文件的恢复@通过查看alert文件,确定误操作时间@关闭数据库@复制所有备份的数据文件,控制文件@装载数据库@执行recover database ing backup controlfile sql>recover database until time '2004-09-26 19:51:06'using backup controlfile@以resetlogs 方式打开数据库@备份所有数据文件和控制文件。

oracle数据库还原的详细流程

oracle数据库还原的详细流程

oracle数据库还原的详细流程
Oracle数据库还原的详细流程如下:
1. 关闭Oracle数据库服务:在开始还原之前,需要确保Oracle数据库服务已经关闭。

这样可以避免在还原过程中发生数据冲突或损坏。

2. 确认数据库备份:在开始还原之前,需要确认数据库的备份情况。

数据库的备份可以分为完全备份和增量备份两种。

完全备份是指对整个数据库进行备份,而增量备份是在完全备份的基础上,对新增或修改的数据进行备份。

可以通过查看备份记录或者与负责备份的人员进行沟通来确认备份情况。

3. 选择合适的还原方式:根据备份文件的位置和可用资源,选择适合的还原方式。

例如,如果备份文件在本地磁盘上,可以选择磁盘还原;如果备份文件在云端,可以选择云存储还原。

4. 执行还原操作:根据选择的还原方式,执行相应的操作。

例如,在磁盘还原中,需要将备份文件复制到目标磁盘中。

在云存储还原中,需要将备份文件从云存储下载到本地或直接在云平台上进行还原。

5. 启动Oracle数据库服务:完成还原后,启动Oracle数据库服务,验证数据是否正确加载并可用。

请注意,以上步骤仅供参考,具体操作可能因实际情况而有所不同。

在进行数据库还原时,建议参考Oracle官方文档或咨询专业人士以获取更准确的信息和指导。

Oracle数据库备份与恢复用户手册

Oracle数据库备份与恢复用户手册

Oracle数据库备份与恢复用户手册目录1 安装oracle 客户机软件 (3)2 安装oracle数据库agent (3)3 备份oracle数据库 (4)3.1 更改归档模式 (4)3.2 连接数据库 (5)3.3 确认RMAN的备份方式 (5)3.4 修改备份脚本(这部分是在装有oracle数据库的client端操作) (5)3.4.1 在修改脚本之前应该收集关于oracle数据库的信息 (5)3.4.2 现在我们来修改备份数据库的脚本 (7)3.5 添加备份策略 (14)4 恢复数据库 (14)4.1 oracle全库恢复 (14)4.2 oracle表空间恢复 (14)1安装oracle 客户机软件1. 将 NetBackup CD-ROM 插入到客户计算机的驱动器中。

2. 将工作目录切换到 CD-ROM 目录:cd cd_rom_directory其中 cd_rom_directory 是 CD-ROM 的目录路径。

在某些平台上,可能需要安装该目录。

3. 启动安装程序。

./install4. 选择选项 2 NetBackup 客户机软件。

5. 按照提示完成安装。

2安装oracle数据库agent1. 作为机器上的 root 用户登录。

2. 将 CD-ROM 插入驱动器中。

3. 将工作目录切换到 CD-ROM 目录。

cd /CD_mount_point4. 通过执行 install 脚本装入并安装软件。

注意要求在本地机器上运行的 NetBackup 版本级别(例如 5.0)与要安装的数据库代理程序版本级别相匹配。

输入./installa. 选择“NetBackup 数据库代理软件”选项。

将出现下面的提示:Do you want to do a local installation? (y/n) [n]b. 回答y。

您将看到一个菜单,菜单上显示 CD-ROM 上可用的所有数据库代理程序。

Oracle数据库备份与恢复之完全攻略

Oracle数据库备份与恢复之完全攻略

Oracle数据库备份与恢复之完全攻略一、导出/导入(Export/Import)利用Export可将数据从数据库中提取出来,利用Import则可将提取出来的数据送回到Oracle数据库中去。

1、简单导出数据(Export)和导入数据(Import)Oracle支持三种方式类型的输出:(1)表方式(T方式),将指定表的数据导出。

(2)用户方式(U方式),将指定用户的所有对象及数据导出。

(3)全库方式(Full方式),瘵数据库中的所有对象导出。

数据导入(Import)的过程是数据导出(Export)的逆过程,分别将数据文件导入数据库和将数据库数据导出到数据文件。

2、增量导出/导入增量导出是一种常用的数据备份方法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。

在进行此种导出时,系统不要求回答任何问题。

导出文件名缺省为export.dmp,如果不希望自己的输出文件定名为export.dmp,必须在命令行中指出要用的文件名。

增量导出包括三种类型:(1)“完全”增量导出(Complete)即备份三个数据库,比如:exp system/managerinctype=complete file=040731.dmp。

(2)“增量型”增量导出备份上一次备份后改变的数据,比如:exp system/managerinctype=incremental file=040731.dmp。

(3)“累积型”增量导出累计型导出方式是导出自上次“完全”导出之后数据库中变化了的信息。

比如:exp system/manager inctype=cumulative file=040731.dmp。

数据库管理员可以排定一个备份日程表,用数据导出的三个不同方式合理高效的完成。

比如数据库的被封任务可以做如下安排:星期一:完全备份(A) 星期二:增量导出(B) 星期三:增量导出(C)星期四:增量导出(D) 星期五:累计导出(E) 星期六:增量导出(F)星期日:增量导出(G)。

Oracle备份恢复操作说明

Oracle备份恢复操作说明

Oracle备份恢复操作说明配置要求在使用爱数备份存储柜进行备份和恢复 Oracle 数据库、表空间、控制文件和归档日志等数据之前,应检验每个要保护的 Oracle SID(数据库)是否满足下列条件:∙使用爱数备份存储柜的用户应被分配了一个可用来登录到Oracle 数据库的Oracle 用户帐户。

∙Oracle Server 的数据库日志模式设置为ARCHIVELOG。

∙Oracle Server 的自动归档在Oracle 参数初始化文件中是启用的(该文件的默认名称为Init(SID).ora,其中SID 是实例名称)。

∙在Oracle Server 上有一个Oracle 在其中生成Archived Logfiles 的目录。

创建 Oracle 用户账户必须存在具有适当数据库权限的用户帐户爱数备份存储柜才能访问 Oracle 数据库。

您可以使用具有所需权限的现有用户帐户,或者创建具有所需权限的新用户帐户。

若要创建专门用于爱数备份存储柜的 Oracle 用户帐户,请使用 Oracle 服务器管理器应用程序并从提示符处输入以下命令:create user USERNAME identified by PASSWORD;grant dba to USERNAME;请确保用分配的登录用户名替换 USERNAME,用适当的密码替换 PASSWORD。

输入以上所有命令之后,分配的用户将具有保护数据库所需的适当权限。

注意:确保您是作为DBA 连接。

检验归档日志模式在备份 Oracle 数据库之前,必须将每个数据库的 Oracle 数据库日志模式设置为ARCHIVELOG,并且必须启用每个数据库的自动归档设置。

必须启用 ARCHIVELOG,爱数备份存储柜中的 Oracle 备份模块才能在运行备份操作前将每个表空间置于备份模式。

检验数据库日志是否处于 ARCHIVELOG 模式以及是否启用了“自动归档”的具体步骤如下:∙从服务器管理器的命令提示符处键入以下命令:archive log list;您应该看到: Database Log Mode ARCHIVE LOGAutomatic Archival ENABLED如果有任一参数没有正确设置,请关闭数据库,然后正确设置它。

Oracle数据库备份与恢复的三种方法

Oracle数据库备份与恢复的三种方法

Oracle数据库备份与恢复的三种⽅法备份与恢复的三种⽅法Oracle数据库有三种标准的备份⽅法,它们分别是导出/导⼊(EXP/IMP)、热备份和冷备份。

导出备件是⼀种逻辑备份,冷备份和热备份是物理备份。

⼀、导出/导⼊(Export/Import) 利⽤Export可将数据从数据库中提取出来,利⽤Import则可将提取出来的数据送回到Oracle数据库中去。

1、简单导出数据(Export)和导⼊数据(Import) Oracle⽀持三种⽅式类型的输出: (1)、表⽅式(T⽅式),将指定表的数据导出。

(2)、⽤户⽅式(U⽅式),将指定⽤户的所有对象及数据导出。

(3)、全库⽅式(Full⽅式),瘵数据库中的所有对象导出。

数据导⼊(Import)的过程是数据导出(Export)的逆过程,分别将数据⽂件导⼊数据库和将数据库数据导出到数据⽂件。

2、增量导出/导⼊ 增量导出是⼀种常⽤的数据备份⽅法,它只能对整个数据库来实施,并且必须作为SYSTEM来导出。

在进⾏此种导出时,不要求回答任何问题。

导出⽂件名缺省为export.dmp,如果不希望⾃⼰的输出⽂件定名为export.dmp,必须在命令⾏中指出要⽤的⽂件名。

增量导出包括三种类型: (1)、“完全”增量导出(Complete) 即备份三个数据库,⽐如:exp system/manager inctype=complete file=040731.dmp (2)、“增量型”增量导出 备份上⼀次备份后改变的数据,⽐如:exp system/manager inctype=incremental file=040731.dmp (3)、“累积型”增量导出 累计型导出⽅式是导出⾃上次“完全”导出之后数据库中变化了的信息。

⽐如:exp system/manager inctype=cumulative file=040731.dmp 数据库管理员可以排定⼀个备份⽇程表,⽤数据导出的三个不同⽅式合理⾼效的完成。

Oracle9i数据库备份和恢复方案

Oracle9i数据库备份和恢复方案

Oracle9i数据库备份和恢复方案一、数据库备份备份前,先建立一个备份目录backup用来放置备份文件(此目录建议放在服务器单独的备份硬盘上)。

接着我们可在Oracle安装目录下(也可以是其它目录)建立文件oracle_backup。

需要说明的是,oracle_backup文件需要对Oracle的参数进行初始化,为了方便起见,我们不妨将初始化命令放到一个文件中(文件名定为oracle_env),再由oracle_backup文件调用它。

1. oracle_env文件对Oracle的参数进行初始化,其内容如下:export ORACLE_BASE=/opt/oracleexport ORACLE_HOME=/opt/oracle/product/9.2.0export ORACLE_SID=megaexport ORACLE_TERM=xtermexport NLS_LANG=american_america.ZHS16GBKexport ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/libexport PATH=$PATH:$ORACLE_HOME/bin: /usr/ccs/bin: /usr/ucbCLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibCLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib2. oracle_backup文件对数据库做export导出,导出的文件名定为字母“mega”加当天日期,即假如当天日期是12月10号,则导出的文件名为“mega1210.dmp”,以区别于其它日期的备份文件。

Avamar备份和恢复oracle数据库操作手册

Avamar备份和恢复oracle数据库操作手册

Avamar备份和恢复Oracle数据库操作手册1.1 Oracle数据库备份首先要进入Sqlplus用archive log list—查看是否开启了归档模式;Oracle做热备份必须是归档模式,同时需要进入mount或open状态。

因此当发现不是归档模式时,需要采用以下步骤先把Oracle修改为归档模式才能正常备份。

1.首先关闭数据库:2.然后重新连接进sqlplus,再把Oracle启动到mount状态,然后修改成归档日志模式,修改完成后打开数据库到open状态(用alter database open 命令):1.2 Oracle数据库恢复注意:在Oracle恢复之前有几项准备工作要做:首先,在执行恢复之前,先关闭Oracle(SQL>shutdown immediate;);然后,删除联机日志和归档日志(或者转移到另外的目录)。

在测试时为了验证Oracle可恢复,在备份完成后删除了一些表,那么恢复前需要删除现有的联机日志和归档日志。

如果不删除日志,由于在恢复时,只会恢复控制文件和数据库,不会恢复日志文件,因此为了避免恢复后控制文件再去读取现有的日志文件(导致再次做删除操作),所以需要删除联机日志和归档日志(防止删除时正好联机日志做了日志切换)。

具体操作:把D盘oracle\product\10.2.0\oradata\test目录下的REDO01.LOG、REDO02.LOG的、REDO03.LOG 三个联机日志删除,然后再把D盘oracle\product\10.2.0下的相关归档日志删除。

再把Oracle启动到nomount状态,可运行如下命令:C:\Document and Setting\Administrator>sqlplus / as sysdba或C:\Document and Setting\Administrator>sqlplus /nologSQL>conn as sysdba;SQL>Startup nomount;完成以上步骤之后,就可以在Avamar上执行恢复:1.登陆Avamar Administrator管理界面,选择“backup and restore”;2.进入“Backup and Restore”界面;1)选择客户机;2)选择Windows Oracle Rman。

oracle数据库的备份与还原

oracle数据库的备份与还原

oracle数据库的备份与还原(本地及远程操作)执行环境:可以在SQLPLUS.EXE或者DOS(命令行)中执行,DOS中可以执行时由于在oracle 8i 中安装目录\ora81\BIN被设置为全局路径,该目录下有EXP.EXE与IMP.EXE文件被用来执行导入导出。

oracle用java编写,我想SQLPLUS.EXE、EXP.EXE、IMP.EXE这俩个文件是被包装后的类文件。

SQLPLUS.EXE调用EXP.EXE、IMP.EXE他们所包裹的类,完成导入导出功能。

用IMP和EXP处理的:EXP userid=<username>/<password>@<service_nam e> file=<d mpname>IMP userid==<usernam e>/<password>@<service_name> file=<d mpname > fromuser=<fromuser> touser=<touser>(eg: IMP emp/emp@ora9i file=e:emp.dmp fromuser=emp touser=emp )实例:数据的导出expqhmis/qhmis@qhmis file='d:\backup\qhmis\qhmis20060526.dmp' grants=y ful l=n1 将数据库TEST完全导出,用户名system密码manager 导出到D:\daochu.dmp中exp system/manager@TEST file=d:\daochu.dmp full=y2 将数据库中system用户与sys用户的表导出exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)3 将数据库中的表table1 、table2导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)4 将数据库中的表table1中的字段filed1以"00"打头的数据导出exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"上面是常用的导出,对于压缩我不太在意,用winzip把dmp文件可以很好的压缩。

oracle数据库备份和还原

oracle数据库备份和还原

Oracle备份和还原*注意:数据库A名称--要进行备份的数据库名称数据库B名称--要还原到的数据库名称(即新建的空库)一、备份1. 手动创建一个文件夹。

例如:d:\BackupDB2. 确定要数据库A的服务处于启动状态,其他停止。

3.以下cmd下运行:set oracle_sid = 数据库名称A4. sqlplus /nolog -----进入sql命令环境-----5. conn system/数据库A在创建时设置的口令(@数据库连接符(在本机操作的时候才会用到,远程操作,则不用))(连接时提示ORA-12154,表示client_hone网络配置问题)conn orcladmin/manager@ora8_3_36. create user orcladmin identified by manager; -----创建用户并设置密码-----7. grant dba to orcladmin; ----- 给创建的用户赋予dba 权限-----8. create directory dump_file_dir as 'd:\BackupDB'; -----创建目录-----9. select tablespace_name from dba_tablespaces; (因为后面还原数据库到新建的库时需要创建表空间,还原步骤中使用)-----查询表空间-----其中:和不是表空间名称,其它的都是。

10. 打开另一个CMD窗口执行备份命令:expdp orcladmin/manager@数据库A名称directory=dump_file_dir dumpfile=备份文件名.dmp------该句中orcladmin/manager就是第六步创建的用户名和密码;“备份文件名”是自定义的----- 备份完成标识如图:二、还原 (用具有bda权限的用户登录,先删除旧用户 drop user 用户名cascade,再还原)*还原之前需知道备份源库的表空间1. 确定数据库B的服务处于启动状态2. set oracle_sid=数据库B的名称3. sqlplus /nolog -----进入sql命令环境-----4. conn system/数据库B的口令@你的数据库名字(@数据库连接符(在本机操作的时候才会用到,远程操作,则不用))(连接时提示ORA-12154,表示client_hone网络配置问题)conn system as sysdba5.create user orcladmin identified by centaurus; -----创建用户并设置密码-----\create user saipadmin identified by saipmanager;grant dba to orcladmin; ----- 给orcladmin 权限-----grant dba to saipadmin;6. 创建表空间(备份库的表空间):在D盘创建文件夹oradata,再新建文件夹命名twhis(数据库B名称)7. 在D盘下创建一个oracleback文件夹:-----需手工创建(创建地址和名称自定义)-----create directory dump_file_dir as 'd:\oracleback';grant read,write on directory dump_file_dir to orcladmin;grant read,write on directory dump_file_dir to saipadmincs;8. 另一个cmd窗口下执行还原命令:set oracle_sid=数据库B的名称impdp orcladmin/centaurus@twhiscs directory=dump_file_dir dumpfile=之前备份的名称.dmp table_exists_action=replaceimpdp saipadmin/saipmanager directory=dump_file_dir dumpfile=20170331.dmptable_exists_action=replace logfile=20170405.log-----orcladmin/manager就是第五步创建的用户名和密码;“之前备份的名称”是之前备份数据库时的备份名称-----*注:还原到现存库时,1.现有库必须和备份库的表结构相同。

oracle备份恢复教程

oracle备份恢复教程
– 使用 SHOW ALL 命令显示所有设置:
RMAN> SHOW ALL;
LIST 命令操作
– 列出备份集和数据文件副本 – 列出指定表空间的备份集和所有数据文件的副本 – 列出指定范围的备份集和包含归档日志的副本
LIST 命令
– 列出数据库中的所有文件的备份:
RMAN> LIST BACKUP OF DATABASE;
Oracle 数据库备份 恢复教程
第三部分 数据库备份与恢复
(RMAN原理)
2
备份恢复的考虑因素
– 保护数据库以防止发生多种类型的故障 – 延长平均故障间隔时间 (MTBF) – 缩短平均恢复时间 (MTTR) – 尽可能减少数据损失
故障类别
– 语句故障 – 用户进程故障 – 用户错误 – 网络故障 – 例程故障 – 介质故障
• 自动并行化 • 生成较少的重做日志 • 限制备份的 I/O 操作 • 磁带流式处理 – 管理备份和恢复任务
恢复管理器组件
目标数据库
服务器会话 (轮询)
恢复管理器 (RMAN)
服务器会话 (通道)
服务器会话 (通道)
服务器会话
(通道) 服务器会话
MMLΒιβλιοθήκη (缺省)Enterprise Manager
备份集
数据文件 数据文件
1
4
数据文件 控制文件 2
数据文件 3
数据文 数据文件 3 的副本
件3
控制文件 控制文件的副本
归档日志 文件
归档日志的副本
数据文件 1
数据文件 2
数据文件 3
数据文件 4
控制文件
备份集 1 备份集 2 备份集 3
备份集

Oracle数据库备份与恢复

Oracle数据库备份与恢复

一:exp/imp(导出与导入装库与卸库)1.1 基本命令1. 获取帮助$ exp help=y$ imp help=y2. 三种工作方式(1)交互式方式$ exp // 然后按提示输入所需要的参数(2)命令行方式$ exp [email=[ft=#333333,,]user/pwd@dbname]user/pwd@dbname[/email] file=/oracle/test.dmp full=y // 命令行中输入所需的参数(3)参数文件方式$ exp parfile=username.par // 在参数文件中输入所需的参数参数文件username.par 内容userid=username/userpassword buffer=8192000compress=n grants=yfile=/oracle/test.dmp full=y3. 三种模式(1)表方式,将指定表的数据导出/导入。

导出:导出一张或几张表:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2导出某张表的部分数据$ exp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1 query=\―where col1=\‗…\‘and col2 \<…\‖导入:导入一张或几张表$ imp user/pwd file=/dir/xxx.dmp log=xxx.log tables=table1,table2 fromuser=dbuser touser=dbuser2 commit=y ignore=y(2)用户方式,将指定用户的所有对象及数据导出/导入。

导出:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=(xx,yy)只导出数据对象,不导出数据(rows=n )$ exp user/pwd file=/dir/xxx.dmp log=xxx.log owner=user rows=n导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2commit=y ignore=y(3)全库方式,将数据库中的所有对象导出/导入导出:$ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=ycommit=y ignore=y导入:$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser21.2 高级选项1. 分割成多个文件以多个固定大小文件方式导出:这种做法通常用在表数据量较大,单个dump文件可能会超出文件系统的限制的情况$ exp user/pwd file=1.dmp,2.dmp,3.dmp,…filesize=1000m log=xxx.log full=y以多个固定大小文件方式导入$ imp user/pwd file=1.dmp,2.dmp,3.dmp,… filesize=1000mtables=xxx fromuser=dbuser touser=dbuser2 commit=y ignore=y2. 增量导出/导入// oracle 9i 以后exp 不再支持inctype必须为SYS 或SYSTEM 才可执行增量导出导入增量导出:包括三个类型:(1)―完全‖增量导出(Complete)// 备份整个数据库$ exp user/pwd file=/dir/xxx.dmp log=xxx.log inctype=complete(2)―增量型‖增量导出导出上一次备份后改变的数据。

Oracle数据库的备份与恢复操作手册(Linux)

Oracle数据库的备份与恢复操作手册(Linux)

Oracle数据库的备份与恢复操作手册(Linux) Oracle数据库的备份与恢复操作手册(Linux)本文档详细介绍了在Linux操作系统下使用Oracle数据库进行备份与恢复的操作步骤和注意事项。

以下为各个章节的详细内容:1、概述1.1 目的1.2 范围1.3 定义2、备份概念2.1 数据库备份的重要性2.2 备份策略2.3 数据库备份类型2.3.1 完全备份2.3.2 增量备份2.3.3 差异备份2.4 备份工具与方法选择3、备份前的准备工作3.1 检查数据库完整性3.2 空间与容量评估3.3 备份计划编制4、完全备份4.1 备份前的准备工作4.2 备份命令示例4.3 备份后的验证与恢复测试5、增量备份5.1 备份前的准备工作5.2 增量备份的实施步骤5.3 增量备份恢复操作6、差异备份6.1 备份前的准备工作6.2 差异备份的实施步骤6.3 差异备份恢复操作7、数据文件的备份与恢复7.1 数据文件的备份方法7.2 数据文件的恢复方法7.3 数据文件的故障处理8、控制文件和日志文件的备份与恢复8.1 控制文件和日志文件的备份方法8.2 控制文件和日志文件的恢复方法8.3 控制文件和日志文件的故障处理9、归档日志的备份与恢复9.1 归档日志的备份方法9.2 归档日志的恢复方法9.3 归档日志的故障处理10、RMAN备份与恢复10.1 RMAN备份与恢复的概述10.2 RMAN备份策略的设计10.3 RMAN备份与恢复的实施步骤10.4 RMAN备份与恢复的故障处理附件:本文档涉及的附件请参见附件文件夹,其中包括备份脚本示例、恢复测试脚本示例等。

法律名词及注释:1、数据库备份:将数据库中的数据和相关文件复制到另一个存储介质,以防止数据丢失或损坏。

2、备份策略:制定备份的时间间隔、备份类型和备份数量等规则,用于指导备份操作。

3、完全备份:备份整个数据库的所有数据和文件。

4、增量备份:仅备份数据库中发生变化的部分,相对于上一次备份。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1ORACLE数据库数据备份和恢复操作手册1.1.ORACLE参数设置进入CMD操作界面,使用sqlplus连接数据库,图例 1 数据库连接操作连接语法:sqlplus system/Oracle2013@orcl参数说明备注sqlplus 语法命令system 数据库管理员用户名Oracle2013 system用户密码orcl 数据库连接标示符数据库安装目录的tnsnames.ora文件中可以找到Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome _1\NETWORK\ADMIN图例 2 成功连接数据库环境变量设置(在Sqlplus中执行)create or replace directory <dir_name> as ‘c:\tmpdir’;参数说明备注dir_name 路径名称c:\tmpdir 文件路径也可以是另外的随意目录,用单引号括起来。

图例 3 环境变量设置1.2.数据备份备份脚本:expdp system/Oracle2013@orcl directory= dump log schemas=ARADMIN参数说明备注expdp 语法命令system 数据库管理员用户名Oracle2013 system用户密码orcl 数据库连接标示符数据库安装目录的tnsnames.ora文件中可以找到Oracle11G目录:C:\app\Administrator\product\11.2.0\dbhome _1\NETWORK\ADMINdirectory 文件目录名称导出数据库文件的存放目录dumpfile 数据库文件名称导出数据库文件的文件名logfile 数据库日志文件名称导出数据库的日志文件名称schemas 数据库用户图例 4 数据库备份操作成功导出。

图例 5 成功导出1.3.数据恢复1.3.1.删除ARADMIN用户1.连接数据库sqlplus system/Oracle2013@orcl图例 6 连接数据库2.删除目标数据库中的ARADMIN用户drop user ARADMIN cascade;图例 7 成功删除目标数据库中的ARADMIN用户1.3.2.重新创建ARADMIN用户1.连接数据库sqlplus system/Oracle2013@orcl图例 8 连接数据库2.创建ARADMIN用户create user ARAdmin identified by AR#Admin# default tablespace ARSYSTEM temporary tablespace ARTMPSPC quota unlimited on arsystem;图例 9创建ARADMIN用户3.赋予数据库权限grant alter session,create cluster,create database link,create sequence,createsession,create synonym,create table,create view,create procedure,create trigger,query rewrite to ARAdmin;图例 10 赋予数据库权限1.3.3.数据库导入导入命令:impdp system/Oracle2013@orcl directory= dumpfile=ARADMIN20130606.DAT logfile= ARADMIN20130614.log schemas=ARADMIN图例 11 数据库导入导入完成1.4.EXP/IMP与EXPDP/IMPDP 对比1.0.1运行位置不同1.0.2EXP/IMP不同模式原理:exp/imp 默认会是传统路径,这种模式下,是用SELECT 加数据查询出来,然后写入buffer cache,在将这些记录写入evaluate buffer. 最后传到Export客户端,在写入dump 文件。

直接路径模式下,数据直接从硬盘读取,然后写入PGA,格式就是export的格式,不需要转换,数据再直接传到export 客户端,写入dump 文件.这种模式没有经过evaluation buffer。

少了一个过程,导出速度提高也是很明显.1.0.3EXPDP/IMPDP不同模式原理:expdp/impdp 默认就是使用直接路径的,所以expdp要比exp快。

Network Link这种模式很方便,但是速度是最慢的,因为它是通过insert,select + dblink来实现的。

速度慢也由此可见了。

1.0.4网络和磁盘影响expdp/impdp 是服务端程序,影响它速度的只有磁盘IO。

exp/imp 可以在服务端,也可以在客户端。

所以,它受限于网络和磁盘。

1.0.5功能上的区别更换表空间,用exp/imp 的时候,要想更改表所在的表空间,需要手工去处理一下,如alter table xxx move tablespace_new之类的操作。

用impdp 只要用remap_tablespace='tabspace_old':'tablespace_new'-----------------------------------当指定一些表的时候,使用exp/imp时,tables的用法是tables=('table1','table2','table3')。

expdp/impdp用法是tables='table1','table2','table3'-----------------------------------是否要导出数据行exp (ROWS=Y 导出数据行,ROWS=N 不导出数据行)expdp content(ALL:对象+导出数据行,DATA_ONLY:只导出对象,METADATA_ONLY:只导出数据的记录)====================================================================== 1.0.6使用中的优化事项EXP和DIRECT=Y配合使用的是RECORDLENGTH参数,它定义了Export I/O缓冲的大小,作用类似于常规路径导出使用的BUFFER参数。

建议设置RECORDLENGTH参数为最大I/O缓冲,即65535(64kb)。

其用法如下:如:exp userid=system/manager full=y direct=y recordlength=65535log=exp_full.log--直接路径不能使用在tablespace-mode--直接路径不支持query 参数,query只能在conventional path模式下使用。

-- buffer 选项只对conventional path exp 有效。

对于直接路径没有影响。

对直接路径,应该设置RECORDLENGTH 参数。

-- 对于直接路径下,RECORDLENGTH参数建议设成64k(65535)。

这个值对性能提高比较大----------------------------------------------------------------------IMPOracle Import进程需要花比Export进程数倍的时间将数据导入数据库。

某些关键时刻,导入是为了应对数据库的紧急故障恢复。

为了减少宕机时间,加快导入速度显得至关重要(1)避免I/O竞争Import是一个I/O 密集的操作,避免I/O竞争可以加快导入速度。

如果可能,不要在系统高峰的时间导入数据,不要在导入数据时运行job等可能竞争系统资源的操作。

(2)增加排序区Oracle Import进程先导入数据再创建索引,不论INDEXES值设为YES或者NO,主键的索引是一定会创建的。

创建索引的时候需要用到排序区,在内存大小不足的时候,使用临时表空间进行磁盘排序,由于磁盘排序效率和内存排序效率相差好几个数量级。

增加排序区可以大大提高创建索引的效率,从而加快导入速度。

(3)调整BUFFER选项Imp 参数BUFFER定义了每一次读取导出文件的数据量,设的越大,就越减少Import 进程读取数据的次数,从而提高导入效率。

BUFFER的大小取决于系统应用、数据库规模,通常来说,设为百兆就足够了。

其用法如下:imp user/pwd fromuser=user1 touser=user2 commit=yfeedback=10000 buffer=10240000(4)使用COMMIT=Y选项COMMIT=Y表示每个数据缓冲满了之后提交一次,而不是导完一张表提交一次。

这样会大大减少对系统回滚段等资源的消耗,对顺利完成导入是有益的。

(5)使用INDEXES=N选项前面谈到增加排序区时,说明Imp 进程会先导入数据再创建索引。

导入过程中建立用户定义的索引,特别是表上有多个索引或者数据表特别庞大时,需要耗费大量时间。

某些情况下,需要以最快的时间导入数据,而索引允许后建,我们就可以使用INDEXES=N 只导入数据不创建索引,从而加快导入速度。

我们可以用INDEXFILE选项生成创建索引的DLL脚本,再手工创建索引。

我们也可以用如下的方法导入两次,第一次导入数据,第二次导入索引。

其用法如下:imp user/pwd fromuser=user1 touser=user2 commit=yfeedback=10000 buffer=10240000 ignore=y rows=y indexes=n-----------------------------------imp user/pwd fromuser=user1 touser=user2 commit=yfeedback=10000 buffer=10240000 ignore=y rows=n indexes=y(6)增加 LARGE_POOL_SIZE如果在init.ora 中配置了MTS_SERVICE,MTS_DISPATCHERS等参数,tnsnames.ora中又没有(SERVER=DEDICATED)的配置,那么数据库就使用了共享服务器模式。

在MTS模式下,Exp/Imp操作会用到LARGE_POOL,建议调整LARGE_POOL_SIZE到150M。

检查数据库是否在MTS模式下: SQL>select distinct server from v$session;如果返回值出现none或shared,说明启用了MTS----------------------------------------------------------------------EXPDP据泵与exp/imp 来说性能有很大的提高,其中影响最大的就是paralle。

相关文档
最新文档