通过数据泵expdp、impdp方式备份与还原/恢复 Oracle数据库(详细过程)

注:备份还原oracle数据库的方式有很多种,本文只讲解使用expdp、impdp数据泵方式备份与还原(恢复)数据库,此种方式可以备份数据库表以及表中的数据

一、备份

step1:使用system登录oracle

打开DOS命令行界面,使用system用户登录oracle,格式:sqlplus 用户名/密码@实例名(或者使用plsql、sqlyog等工具登录)。

C:\Users\Administrator>sqlplus system/000000@orcl?

step2:创建逻辑目录

创建备份逻辑目录,此目录不是真实的目录(单引号里面的内容是备份的目录)

SQL>create directory data as ‘D:\app\Administrator\admin\orcl\dpdump’;

注:如果目录已经存在,需要先删除再创建(如果不存在,则忽略下面两个sql):??

SQL>drop directory data;

SQL>create directory data as ‘D:\app\Administrator\admin\orcl\dpdump’;

step3:给用户授权

SQL>grant read, write on directory data to jeecg_test;

step4:导出数据库

退出数据库,进入DOS命令行界面,执行下列命令导出数据库

expdp jeecg_test/000000@orcl directory=data dumpfile=JEECG_20180226.DMP logfile=jeecg.log schemas=jeecg_test

解读:

directory是step2创建的目录

dumpfile是导出的文件名,存放于directory目录里

schemas后面是用户名

二、还原数据库前准备工作

注:在本地或者另外一台电脑都可以进行还原

step1:删除表空间与用户

导入前需要先删除原来的表空间和用户,如果之前没创建过该表空间,则忽略此步骤

drop tablespace JEECG_TEST including contents and datafiles;

drop user jeecg_test cascade;

step2:创建表空间与用户

create tablespace JEECG_TEST datafile ‘D:\app\shuhao\Administrator\orcl\dpdump\JEECG_TEST.DBF’ size 50m? autoextend on;

注:单引号里面的文件名与表空间名字相同

create user jeecg_test identified by 000000 default tablespace JEECG_TEST temporary tablespace temp;

step3:给用户授权

grant connect to JEECG_TEST;?

grant resource to JEECG_TEST;?

grant dba to JEECG_TEST;

注:dba为最高级权限,可以创建数据库,表等。

三、还原

step1:使用system登录oracle

打开dos命令行界面,使用system登录oracle,格式:sqlplus 用户名/密码@实例名(或者使用plsql、sqlyog等工具登录)。

C:\Users\Administrator>sqlplus system/000000@orcl?

step2:创建逻辑目录

创建还原目录(单引号里面的内容是导入的目录,与前面创建的目录相同)

SQL>create directory data as ‘D:\app\Administrator\admin\orcl\dpdump’;

注:如果目录已经存在,需要先删除再创建(如果不存在,则忽略下面两个sql):??

SQL>drop directory data;

SQL>create directory data as ‘D:\app\Administrator\admin\orcl\dpdump’;

step3:给目标用户授权

SQL>grant read,write on directory data to jeecg_test;

step4:创建真实目录,存放备份文件

在相应位置创建真实目录,把备份的文件JEECG_20180226.DMP放到真实目录里

step5:导入备份文件

DOS命令行执行下列命令

impdp jeecg_test/000000@orcl directory=data dumpfile=JEECG_20180226.DMP?logfile=jeecg.log remap_schema =JEECG_TEST:JEECG_TEST

注:remap_schema=JEECG_TEST:JEECG_TEST表示把左边的JEECG_TEST用户的数据,导入到右边的JEECG_TEST用户里面

OK,以上就是备份还原oracle数据库的过程,so easy!^_^

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐