数据泵导入导出"/>
Oracle数据泵导入导出
创建授权目录
create directory DUMP as 'D:\dump';
授权
Grant read,write on directory DUMP to 用户;
SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d WHERE t.table_name(+) = d.directory_name ORDER BY 2, 1;
--tkzc3_aim/********@192.168.1.83/orcl directory=dpdump dumpfile=nfjj_sirm.dmp remap_schema=nfjj_sirm:nfjj_sirm logfile=nfjj_sirm.log
--------数据库导入导出----------------------------------------------
切换11G数据库cd /d D:\app\Administrator\product\11.2.0\dbhome_1\BIN
tnsping orcl/finchina5
----imp导入
imp sirmgkzq/sirmgkzq@/sinitek full=y ignore=y statistics=none feedback=10000 buffer=640000 file=E:\kettle\213.dmp log=E:\kettle\123.log
---exp导出
exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y buffer=640000 feedback=10000
--命令注释
statistics=none 不导出统计信息错误
full=y 导出导入整个数据库实例
buffer=640000 缓冲区大小
feedback=10000 每导出一万行数据显示一个进度点
ignore=y 即告诉IMP如果当前表存在就不创建表结构而直接导入新的数据
grants=none不导入权限
fromuser=user1 touser=user
owner=user1,user2 该数据库下为user1和user2的用户数据
exp userid/psd@orcl file=d:\test.dmp owner=(table1,table2)导出用户下的表table1和table2
QUERY 选定导出表子集的子句
exp userid/psd@orcl file=d:\test.dmp
===========================数据库导入导出=================================================
Oracle11g 数据导入到oracle10g 中:
1-在oracle11g 服务器命令行中用expdp 导出数据:
expdp ts/ts@orcl directory=expdp_dir dumpfile=tianshan.dmp logfile=tianshan.log version=10.2.0.1.0 (schemas=ccense)
2-在oracle10g 服务器DOS 命令行中用IMPDP 导入数据:
注意事项-----------------把oracle11g 的备份文件放到oracl10g 服务器的impdp_dir 目录中,并创建好相应的用户和表空间,然后执行下面的命令:
impdp ts/ts@orcl directory=impdp_dir dumpfile=tianshan.dmp logfile=tianshan.log version=10.2.0.1.0 (schemas=ccense)
注意事项-----------------
本地创建directory,并授权导出用户使用
在操作系统上创建direxp目录
create or replace directory DIR_EXP as 'D:direxp';
grant read,write on directory DIR_EXP to db_exp;
--查询dirrctory-------
SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d WHERE t.table_name(+) = d.directory_name ORDER BY 2, 1;
create directory DUMP as 'D:\dump';
授权
Grant read,write on directory DUMP to user;
创建文件夹
impdb(直接dmpdp导出的)
impdp sbls/sbls@192.168.1.187/sirmutf8 schemas=FUNDSIRM_INNER directory=dump dumpfile =FUNDSIRM_INNER.dmp
impdb(用户导出的)
impdp sbls/sbls@192.168.1.187/sirmutf8 remap_schema=aim:用户 directory=dump dumpfile =文件名.dmp
impdp sirmgsylzcb/sirmgsylzcb@192.168.1.215/sirmutf8 remap_schema=FIA_FLC_BX_GSYL20151019:sirmgsylzcb directory=dump dumpfile =FIA_FLC_BX_GSYL20151019.dmp version=10.2.0.1.0
----expdp导出数据
1)--按用户导
expdp system/sinitek@sirmutf8 schemas=sirmhtzq_test dumpfile=sirmhtzq_test.dmp DIRECTORY=DATA_PUMP_DIR EXCLUDE=STATISTICS,GRANT,TABLE:"IN ('EMP','DEPT')"
2)--并行进程parallel
expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott_%U.dmp parallel=4 job_name=scott3--job_name是进程名称,可选项
3)--按表名导
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1
4)--按查询条件导
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
expdp sirmbroker/sirmbroker directory=dump dumpfile=sirmbroker.dmp include=table query="'where rownum<=100'"
5)--按表空间导
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example
6)--导整个数据库
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y
7)--指定版本
EXPDP USERID='SYS/cuc2009@cuc as sysdba' schemas=sybj directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0
----impdp还原数据
1)--导到指定用户下
impdp system/sinitek@sirmutf8 DIRECTORY=DATA_PUMP_DIR DUMPFILE=SIRMHTZQ01_20150129.DMP SCHEMAS=SIRMHTZQ01 EXCLUDE=STATISTICS
2)--改变表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system
3)--导入表空间
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example
4)--导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y
5)--追加数据
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION=append
6)--改变表空间
remap_tablespace=1:2
7)--排除某表
exclude=table:"in('T1')"
8)--只导入数据
impdp tpzcdev/tpzcdev@sinitek DIRECTORY=DATA_PUMP_DIR DUM PFILE=TPZCDEV.DMP content=DATA_ONLY tables=HUNSUN_DICT,METADB_PROPERTY
9)--将原有dmp文件中oid映射重新生成--ORA-39117
transform=oid:n
10)--network_link
--1.目标库建立到源库schemas的dblink
--2.直接使用 impdp network_link=dblink 跳过expdp导入到目标库
impdp system/sinitek@sinitek network_link=lk_215_qlzq remap_schema=sirmqlzq:qlzq_text1
不能在高版本目标库从低版本源导入,也不能在低版本目标库从高版本源导入
不能在高版本目标库使用低版本expdp工具从低版本源导入
expdp network_link也可以向下指定version
目标与源服务器版本必须一致
exp?system/manager@TEST?file=d:\daochu.dmp?owner=(system,sys)?----将数据库中system用户与sys用户的表导出?
更多推荐
Oracle数据泵导入导出
发布评论