oracle 数据库泵
expdp----数据泵逻辑导出工具 export data pump
全库
用户
表空间
表
impdp----数据泵逻辑导入工具 import data pump
dbms_datapump---通过调用这个系统包来完成数据的导入与导出
需要数据库创建一个目录对象,要把目录对象的访问权限给到导入与导出的用户
1、操作系统上用ORACLE用户先创建一个目录
mkdir -p /home/oracle/backup/dir/
2、在ORACLE数据库里创建个目录对象,指向刚刚在系统里创建的目录
create directory dbppump_dir as ‘/home/oracle/backup/dir/’;
3、要把刚创建的目录对象的读写权限授权给用户(SYSTEM)
grant read,write on directory dbppump_dir to sys;
4、进行导入与导出工作
本文运用的是通过参数文件导出导入
(1)导出数据
expdp \'sys/oracle as sysdba\' parfile=pfile.txt
用sys用户登录 密码为oracle 以sysdba的角色
运用参数文件pfile.txt
pfile.txt的内容如下:
PARALLEL=1
CLUSTER=NO
COMPRESSION=ALL
DUMPFILE=EXPORT_%U.DMP
DIRECTORY=DBPUMP_DIR
LOGFILE=EXPORT.LOG
TABLES=
(
HR.EMPLOYEES,HR.DEPARTMENTS
)
QUERY=
(
"EMPLOYEES:WHERE DEPARTMENT_ID > 10",
"DEPARTMENTS:WHERE DEPARTMENT_NAME LIKE '%IT%'"
)
(2)导出用户
expdp \'sys/oracle as sysdba\' parfile=pfile_user.txt
用sys用户登录 密码为oracle 以sysdba的角色
运用参数文件pfile_user.txt
pfile_user.txt内容:
PARALLEL=1
CLUSTER=NO
COMPRESSION=ALL
DUMPFILE=EXPORT_USER.DMP
DIRECTORY=DBPUMP_DIR
LOGFILE=EXPORT_USER.LOG
SCHEMAS=HR,ZZZ,U1
(3)导出表空间:
expdp \'sys/oracle as sysdba\' parfile=pfile_tbs.txt
用sys用户登录 密码为oracle 以sysdba的角色
运用参数文件pfile_tbs.txt
pfile_tbs.txt内容:
PARALLEL=1
CLUSTER=NO
COMPRESSION=ALL
DUMPFILE=EXPORT_TBS.DMP
DIRECTORY=DBPUMP_DIR
LOGFILE=EXPORT_TBS.LOG
TABLESPACES=TBS1,TBS2,TBS3
(4)导入用户
impdp system/oracle directory=dbpump_dir dumpfile=EXPORT_USER.DMP schemas=u1
用sysrem用户登录,密码为oracle 数据文件为EXPORT_USER.DMP
导入用户u1
(5)导入表空间:
a、要把表空间创建好
b、把表空间的对象所属用户创建好
c、给用户相应的权限
impdp system/oracle directory=dbpump_dir dumpfile=EXPORT_TBS.DMP tablespaces=TBS1,TBS2,TBS3