通过数据泵expdp、impdp方式备份与还原(导出与导入)Oracle数据库
一、备份
step1:使用system登录oracle
打开DOS命令行界面,使用system用户登录oracle,格式:sqlplus 用户名/密码@实例名(或者使用plsql、sqlyog等工具登录)。
C:\Users\Administrator>sqlplus system/000000@orcl
step2:创建逻辑目录
创建备份逻辑目录,此目录不是真实的目录(单引号里面的内容是备份的目录,可以先查看一下所有的目录:select * from dba_directories;)
SQL>create or replace directory data as 'D:\app\shuhao\oradata\orcl';
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后面是用户名
step5:查看导出的文件
二、还原数据库前准备工作
注:在本地或者另外一台电脑都可以进行还原
step1:删除表空间与用户
导入前需要先删除原来的表空间和用户,如果之前没创建过该表空间,则忽略此步骤
drop tablespace JEECG_TEST including contents and datafiles;
drop user JEECG_TEST cascade;
step2:创建表空间与用户
create tablespace JEECG_TEST datafile 'D:\app\shuhao\oradata\orcl\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\shuhao>sqlplus system/orcl@orcl
step2:创建逻辑目录
创建还原目录(单引号里面的内容是导入的目录,与前面创建的目录相同)
SQL>create or replace directory data as 'D:\app\shuhao\oradata\orcl';
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, GAME OVER !
————————————————
版权声明:本文为CSDN博主「前方一片光明」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_26230421/java/article/details/79382013
----------
oracle创建表空间及对用户授权
CREATE TABLESPACE test_ods LOGGING DATAFILE 'test_ods.dbf' SIZE 100M AUTOEXTEND ON NEXT 32M MAXSIZE 500M EXTENT MANAGEMENT LOCAL;
create temporary tablespace test_ods_temp tempfile 'test_ods_temp.dbf' size 100m autoextend on next 32m maxsize 500m extent management local;
CREATE USER test_ods IDENTIFIED BY test_ods DEFAULT TABLESPACE test_ods TEMPORARY TABLESPACE test_ods_temp;
grant connect,resource,dba to test_ods;
create table ttt (name varchar(12),age varchar(12)) tablespace test_ods;
select tablespace_name, table_name from user_tables where tablespace_name = 'test_ods';
select tablespace_name, table_name from all_tables where tablespace_name = 'test_ods';