使用expdp和impdp命令完成,这里只给出命令和命令中用到关键词的相关解释。
准备工作
在sqlplus的窗口中创建DIRECTORY,并且赋权限给用户
CREATE OR REPLACE DIRECTORY tempdump AS 'f:/tempdump/';
GRANT READ, WRITE ON DIRECTORY tempdump TO username;
此步需要sysdba权限
DIRECTORY可以定义文件路径
Oracle默认DIRECTORY是 安装路径\app\**\admin\orcl\dpdump
导出XX开头的表
cmd命令行中执行expdp命令
expdp username/password@orcl DIRECTORY=tempdump dumpfile=*.dmp tables=(username.xx%)
*.dmp会直接放在tempdump 目录下
导入表到其他用户
将导出的*.dmp文件放在tempdump目录下
cmd命令行中执行impdp命令
impdp username/password@ORCL FULL=Y DIRECTORY=tempdump dumpfile=*.dmp remap_schema=oldUserName:newUserName remap_tablespace=oldTablespaceName:newTablespaceName TABLE_EXISTS_ACTION=REPLACE
REMAP_SCHEMA可以定义用户的切换。
REMAP_TABLESPACE可以定义切换对象的不同表空间。
TABLE_EXISTS_ACTION可以定义遇到表已存在时的处理方式,有四种
a.忽略(SKIP,默认行为);
b.在原有数据基础上继续增加(APPEND);
c.先DROP表,然后创建表,最后完成数据插入(REPLACE);
d.先TRUNCATE,再完成数据插入(TRUNCATE)。