dmp文件导入导出(2)

导出的用户为TEST_2018,导入到另一个库的新用户中

  • expdp导出表以及impdp导入:

导出的是scott用户下的base_data表和case8_all表的数据,导出的路径是export_dmp,生成的dmp文件是base_data.dmp,形成的log文件是:expdp TESTUSER/[email protected]:1521/orcl directory=EXPORT dumpfile=1520.dmp tables=testuser.base_data,testuser.case8_all logfile=1520.log

导入的方式,使用一个具有dba权限的用户或者有系统权限的用户来进行导入都可以:

1、删除TESTUSER下的base_data表和case8_all表,相当于原路倒回去,导入语句为:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=1520.dmp tables=testuser.base_data,testuser.case8_all

2、导出的的表更换模式采用的是remap_schema,在表进行导入的时候remap_schema中的导入用户是必须存在的,导入语句为:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=1520.dmp remap_schema=TESTUSER:EXPORT2

注:remap_schema=老模式名:新模式名

  • expdp导出模式以及impdp导入

全模式导出的语句:expdp TESTUSER/[email protected]:1521/orcl directory=EXPORT dumpfile=1651.dmp schemas=testuser logfile=1651.log
导入的模式时remap_schema参数中后面的模式可以存在也可以是新的模式,导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=1651.dmp schemas=testuser remap_schema=testuser:new_testuser

注:schemas模式迁移

  • expdp导出多个模式以及impdp导入

多个模式的导出语句多个模式使用逗号隔开:expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=1651.dmp schemas=TESTUSER2,TESTUSER3,TESTUSER4 logfile=1651.log

remap_schema冒号后面的参数可以存在也可以是新的模式名:impdp TESTUSER/[email protected]:1521/orcl DIRECTORY=IMPORT DUMPFILE=1651.dmp remap_schema=TESTUSER2:EXPORT2,TESTUSER2:EXPORT3,TESTUSER2:EXPORT4 

  • expdp导出整库以及impdp导入

整库导出配置的参数是full=y:expdp TESTUSER/[email protected]:1521/orcl dumpfile=1651.dmp directory=EXPORT full=y logfile=1651.log

整库导入配置的参数是:impdp test2018/root@localhost:1521/orcl directory=IMPORT dumpfile=1651.dmp full=y

  • expdp导出表空间以及impdp的导入表空间

导出语句:expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=1651.dmp tablespaces=z_place compression=all logfile=1651.log

导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=1651.dmp remap_schema=TESTUSER:IMPORT3 remap_tablespace=z_place:users

注:remap_tablespace=老表空间:新表空间

  • 迁移的模式中包含分区表:

导出的是模式,模式中有分区表:expdp TESTUSER/[email protected]:1521/orcl directory=EXPORT dumpfile=1651.dmp SCHEMAS=TESTUSER logfile=1651.log 

分区表导入把所有的分区都更换才行,否则会找不到分区名:impdp TESTUSER/[email protected]:1521/orcl DIRECTORY=IMPORT DUMPFILE=1651.dmp remap_schema=TESTUSER:EXPORT2 remap_tablespace=PART1:PA1 remap_tablespace=PART2:PA2 remap_tablespace=PART3:PA3  remap_tablespace=PART4:PA4 remap_tablespace=PART5:PA5 remap_tablespace=PART6:PA6

  • 配置压缩参数

只有的导出的能配置压缩参数,压缩参数的配置有4种方式compression=all、compression=metadata_only、compression=data_only、compression=none、另外还有一种就是默认的不添加compression参数,如上面的所有的样例都是默认的使用:expdp TESTUSER/[email protected]:1521/orcl directory=EXPORT dumpfile=1520.dmp tables=testuser.base_data,testuser.case8_all logfile=1520.log compression=XX

注:compression压缩参数

  • 配置sample参数,抽样,某些表的抽样进行导出和导入:

导出语句:expdp TESTUSER/[email protected]:1521/orcl directory=EXPORT   DUMPFILE=1520.dmp logfile=1520.log compression=all tables=TESTUSER.table_1520 sample="TESTUSER"."table_1520":10

导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=1520.dmp remap_schema=TESTUSER:EXPORT3

sample的含义是TESTUSER模式下的table_1520表,抽取10%进行导出,这个10%是文件的大小的10%的数据,假如table_1520全部导出的是1M,那么10%导出的dmp文件大概是0.1M左右,不是一定的精确值,都是约等于的值

注:sample是抽样参数

  • 配置Query参数,过滤某一些条件,进行表的数据的过滤:

导出语句其中ID的值在表中是数值类型不是字符串,关于字符串的导出没有找到合适的转义,因此没有样例来进行导出的说明expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=15.dmp tables=TESTUSER.table15 compression=all query=TESTUSER.table15 :\"WHERE ID=1\" 

导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=15.dmp remap_schema=TESTUSER:USERIMPORT

注:query过滤参数

  • 配置EXCLUDE和INCLUDE参数,EXCLUDE是排除某些条件,INCLUDE是包含某些条件:

导出语句,多表:expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=94.dmp logfile=94.log compression=all SCHEMAS=TESTUSER EXCLUDE=table:\" in\(\'table103\',\'table8\'\)\" 

导出语句,单表:expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=94.dmp logfile=94.log compression=all SCHEMAS=TESTUSER table:\"= \'table17\'\",view

导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=94.dmp remap_schema=TESTUSER:USER

导出语句:expdp TESTUSER/[email protected]:1521/orcl DIRECTORY=EXPORT DUMPFILE=95.dmp logfile=95.log compression=all SCHEMAS=TESTUSER INCLUDE= VIEW,SEQUENCE,table:\"= \'table17\'\"

导入语句:impdp TESTUSER/[email protected]:1521/orcl directory=IMPORT dumpfile=95.dmp remap_schema=TESTUSER:USER INCLUDE= VIEW,SEQUENCE,table:\"= \'table17\'\"

注:INCLUDE、EXCLUDE是互斥的不能同时出现在一个导出或者导入语句,impdp和expdp都可以使用INCLUDE和EXCLUDE

猜你喜欢

转载自blog.csdn.net/zdlulu/article/details/83150618