命令:impdp:
Impdpwsdt/wsdt@testdb
table_exitst_actio=replace
directory=DATA_PUMP_DIR
dumpfile=wsdt112backup20161125.expdp
schemmas=wsdt
remap_tablespace=BPEDB :OLSH_DB:BPEDB
详细步骤见底下:
1)wsdt/wsdt:数据库用户名/密码
2)testdb:实例名称
1.先找在服务器上找到Oracle的安装目录:
打开Linux命令行界面:
切换为Oracle用户: su –oracle
以sysdba方式来打开sqlplus:sqlplus“/as sysdba”
查看表空间的放置位置,这样就可以找到Oracle的安装目录了:
Selectname from v$datafile
找到配置文件:tnsnames.ora
相对于我的Oracle安装路径来说,命令
cd/app/oracle/11g/network/admin –》进入
cattansnames.ora->查看文件
Service_name= testdb : testdb 就是数据库实例名称;一般都是arcl
3)table_exists_action=replace
当设置该选项为SKIP时,导入作业会跳过已存在表处理下一个对象;
APPEND:会追加数据,为TRUNCATE时,导入作业会截断表,然后 为其追加新数据;
REPLACE:导入作业会删除已存在表,重建表并追加数据,注意,
TRUNCATE:选项不适用与簇表和 NETWORK_LINK选项;
4) directory=DIR_DP:目录名称
expadp导出或impadp导入数据文件存放的路径:
创建目录必须具有DBA角色或者赋予了CREATE ANYDIRECTORY权限
如果普通用户被赋予了CREATE ANY DIRECTORY权限,那么用户就自动具备目录的READ和WRITE权限。注意:CREATE DIRECTORY语句不会创建磁盘的真实目录,如果目录是无效的,数据泵作业会报错:
查看目录:打开sqlplus 执行
Select directory_name,grantee,privilege
From user_tab_privs t, all_directories d
where t.table_name=d.directory_name ;
查询出可以使用的目录名称
5)dumpfile=wsdt112backup20161125.expdp:要导入的.expdp文件
该文件必须放在对应逻辑目录的路径里面去
6)schemas=wsdt:
表空间的名称
7)remap_tablespace=OLSH_DB:BPEDB
将源表空间的所有对象导入到目标表空间中:
更多推荐
Linux上还原备份的ORACLE数据库
发布评论