您的位置:首页 > 数据库 > Oracle

Oracle备份与恢复一

2004-08-04 16:11 435 查看
Oracle备份与恢复一<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

Frank

20040730

备份与恢复是数据库系统重要工作,目的是防止数据被破坏以后影响数据库系统的正常工作,虽然备份与恢复也不能保证100%无损失,但是作为防范手段,是需要真正掌握的。
 

1、  装库和卸库备份
imp和exp是两个重要命令
exp负责将数据库中的数据快速拷贝到另外的地方,以防数据损失。
查询exp命令的帮助时:exp help=y 将会详细介绍exp命令的参数含义。
Imp 是exp的反过程,两者结合使用,才能完成备份工作。
卸库的方法:
a)         表模式卸库
b)        用户模式卸库
c)        全库模式卸库
 

使用方法:
sql>$exp   或 c>exp
“$”字符表示在sqlplus状态下调用操作系统命令。
两种操作方式:交互式和参数驱动式
交互式:
使用卸库程序前必须将所用数据库打开。
c:/>exp
 

用参数驱动方式
exp userid=system/manager  buffer=10240  file=tables.dmp
compress=yes grants=yes indexes=yes  rows=yes
tables=(persons,check_body,depts)
……
direct=yes。
 

简化格式:
exp userid=system/manager  file=tables.dmp   tables=(persons,check_body,depts)
 

用parfile文件方式:
经常作装卸库的用户,可以创建一个参数文件,把所有参数设置放入改文件,调用exp命令时,需用parfile参数指定此参数文件。
例:下面为:my.txt文件内容
userid=system/manager
buffer=10240
file=tables.dmp
log=tables.log
tables=(persons,check_body,depts)
statistics=compute
   c:/>exp parfile= c:/my.txt
 

注:parfile参数不能放到参数文件中,这是唯一不能放到参数文件中的参数。

   

用户模式卸库:
可以将一个或多个用户的所有数据全部倒出,包括其中的视图、同义词和过程函数等。
全库模式卸库:
将整个系统的数据和文件卸出,就用全库方式。前提条件:用于全库模式卸库的用户需授予卸出整库角色(EXP_FULL_DATABASE).
SQL> grant   “EXP_FULL_DATABASE”  to   “jxl”;
 

卸库失败处理:
1.         表模式卸库
用户都必须具有倒出该对象权限。
2.         全库模式卸库
授予该用户DBA角色或EXP_FULL_DATABASE角色
在使用卸库程序前必须将所用数据库打开。
SQL>alter database open
 

 

装库方法:
?           交互式调用装库程序imp。
?           用参数驱动方式,即在调用装库程序imp时指定一些参数。
?           用parfile指定参数文件来调用imp。
 

1、  表模式装库
表模式装库对应所有的卸库模式所产生的卸库文件,只要在其中指定用户和所要装入的表即可。
2、  用户模式装库
用户模式装库能够装入由用户模式和全库模式卸出的文件。注意:对于用户模式卸出的文件,最好选用户模式装库,这在恢复整个用户的所有对象时非常有用。

3、  全库模式装库
由于装入大量数据和文件,花费时间较长,故不常用。其他方法同上,要注意的是:用于全库方式装库的用户必须授予“IMP_FULL_DATABASE”角色。
例:
  SQL>grant  “IMP_FULL_DATABASE”  to  “www”;
 

装库失败处理:
1、  普通用户要求导入由DBA所倒出的文件
解决方法:授予该用户DBA权限
2、用户要求倒出由其他用户所倒出的卸库文件:需要使用原来用户进行装库。
例:  警告:此对象由swj倒出,不是当前用户。
解决方法:
以用户swj装库,指定touser=www  (hsman为目的用户)
imp  userid= swj/swj  files = users.dmp  fromuser = ‘swj’   touser = ‘www’
 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息