1.导出数据库 expdp
举例 : expdp user/password@ip:1521/sid DIRECTORY=DATA_PUMP_DIR
命令中常用的参数介绍:
- user/password --导出的用户,本地用户!!
- directory=dmpfile --导出的逻辑目录,一定要在oracle中创建完成的,并且给用户授权读写权限
- dumpfile= --导出的数据文件的名称,如果想在指定的位置的话可以写成如下:
dumpfile=/home/oracle/ - logfile= --日志文件,如果不写这个参数的话默认名称就是,可以在本地的文件夹中找到
- schemas=userxx --使用dblink导出的用户不是本地的用户,需要加上schema来确定导出的用户,类似于exp中的owner,但还有一定的区别
- exclude 可以指定不导出的东西,table,index等,后面加上不想导出的表名
- network_link=db_local --这个参数是使用的dblink来远程导出,需要指定dblink的名称
常用实例
1)导出用户及其对象
expdp scott/tiger@orcl schemas=scott dumpfile= directory=dump_dir logfile=;
2)导出指定表
expdp scott/tiger@orcl tables=emp,dept dumpfile= directory=dump_dir logfile=;
3)按查询条件导
expdp scott/tiger@orcl directory=dump_dir dumpfile= tables=empquery=‘where deptno=20’ logfile=;
4)按表空间导
expdp system/manager@orcl directory=dump_dir dumpfile= tablespaces=temp,example logfile=;
5)导整个数据库
expdp scott/123@127.0.0.1/orcl directory=dump_dir dumpfile= full=y logfile=;
2.导入impdp
写法:
impdp 用户名/密码@ip地址/实例 [属性]
ip地址不写默认就是本地
实例:
1)导到指定用户下
impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE= SCHEMAS=scott;
2)改变表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE= TABLES= REMAP_SCHEMA=scott:system;
3)导入表空间
impdp system/manager DIRECTORY=dpdata1 DUMPFILE= TABLESPACES=example;
4)导入数据库
impdb system/manager DIRECTORY=dump_dir DUMPFILE= FULL=y;
5)追加数据
impdp system/manager DIRECTORY=dpdata1 DUMPFILE= SCHEMAS=system TABLE_EXISTS_ACTION
1、TABBLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | FRPLACE }
当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;当设置为APPEND时,会追加数据,为TRUNCATE时,导入作业会截断表,然后为其追加新数据;当设置为REPLACE时,导入作业会删除已存在表,重建表病追加数据,注意,TRUNCATE选项不适用与簇表和NETWORK_LINK选项;
2、REMAP_SCHEMA
该选项用于将源方案的所有对象装载到目标方案中:REMAP_SCHEMA=source_schema:target_schema
3、REMAP_TABLESPACE
将源表空间的所有对象导入到目标表空间中:REMAP_TABLESPACE=source_tablespace:target:tablespace
4、REMAP_DATAFILE
该选项用于将源数据文件名转变为目标数据文件名,在不同平台之间搬移表空间时可能需要该选项.
REMAP_DATAFIEL=source_datafie:target_datafile