ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Oracle数据快照设置

2022-08-14 01:02:27  阅读:233  来源: 互联网

标签:快照 name bytes Undo 空间 tablespace 设置 Oracle


1.1 手册目的

该手册主要目的是用于生产环境排查问题及恢复用户误操作删除数据及程序错误导致数据丢失使用。

1.2 查看Undo表空间参数

命令窗口查询Undo表空间的快照参数

1 show parameter UNDO;

1.3 查看Undo表空间使用大小

--查看表空间使用情况

 1 SELECT a.tablespace_name "表空间名",
 2 
 3        a.bytes / 1024 / 1024 "表空间大小(M)",
 4 
 5        (a.bytes - b.bytes) / 1024 / 1024 "已使用空间(M)",
 6 
 7        b.bytes / 1024 / 1024 "空闲空间(M)",
 8 
 9        round(((a.bytes - b.bytes) / a.bytes) * 100, 2)||'%' "使用比"
10 
11   FROM (SELECT tablespace_name, sum(bytes) bytes
12 
13           FROM dba_data_files
14 
15          GROUP BY tablespace_name) a,
16 
17        (SELECT tablespace_name, sum(bytes) bytes, max(bytes) largest
18 
19           FROM dba_free_space
20 
21          GROUP BY tablespace_name) b
22 
23  WHERE a.tablespace_name = b.tablespace_name
24 
25  ORDER BY ((a.bytes - b.bytes) / a.bytes) DESC;

1.4 查看Undo表空间存放路径

--查找表空间存放路径

1 SELECT * FROM dba_data_files t WHERE t.tablespace_name='UNDOTBS1';

1.5 增加Undo表空间大小(重点)

--增加一个新的表空间并默认数据文件存放该表空间文件中

1 alter tablespace UNDOTBS1 add DATAFILE 'D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS02.DBF' size 5G AUTOEXTEND on maxsize 20G;

1.6 更改Undo数据存放时间

--修改快照保存时间,单位为秒 86400=24小时 43200=12小时

1 ALTER SYSTEM SET undo_retention=86400 SCOPE=BOTH;

 

更改完成后再--在命令窗口查询Undo表空间的快照参数,查看Undo数据快照时间是否更改成功

 

1 show parameter UNDO;

1.7 利用Undo数据快照进行数据闪回

--利用快照查询历史数据

1 SELECT a.* FROM emp AS OF TIMESTAMP TO_TIMESTAMP('2022-08-14 23:05:55' ,'YYYY-MM-DD hh24:mi:ss') a
2 WHERE a.emp_no='626537'  ;

AS OF TIMESTAMP TO_TIMESTAMP('2022-08-14 23:05:55' ,'YYYY-MM-DD hh24:mi:ss')  在表名后面添加该语句,时间自由调整,即可查询到历史数据。

 

1.8 注意事项

做完数据快照后隔几个小时观察一下Undo表空间的一个使用情况,如果数据快照时间过大,表空间的一个占用也会越大,这样就需要添加多个表空间文件,这个根据业务来自由设定。

1.9 参考文献

 

https://blog.51cto.com/u_15239532/2835327#UNDO_2

http://www.pingtaimeng.com/article/detail/id/2168266

 

 

 

标签:快照,name,bytes,Undo,空间,tablespace,设置,Oracle
来源: https://www.cnblogs.com/LaiYun/p/16584670.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有