RMAN基于表空间的不完全恢复(TSPITR)
RMAN基于表空间的不完全恢复(TSPITR)表空间时间点恢复(TSPITR):概念通过执行TSPITR可将一个或多个表空间快速恢复到以前的某个时间。执行TSPITR不会影响数据库
RMAN基于表空间的不完全恢复(TSPITR)
RMAN自动执行TSPITR案例:
1、工作环境
12:21:32 SCOTT@ prod>create table emp1 as select * from emp; Table created. Elapsed: 00:00:00.65 14:07:41 SCOTT@ prod>insert into emp1 select * from emp where rownum commit; Commit complete. Elapsed: 00:00:00.04 14:08:19 SCOTT@ prod>select count(*) from emp1; COUNT(*) ---------- 18 Elapsed: 00:00:00.02 emp1表数据被误删除: 14:08:20 SCOTT@ prod>truncate table emp1; Table truncated. Elapsed: 00:00:00.32 14:08:30 SCOTT@ prod>insert into emp1 select * from emp where empno=7788; 1 row created. Elapsed: 00:00:00.03 14:08:46 SCOTT@ prod>commit; Commit complete. Elapsed: 00:00:00.06 14:08:48 SCOTT@ prod>select * from emp1; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- --------- ---------- ---------- ---------- 7788 SCOTT ANALYST 7566 19-APR-87 3000 20 Elapsed: 00:00:00.08 14:08:55 SCOTT@ prod>update emp1 set empno=8888; 1 row updated. Elapsed: 00:00:00.02 14:09:06 SCOTT@ prod>commit; Commit complete. Elapsed: 00:00:00.01 14:09:08 SCOTT@ prod>select * from emp1; EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ---------- ---------- --------- ---------- --------- ---------- ---------- ---------- 8888 SCOTT ANALYST 7566 19-APR-87 3000 20 Elapsed: 00:00:00.01 14:09:12 SCOTT@ prod>2、做恢复前的检测
检测tablespace是否自包含: 10:39:16 SCOTT@ prod>CONN /as sysdba Connected. 10:39:25 SYS@ prod>exec DBMS_TTS.TRANSPORT_SET_CHECK('TBS1',TRUE); PL/SQL procedure successfully completed. Elapsed: 00:01:58.45 10:41:43 SYS@ prod>select * from TRANSPORT_SET_VIOLATIONS t; no rows selected 确认所要恢复的数据文件: 14:13:34 SYS@ prod>select * from dba_data_files t where T.TABLESPACE_NAME='TBS1'; FILE_NAME ------------------------------------------------------------------------------------------------------------------------ FILE_ID TABLESPACE_NAME BYTES BLOCKS STATUS RELATIVE_FNO AUT MAXBYTES MAXBLOCKS ---------- ------------------------------ ---------- ---------- --------- ------------ --- ---------- ---------- INCREMENT_BY USER_BYTES USER_BLOCKS ONLINE_ ------------ ---------- ----------- ------- /u01/app/oracle/oradata/prod/tbs1.dbf 6 TBS1 10485760 1280 AVAILABLE 6 NO 0 0 0 9437184 1152 ONLINE Elapsed: 00:00:00.02 14:14:42 SYS@ prod> 检查是否包含辅助集SYSTEM UNDO和CONTROLFILE: 14:14:38 SYS@ prod>select file_name name from dba_data_files t where T.TABLESPACE_NAME IN('SYSTEM','UNDOTBS1') 14:14:40 2 union 14:14:41 3 select max(name) from v$controlfile t; NAME ------------------------------------------------------------------------------------------- /u01/app/oracle/oradata/prod/control01.ctl /u01/app/oracle/oradata/prod/system01.dbf /u01/app/oracle/oradata/prod/undotbs01.dbf Elapsed: 00:00:00.03 检查TSP之后可能丢失的对象: 14:14:42 SYS@ prod>select * from TS_PITR_OBJECTS_TO_BE_DROPPED T where T.OWNER='TBS1'; no rows selected Elapsed: 00:00:00.173、执行基于RMAN的TSPITR
[root@rh6 prod]# mkdir /home/oracle/prod

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Oracle 视图加密允许您加密视图中的数据,从而增强敏感信息安全性。步骤包括:1) 创建主加密密钥 (MEk);2) 创建加密视图,指定要加密的视图和 MEk;3) 授权用户访问加密视图。加密视图工作原理:当用户查询加密视图时,Oracle 使用 MEk 解密数据,确保只有授权用户可以访问可读数据。

Oracle 打不开的解决办法包括:1. 启动数据库服务;2. 启动监听器;3. 检查端口冲突;4. 正确设置环境变量;5. 确保防火墙或防病毒软件未阻止连接;6. 检查服务器是否已关闭;7. 使用 RMAN 恢复损坏的文件;8. 检查 TNS 服务名称是否正确;9. 检查网络连接;10. 重新安装 Oracle 软件。

在 Oracle 中删除所有数据需要以下步骤:1. 建立连接;2. 禁用外键约束;3. 删除表数据;4. 提交事务;5. 启用外键约束(可选)。请务必在执行前备份数据库,以防数据丢失。

Oracle 数据库分页利用 ROWNUM 伪列或 FETCH 语句实现:ROWNUM 伪列用于通过行号过滤结果,适用于复杂查询。FETCH 语句用于获取指定数量的第一行,适用于简单查询。

解决 Oracle 游标关闭问题的方法包括:使用 CLOSE 语句显式关闭游标。在 FOR UPDATE 子句中声明游标,使其在作用域结束后自动关闭。在 USING 子句中声明游标,使其在关联的 PL/SQL 变量关闭时自动关闭。使用异常处理确保在任何异常情况下关闭游标。使用连接池自动关闭游标。禁用自动提交,延迟游标关闭。

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。

要停止 Oracle 数据库,请执行以下步骤:1. 连接到数据库;2. 优雅关机数据库(shutdown immediate);3. 完全关机数据库(shutdown abort)。

可以通过使用 Oracle 的动态 SQL 来根据运行时输入创建和执行 SQL 语句。步骤包括:准备一个空字符串变量来存储动态生成的 SQL 语句。使用 EXECUTE IMMEDIATE 或 PREPARE 语句编译和执行动态 SQL 语句。使用 bind 变量传递用户输入或其他动态值给动态 SQL。使用 EXECUTE IMMEDIATE 或 EXECUTE 执行动态 SQL 语句。
