informix日志查看_监视和估计Informix Dynamic Server中的逻辑日志使用情况

逻辑日志是数据库管理的重要方面。 逻辑日志如果管理不当,将使数据库管理员感到头疼。 一些最常见的问题是:

  • 多头交易。 如果一笔交易达到排他的多笔交易高水位标记(ELTM)时未提交或回滚,则该交易被称为多笔交易。 排他的长事务高水位标记是一个配置参数,规定单个事务可以跨越逻辑日志的百分比。 一旦事务达到Informix®Dynamic Server配置文件中的ELTM设置,服务器就会中止事务并开始回滚事务。 在回滚期间,服务器将暂停进一步的数据库操作,前端用户将遇到其应用程序的挂起。
  • 灾难恢复。 如果丢失任何逻辑日志,则在发生灾难的情况下,我们选择的还原策略将受到限制; 我们只能执行冷恢复。 由于Informix Dynamic Sever需要检查所有逻辑日志以重新应用上次备份之后发生的数据库事务,因此不可能进行热还原。 结果就是数据丢失。
  • 性能慢。 如果我们没有将逻辑日志放置在正确的位置,例如,如果将逻辑日志放置在根dbspace或磁盘上的其他热点中,则系统和服务器的整体性能将受到影响。
  • Informix Dynamic Server挂起。 如果您不定期备份逻辑日志,并且在系统中使用了所有逻辑日志,则Informix Dynamic Server将挂起和挂起其他数据库连接和操作。

本文将详细讨论如何配置和管理逻辑日志。 本文还将演示一个真实的示例,该示例如何估计和预测逻辑日志的使用情况。

什么是逻辑日志?

逻辑日志实际上是一组文件,这些文件保留自上次0级备份以来的数据库事务和数据库服务器更改的历史记录。 逻辑日志文件不是普通的操作系统文件。 它们是由Informix Dynamic Server在首次初始化期间自动创建的,然后由Informix Dynamic Server onparams实用程序进行管理。 逻辑日志文件是循环的。 换句话说,它们可以在填充后一次又一次地使用。 但是有一些重用条件:

  • 逻辑日志文件必须备份。 默认情况下,Informix Dynamic Server将在逻辑日志文件填满后自动备份它们。 这由配置文件中的ALARMPROGRAM参数规定。 应始终将此参数设置为名为log_full.sh的脚本,该脚本执行逻辑日志文件备份。 Log_full.sh是Informix Dynamic Server软件包随附的服务器系统脚本。
  • 逻辑日志中的所有记录必须与已关闭的事务关联。 封闭交易是指已提交或回退的交易。 如果事务待处理,并且逻辑日志中有与该事务相关的记录,则该逻辑日志将无法重用。
  • 逻辑日志不得包含最后一个检查点记录。 Onstat -l输出可以告诉我们哪个逻辑日志包含最后一个检查点记录:如果flags字段在其输出中的最后位置是“ L”,则表明该逻辑日志包含最后一个检查点记录并且无法重用。
  • 逻辑日志中不得包含未刷新到磁盘的任何事务。 这是为了确保所有交易都不会丢失。 事务完成后,它将保留在逻辑日志中,等待将检查点刷新到磁盘。 如果我们在检查点之前重用逻辑日志,我们将丢失所有这些事务。

在配置逻辑日志时,我们需要注意以下问题:

  • 尺寸。 逻辑日志文件的正确大小在200 KB(最小)和2,097,152 KB(最大)之间。 这是一个广泛的领域,没有一个硬性规则可以遵循。 基本上,较小的逻辑日志文件具有较小的恢复粒度。 如果包含逻辑日志文件的磁盘出现故障,则可能会丢失最后一个未备份的逻辑日志文件。
  • 数。 必须始终至少有三个逻辑日志文件。 最大数量为32,767。 这又是一个广泛的范围。 根据生产环境做出决定。 逻辑日志文件的数量不得超过配置文件中LOGMAX参数的值。 但是,在Informix Dynamic Server 9.40x中取消了此限制。
  • 位置。 逻辑日志文件的位置很重要。 当Informix Dynamic Server首次初始化时,它会自动创建逻辑日志并将其与物理日志一起放置在根dbspace中。 逻辑日志文件将导致对所有重要系统统计信息存储在的根dbspace的大量磁盘写入,并且可能会引起磁盘I / O争用。 为了最大程度地减少对根dbspace的磁盘争用,从而提高整体系统性能,请将逻辑日志移出根dbspace,然后将其传播到其他磁盘设备中。
  • 备份。 添加新的逻辑日志后,请进行真实(使用真实备份设备)或伪造(使用/ dev / null)备份。 否则,Informix Dynamic Server不能使用这些新添加的逻辑日志。 在Informix Dynamic Server 9.4x中取消了此限制,该限制将在将逻辑日志添加到系统后立即使用。
  • 始终保持最少三个逻辑日志。 否则,Informix Dynamic Server将无法启动。

此外,还有一些性能注意事项:

  • 逻辑日志备份。 逻辑日志填满后,必须对其进行备份。 备份逻辑日志将使用诸如CPU和内存之类的系统资源,并阻碍涉及与逻辑日志位于同一磁盘上的数据的数据库事务。
  • 检查点。 检查点阻止用户或数据库事务处理。 如果经常备份和释放逻辑日志,则检查点将频繁发生,因此,数据库事务可能会不断被阻塞,并需要更长的时间才能完成。
  • 数据库事务日志记录的类型。 使用无缓冲日志记录的数据库将比使用缓冲日志记录的数据库更快地填充逻辑日志。

有关如何有效配置逻辑日志的详细信息,请参阅《 IBM Informix Dynamic Server管理员指南,版本9.4》 (在本文中称为“管理员指南”)的第13章。

逻辑日志由onparams实用程序管理,该实用程序允许添加,删除和移动逻辑日志。 如上所述,在首次初始化期间,Informix Dynamic Server将自动创建一些逻辑日志。 它创建的逻辑日志的数量由配置文件中的LOGFILES参数规定。 之后,使用onparams实用程序添加,删除或移动逻辑日志。 Onparams具有以下选项:

onparams  -a -d <DBspace> [-s <size>] [-i] | 

          -d -l <log file number> [-y]     |

          -p -s <size> [-d <DBspace>] [-y] 

          -a  - Add a logical log file

          -i  - Insert after current log

          -d  - Drop a logical log file

          -p  - Change physical log size and location

          -y  - Automatically responds "yes" to all prompts

使用onparams实用程序有两个先决条件:

  • ·该实用程序仅限于用户Informix。 系统中的任何其他用户(包括root用户或具有DBA特权的其他用户)都不能使用此实用程序。
  • ·Informix Dynamic Server必须处于静态或单用户模式。 这意味着在使用该实用程序添加,删除或移动逻辑日志时,不允许其他用户连接或活动。

有关如何使用此实用程序的详细信息,请参阅《 管理员指南》 。

如何读取和解释逻辑日志的内容以及哪些有用的信息来自逻辑日志记录? 常规的操作系统编辑器(例如vi)不能直接读取逻辑日志记录。 只能使用onlog实用程序读取它们。 该实用程序具有以下功能:

  • ·显示有关每个日志记录的最大信息
  • ·不显示程序头
  • ·显示有关已记录的BLOB页的信息(仅-d选项)
  • ·从磁带设备读取
  • ·显示指定的日志
  • ·显示指定的用户
  • ·显示指定的TBLspace
  • ·显示指定的交易

onlog有两个显示逻辑日志记录的选项, onlog -lonlog -n 。 例如,假设我们刚刚完成了一个数据库事务,该事务包含对表的单个更新。 现在执行onlog -l来查看逻辑日志如何记录此事务:


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值