iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >undo_retention之确定最优的撤销保留时间
  • 294
分享到

undo_retention之确定最优的撤销保留时间

2024-04-02 19:04:59 294人浏览 薄情痞子
摘要

undo_retention:确定最优的撤销保留时间 使用下面的公式来计算undo_retention参数的值: undo_retention=undo size/(db_block_size * und

undo_retention:确定最优的撤销保留时间

使用下面的公式来计算undo_retention参数的值:
undo_retention=undo size/(db_block_size * undo_block_per_sec)

--可以通过提交下面的查询来计算数据库中实际产生的撤销数据:

SQL> select sum(d.bytes/1024/1024) "undo_mb"  
  from v$datafile d, v$tablespace t, dba_tablespaces s  
 where s.contents = 'UNDO'  
   and s.status = 'ONLINE'  
   and t.name = s.tablespace_name  
   and d.ts# = t.ts#;  
 
   undo_mb
----------
    102400



--可以通过下面的查询计算undo_block_per_sec:

SQL> select max(undoblks / ((end_time - begin_time) * 3600 * 24)) "UNDO_BLOCK_PER_SEC"  FROM v$undostat;  
 
UNDO_BLOCK_PER_SEC  
------------------  
        272.980265


SQL> show parameter db_block_size  
 
NAME                                 TYPE        VALUE  
------------------------------------ ----------- ------------------------------  
db_block_size                        integer     8192  


--以秒来计算undo_retention参数的值:

sql> select 102400*1024*1024/(272.980265*8192) from dual;

102400*1024*1024/(272.980265*8192)
----------------------------------
                        48015.1926




v$undostat视图包含了数据库如何来使用撤销空间的统计信息,以及运行时间最长的查询等信息。可以使用这些信息计算当前数据库所处理的工作负载的撤销空间大小。v$undostat视图中每一行显示十分钟时间间隔的撤销统计信息。表中最多包含576行数据,每一行记录十分钟。因此,最多可以查看四天内的撤销空间使用情况。
BEGIN_TIME:时间段的起始时间。
END_TIME:时间段的截止时间。
UNDOBLKS:在十分钟的间隔内数据库所消耗的撤销数据块数量。
TXNCOUNT:在十分钟时间间隔内所执行的事务数。
MAXQUERYLEN:显示了在十分钟间隔内该实例上执行的,耗时最长的查询所花的时间(单位为秒)。
MAXQUERYID:时间间隔内运行时间最长的SQL语句的标识符。
NOSPACEERRCNT:数据库在撤销表空间中,因为整个空间都被活动事务所占用,因而没有足够空间来存放新撤销数据的次数。
TUNED_UNDORETENTION:数据库在提交撤销所属事务后,将会保留撤销数据的时长,单位为秒。

SQL> select to_char(begin_time, 'hh34:mi:ss') BEGIN_TIME,  
       to_char(end_time, 'hh34:mi:ss') END_TIME,  
       maxquerylen,  
       nospaceerrcnt,  
       tuned_undoretention  
  from v$undostat;  
 
BEGIN_TI END_TIME MAXQUERYLEN NOSPACEERRCNT TUNED_UNDORETENTION  
-------- -------- ----------- ------------- -------------------  
17:37:31 17:43:00        1281             0                2062  
17:27:31 17:37:31         978             0                1759  
17:17:31 17:27:31         372             0                1153  
17:07:31 17:17:31         974             0                1755  
16:57:31 17:07:31         368             0                1151  
16:47:31 16:57:31         968             0                1809  
16:37:31 16:47:31         363             0                1205  
16:27:31 16:37:31         961             0                1805  
16:17:31 16:27:31         358             0                1200  
16:07:31 16:17:31         957             0                1799  
15:57:31 16:07:31         353             0                1195  
15:47:31 15:57:31         953             0                1794  
15:37:31 15:47:31         349             0                1190  
15:27:31 15:37:31         948             0                1790  
15:17:31 15:27:31         342             0                1185  
 
已选择15行。  

oracle在一个给定的时间段,会根据执行时间最长的查询来提高或降低撤销保留时间。
您可能感兴趣的文档:

--结束END--

本文标题: undo_retention之确定最优的撤销保留时间

本文链接: https://www.lsjlt.com/news/47274.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql拒绝访问怎么办
    mysql 出现拒绝访问的原因和解决方法:权限问题:授予用户适当的数据库或表访问权限。防火墙或安全组:允许对 mysql 端口(3306)的入站连接。密码错误:重置 mysql 密码或使...
    99+
    2024-05-20
    mysql
  • mysql怎么比较日期大小
    mysql 中比较日期大小的方法包括:直接比较两个日期,使用 、= 运算符。使用 date_format() 函数将日期转换为字符串,然后比较字符串大小。使用 str_to_date()...
    99+
    2024-05-20
    mysql
  • mysql怎么加锁
    mysql中加锁是一种确保数据并发访问一致性的机制。加锁方式有:表级锁(对整个表加锁)和行级锁(对特定行加锁)。加锁类型有共享锁(允许读取但禁止修改)、排他锁(禁止读取和修改)和意向锁(...
    99+
    2024-05-20
    mysql 并发访问
  • mysql误删数据怎么恢复
    mysql误删数据可通过以下步骤恢复:停止数据库服务,防止数据覆盖。若开启binlog日志,可从中提取删除语句,再重新执行后将数据恢复。使用恢复工具修复表文件或恢复事务。从备份中恢复数据...
    99+
    2024-05-20
    mysql
  • 怎么判断mysql安装成功
    成功安装 mysql 的方法:检查命令行界面版本号;连接到 mysql 服务器,输入 "mysql -u root -p";创建数据库,输入 "create database test;...
    99+
    2024-05-20
    mysql linux macos 防火墙配置
  • mysql怎么修改表名
    如何修改 mysql 表名:检查当前表名:show tables;运行 rename table 语句:rename table 旧表名 to 新表名;验证更改:show tables;...
    99+
    2024-05-20
    mysql
  • mysql删除的表怎么恢复
    mysql 中已删除表的恢复方法主要涉及以下步骤:检查 binlog 日志以获取删除事务信息;使用数据恢复工具扫描数据库文件;从备份还原表数据;或联系 mysql 支持寻求帮助。 My...
    99+
    2024-05-20
    mysql 数据丢失
  • mysql复合主键怎么写
    在 mysql 中编写复合主键:在 create table 语句中使用 primary key 约束并列出字段名称。复合主键的好处包括提高查询效率、保证数据完整性和强制数据顺序。注意选...
    99+
    2024-05-20
    mysql
  • 怎么查看mysql数据库版本
    如何查看 mysql 数据库版本?连接到数据库并执行查询:select version();检查命令行或 mysql workbench 中的服务器属性。 如何查看 MySQL 数据库...
    99+
    2024-05-20
    mysql linux
  • 怎么检测mysql安装成功
    要验证 mysql 安装是否成功,请执行以下步骤:检查系统服务是否正在运行。使用 mysql 命令行工具连接到服务器。创建一个测试数据库并使用它。在数据库中创建一个测试表。插入测试数据并...
    99+
    2024-05-20
    mysql linux
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作