ORACLE表在Windows与Linux下的备份与恢复

首先简单了解Directory(目录)的作用

Oracle Directory(目录)可以让用户在Oracle数据库中灵活地对文件进行读写操作,极大地提高了Oracle的易用性和可扩展性;

  • 查询directory目录
select * from dba_directories;
  • 创建或者修改 directory目录
create or replace directory dumpdir as '/home/dumpfiles';
  • 赋权 directory目录
grant read,write on directory dumpdir to username;
  • 删除directory目录
drop directory DIRENAME;

 

Windows-Oracle服务器 备份表 恢复到 Windows-Oracle服务器

步骤:

--1、在服务器创建备份文件目录
 --cmd命令进入到sqlplus
sqlplus /nolog
conn sys/sys as sysdba

create directory cnjkdump as 'c:/cnjkbackup/cnjkdump';
--将目录的访问权限赋予给PUBLIC
grant read,write on directory cnjkdump to public;

--2、导出表
expdp 用户名/密码@服务器IP:端口/实例名 directory=步骤1创建的directory目录名 dumpfile=testc.dmp logfile=testc.log tables=用户名.表名

 

  • 执行成功后产生dmp文件

  • 将导出的3个文件copy到备份服务器下相同目录并手动授权(添加Everyone 勾选所有读写)
--3、在备份服务器重复步骤1,建相同目录并授权
create directory CNJKDUMP as 'C:/CNJKBACKUP/CNJKDUMP';  --如没有则创建
grant read,write on directory CNJKDUMP to public;	--授权目录读写
create user cnjkbak identified by cnjkbak;  --在备份服务器创建新用户名及密码
grant read,write on directory CNJKDUMP to cnjkbak;  --授予读写权限
grant resource,connect to cnjkbak; --授予角色权限
--创建原数据库服务器一致的表空间
--在原数据库查看用户的表空间名
select username,default_tablespace from user_users;
--在备份服务器创建相同的表空间
create tablespace CNJK_SPACE datafile 'C:\CNJKBACKUP/CNJKDUMP\CNJK_SPACE.DBF' size 200m reuse autoextend on next 50m;

  

  • 使用oracle可视化工具验证数据库表的生成

  • 数据备份完整,恢复成功。

 

posted @ 2022-06-17 23:09  LuckinAaron  阅读(388)  评论(0编辑  收藏  举报