记一次oracle使用expdp-impdp命令备份与恢复。操作数据库版本 oracle11gR2 sid:orcl schema:mydb
一、导出数据
1.使用oracle用户登录
su – oracle
2.查看当前oracle环境
env | grep ORACLE
3.创建数据库备份的目录
mkdir /home/oracle/dmp2016
4.登录数据库系统
sqlplus /nolog
>conn /as sysdba
>create directory dmp2016 as ‘/home/oracle/dmp2016/’;
>quit;
4.使用expdp导出数据
expdp \’/ as sysdba\’ schemas=mydb directory=dmp2016 dumpfile=mydb.dmp logfile=mydb.log
二、导入数据
1.使用oracle用户登录
su – oracle
2.创建数据库备份的目录
mkdir /home/oracle/dmp2016
3.登录数据库系统
sqlplus /nolog
>conn /as sysdba
>create directory dmp2016 as ‘/home/oracle/dmp2016/’;
>create tablespace mydb datafile ‘/home/oracle/oradata/orcl/mydb.dbf’ size 1024M autoextend on next 100M maxsize unlimited logging extent management local autoallocate segment space management auto;
>create user mydb identified by 123.com default tablespace mydb;
>grant connect,resource to mydb;
>quit;
4.使用impdp导入数据
impdp \’/ as sysdba\’ schemas= mydb directory=dmp2016 dumpfile= mydb.dmp logfile= mydb.log
到此,数据备份恢复完成。
附录:
1.在新库中创建新的表空间mydb1,将数据导入到mydb1中
impdp \’/ as sysdba\’ schemas=mydb directory=dmp2016 dumpfile=mydb.dmp logfile=mydb.log remap_tablespace=mydb:mydb1 remap表空间
2.使用sqlfile参数将DDL语句导入到.sql文件
impdp \’/ as sysdba\’ schemas=mydb directory=dmp2016 dumpfile=mydb.dmp logfile=mydb.log sqlfile=mydb.sql 将DDL语句导入mydb.sql