使用cmd导入导出oracle数据库dmp文件

exp scott/test@192.168.0.195/orcl file=C:\Users\zz\Desktop\1\gd_base.dmp log=C:\Users\zz\Desktop\1\gd_base.log owner=oracle_user_namesql

imp scott/test@localhost/test file=C:\Users\zz\Desktop\1\gd_base.dmp log=C:\Users\zz\Desktop\1\gd_base2.log full=y数据库

==================================数组

 

使用exp和expdp导出数据缓存

1.exp导出数据命令oracle

exp gd_base/11@192.168.13.211/oanet file=D:\export\gd_base.dmp log=D:\export\gd_base.log full=y

2.expdp导出数据spa

(1)cmd窗口链接数据库,进入sqlplus页面操作系统

sqlplus sys/sys@192.168.13.211/oanet as sysdba

(2)建立目录对象(使用管理员帐号登陆建立)code

SQL> create or replace directory dump_dir as 'D:\fzb';

建立好后,退出sqlplus对象

(3)在操做系统上建立相应的目录,如在D盘目录下创建文件夹fzbblog

(4)链接数据库执行导出命令

 

复制代码
复制代码
把base库和dbwizard库所有导入

expdp system/123123@192.168.13.211/oanet directory=dump_dir dumpfile=XX.dmp schemas=gd_base,gd_dbwizard;

把该实例下全部数据库导出

expdp system/123123@192.168.13.211/oanet directory=dump_dir dumpfile=XX.dmp Full=y;
复制代码
复制代码

导出实例:
exp user/password@sid(实例) owner=user file=D:\user.dmp feedback=10000 buffer=10240000
具体:
owner指的是表的全部者(指明下载的用户名)
freeback=10000表明显示处理记录条数,缺省为0,即不显示
buffer=10240000定义了每一次读取导入/导出文件的数据量,设的越大,就越减小imp/exp进程读取数据的次数,从而提升了
导入/导出效率。(设置缓存区域的大小,当数据满的时候,bind array(结束数组),执行inset(插入).提交)

indexes=n 是否下载索引,缺省为n,只是指索引的定义而非数据,exp不下载索引数据

下附图一张:

 

 

导入实例:
Imp user/password@sid(实例)  file=D:\user.dmp fromuser=user touser=user rows=y commit=y feedback=10000 buffer=10240000
具体:
fromuser=user 指明来源用户(就是当前的dmp文件来自user用户下的数据)
touser=user  指明目的用户(就是把如今dmp文件中的数据导入到目标库user用户下的库)
rows=y  是否上传表记录(肯定导入的数据行)
commit=y 上传数据缓存区中记录上载后当即执行提交(表示每一个数据缓冲满了以后提交一次,而不是导完一张表提交一次。这样会大大减小对系统回滚段等资源的消耗,对顺利完成导入是有益的)
freeback=10000  显示处理记录条数,缺省为0,即不显示
buffer=10240000  上载数据缓存区,以字节为单位,缺省依赖操做系统

indexes=n 指若是上传时索引已创建,此举项即便为n也无效,imp自动更新索引数据

下附图一张:

相关文章
相关标签/搜索