第十六章:Oracle的数据备份与恢复

一、数据的导入导出

--在SQLPLUS中执行如下命令

--导出
--将数据库orcl完全导出
  exp system/oracle@orcl file=c:\oracle_bak\orcl_bak.dmp full=y
  
--将数据库中scott用户的所有对象导出
  exp scott/tiger1@orcl file=c:\oracle_bak\scott_bak.dmp owner=scott
  
--将scott用户中表emp,dept导出
  exp scott/tiger1@orcl file=c:\oracle_bak\table_bak.dmp tables=(emp,dept)
  

--导入
--将备份文件导入到数据库
imp scott/tiger1@orcl file=c:\oracle_bak\scott_bak.dmp ignore=y

--将scott用户的备份文件导入到yanln用户中
imp yanln/yanln@orcl fromuser=scott touser=yanln file=c:\oracle_bak\scott_bak.dmp

二、利用触发器实现数据的同步备份 

--创建员工表的备份表
CREATE TABLE emp_bak 
AS 
SELECT * FROM emp;

--创建触发器来实现数据的同步备份
--当删除员工后,备份表同步删除
CREATE OR REPLACE TRIGGER syno_bak_trigger
AFTER DELETE
ON emp
FOR EACH ROW
BEGIN
  DELETE FROM emp_bak WHERE empno = :old.empno;
END;

--测试
SELECT * FROM EMP;

DELETE FROM emp WHERE empno = 7499;

select * from emp_bak;

rollback;
发布了26 篇原创文章 · 获赞 27 · 访问量 5456

猜你喜欢

转载自blog.csdn.net/weixin_44337241/article/details/104822489