导出
设置导出目录
在plsql工具中执行命令:
create directory dir as 'D:\yonyoujinrong\beta';//导出目录
目录的名称为dir
,地址为D:\yonyoujinrong\beta
,目录地址不能为空。
执行导出命令
在cmd命令窗口执行:
expdp zqjj/zqjj@192.168.50.200:1521/orcl directory=dir dumpfile=20201211.dmp logfile=20201211.log;
说明:expdp 用户名/密码@远程计算机地址/端口/DB名称 directory=要导出的目录 dumpfile=文件名.dmp logfile=日志名.log
导入
查看表空间
首先创建一个新用户,保证和导出dmp文件时的用户名,密码以及对应的表空间名相同。
在plsql执行下面语句可以查看到表空间名称及目录:
select*from dba_data_files;
select*from dba_directories t where t.directory_name ='DATA_PUMP_DIR'; --这是Oracle指定的导出目录
linux系统切换到oracle用户(sudo -i su - oracle),通过超级管理员以dba的身份登录登录plsql(sqlplus / as sysdba ),执行如下命令:
-- 1、创建用户并与表空间关联
create user zqjj identified by zqjj default tablespace NNC_DATA01;
--补充:表空间创建方法
create tablespace NNC_DATA01 datafile 'D:\DevEnv\app\Administrator\oradata\orcl\NCC_DATA01.dbf' size 6000m;
create tablespace NNC_INDEX01 datafile 'D:\DevEnv\app\Administrator\oradata\orcl\NNC_INDEX01.dbf' size 6000m;
-- 2、赋予用户权限
grant dba to zqjj;
-- 补充:若数据库版本为Oracle 12c,赋予用户权限语句为
grant dba to c##zqjj container=all;
-- 3、设置目录的地址,该目录为存放dump文件的目录
create directory dir as 'F:\huanjing\zqjj\data';
-- 4、赋予用户对目录的读写权限
grant read,write on directory dir to zqjj;
使用exit命令退出oracle,然后再使用imp命令执行导入操作,打开cmd窗口输入:
impdp zqjj/zqjj@orcl remap_schema=ncaxxt02:ncaxxt02 directory=dir dumpfile=zqjj-2020-12-22.DMP logfile=20201222.log
说明:impdp 新库用户名/新库密码@DB名称) remap_schema=原来库的用户名:新库的用户名 directory=目录地址 dumpfile=要导入的文件名.DMP logfile=导入时的日志文件.log