Oracle数据库备份与还原常用批处理命令

导出

     导出具体分为:导出表、导出方案、导出数据库三种方式;

     导出使用?exp(export的缩写)命令,该命令常用的选项有:

                     userid:  用于指定执行导出操作的用户名,口令、连接字符串

                     tables:  用于指定执行导出操作的表;

                     owner:  用于指定执行导出操作的方案;

                     full=y:   用于指定导出操作的数据库;

                     inctype: 用于指定执行导出操作的增量类型;

                     rows:    用于指定执行导出操作时是否要导出表中的数据;

                     file:       用于指定导出的文件名;

下面举例说明它们的用法:

       (1)导出自己的表:

                 exp   userid=scott/tiger@mydatabase tables=(emp)  file=(D:\emp.dmp)

                 其中,scott表示用户名,tiger表示密码,mydatabase表示数据库实例,emp表示

                 要导出的表名,后面这个不用我说了吧,很明显的。

         (2)导出其它方案的表:

                 需要dba的权限或是exp_full_database的权限,如system就可以导出

                scott的表,exp userid=system/manager@mydatabase tables=(scott.emp) file=(d:\emp.dmp)

                其中,导出的表一定要指名是哪个方案的表。

         (3)导出表的结构:

                 exp userid=scott/tiger@mydatabase  tables=(emp) file=(d:\emp.dmp)

                 rows=n    其中,rows=n就指名要导出表的结构。

      (4)使用直接导出方式:

                  exp userid=scott/tiger@mydatabase  tables=(emp) file=(d:\emp.dmp)

                 direct=y  其中,direct=y就指名直接导出,这种方式比默认的常规方式要快,

                当数据量大时,可以考虑使用这样的方法。但是,这时需要数据库的字符集要与

                客户端的字符集完全一致,否则会报错.....

        (5)导出方案:

                  是指使用export工具导出一个方案或是多个方案中的所有对象(表、索引、约束..)

                 和数据,并保存在文件中。

                导出自己有方案:exp scott/tiger@mydatabase  owner=scott file=(d:\emp.dmp)

                导出其它方案: 需要dba的权限或是exp_full_database的权限,如system就可以导出

                任何方案(除了sys方案),exp   system/manager@mydatabase owner=(scott) file=(D:\emp.dmp)

         (6) 导出数据库:需要dba的权限或是exp_full_database的权限,

                exp  userid=system/manager@mydatabase full=y   inctype=complete  file=(D:\xxx.dmp)

导入

        与导出相似,也分为导入表、导入方案、导入数据库三种方式;

               导入就是使用工具import将文件中的 对象和数据导入到数据库中,

             但是导入要使用的文件必需是export所导出的文件。

           (1)导入自己表

                     imp    userid=scott/tiger@mydatabase   tables=(emp)    file=(d:\emp.dmp)

             (2) 导入表到其它用户

                     需要dba的权限或是imp_full_database的权限,

                     imp   userid=system/manager@myadatabase   tables=(emp)  file=(d:\xx.dmp)  touser=scott

             (3) 导入表的结构

                      只导入表的结构而不导入表的数据

                      imp  userid=scoot/tiger@mydatabase   tables=(emp)   file=(d:\xx.dmp)  rows=n

              (4)导入数据

                      如果对象(比如表)已经存在,可以只导入表的数据

                      imp   userid=scott/tiger@mydatabase   tables=(emp)   file=(d:\xx.dmp)  ignore=y                    

              (5)导入方案

                  导入自己的方案

                    imp  userid=scott/tiger  file=(d:\xx.dmp)

                   导入其它方案

                       需要dba的权限或是imp_full_database的权限,

                       imp   userid=system/manager    file=(d:\xxx.dmp)    fromuser=system    touser=scott

               (6)导入数据库

                     在默认情况下,会导入所有对象结构和数据(数据库不存在会创建)

                     imp  userid=system/manager     full=y   file=(d:\xx.dmp)



注意:红色部分可以用  %数字  表示,例如:imp  userid=system/manager     full=y   file=(%1)

这个%1就是你从程序中传进来的值。最好不要写成  数字%  的格式,虽然这样也可能成功,但是文件名

就变成了  数字.DMP了。而不是你想要的文件名了。

转载至:http://hi.baidu.com/mingjia_wei/blog/item/06af0f464b0eb50173f05dfc.html

猜你喜欢

转载自sietmj.iteye.com/blog/1576506