| 网站首页 | JAVA文章 | AppServers | Web开发 | 应用开发 | 资源下载 |
    想学好编程,外语很重要,最新的编程技术还是在国外  [enadd  2006年12月25日]        
设为首页 加入收藏 联系站长
您现在的位置: 编程笔记网 >> 数据库 >> Infomix >> 文章正文
informix基础知识:关于物理日志和逻辑日志的中文文档            【字体:
informix基础知识:关于物理日志和逻辑日志的中文文档
作者:未知    文章来源:未知    点击数:    更新时间:2006-11-4

informix基础知识:关于物理日志和逻辑日志的中文文档

1.物理日志
    物理日志的作用在于保持一批dbspace页的前映象。这些“前映象”代表了所有数据在物理上与逻辑上都保持一致的这样一个时刻。将物理日志中的前映象与逻辑日志中的逻辑日志记录结合起来,可以恢复数据库自上一次已知的一致点以来发生的所有事务。这样的已知的一致点称为检查点。在快速恢复过程中,第一步首先用到物理日志,将整个系统恢复在Online中最近一次检查点时所处的物理一致的状态。
1)        物理日志的存放地址
        当IDS初始化时,将会在rootdbs中创建物理日志。
        当IDS处于静止方式时,用户可将物理日志从一个dbspace移到另一个dbspace中。用户这样做的目的是想尽量提高效率。
        物理日志的位置由配置文件中的PHYSDBS参数指定。这个参数仅当用户决定将物理日志从 rootdbs中移到另一个dbspace中才必须被改变;否则,该参数在缺省情况下,仍包含着rootdbs的名称。
        物理日志的大小由配置参数PHYSFILE指定,以kb为单位。用户可以修改物理日志文件的位置和大小。
2)        物理日志的内容
        物理日志是一组连续的磁盘页面,每一个都包含有一个特别的Online页的副本。物理日志中的页面可以是除了blobspace中blobpage以外的其它任何Online页面。甚至可对应于系统开销页,例如chunk空闲链页、blobspace空闲映象页、blobspace位图页等等,这些页也必须在其上的数据被修改并刷新到磁盘上之前被复制到物理日志中去。
        Blobspace blobpage并不出现在物理日志中,这是因为blob采用与其它数据类型不同方法记录日志。
3)        物理日志前映象
在某一次检查点后,某个页面第一次被修改时,该页的“前映象”将被写入共享内存中的物理日志缓冲区。在该被修改的页从共享内存刷新到磁盘上之前,该页的“前映象”应首先被刷新到磁盘上物理日志中。需要注意的是,仅当对页面的第一次修改才会导致往物理日志中写“前映象”。先写日志文件原则是为快速恢复所必需的。
4)        检查点操作逻辑地清空物理日志
    每次Online检查点操作以后,物理日志中逐渐被填上发生修改的“前映象”。当再一次检查点操作发生以后的瞬间,这时Online中的数据在物理上是一致的,这时也就再不需要原来的Online物理日志中的“前映象”了。(这对于继续执行的事务也同样适用。如果某一个这样的事务需要执行回滚操作,则执行回滚所需的信息都已包含在逻辑日志文件中了。)在检查点操作完成时,Online将逻辑上清空逻辑日志,Online仅仅重置物理日志中的指针,标明下一组“前映象”所存储的起始位置。Online 循环使用物理日志,不断地覆盖那些已过时的数据。
检查点操作是唯一可以清空物理日志的机制。如果物理日志75%的空间已被占用,则Online将启动一次检查点操作。

2.逻辑日志
    逻辑日志文件的作用在于自上一次Online archive以来,对Online数据所发生的变化进行记录。Online把逻辑日志分成三个或更多个相互分离的磁盘空间,每磁盘空间称为一个逻辑日志文件。相应于每一个逻辑日志文件有一个唯一标识号。
1)        逻辑日志与快速恢复
    Online使用逻辑日志可以恢复自上一次已知的物理一致点以来发生的所有事务。这一已知的物理一致点在Online系统中称为检查点。快速恢复中,当Online使用物理日志将整个系统恢复到上一次检查点时所处的状态以后,Online将使用逻辑日志记录将整个系统恢复到最近一次逻辑日志记录时刻的逻辑一致性状态,这实际上是快速恢复的第二步骤。

2)        逻辑日志与数据恢复
    将逻辑日志文件的备份磁带与最近一次的Online的archive结合在一起,可以将Online系统重新恢复到最近一次逻辑日志记录时的状态。
3)        逻辑日志文件被循环使用
    Online通过标识一个逻辑日志文件为used(使用)状态来保护逻辑日志文件不被覆盖,直至该文件被备份到磁带上并且快速恢复已不再需要该逻辑日志文件时为止。当一个逻辑日志文件中的所有记录对应的事务都已完成时,快速恢复过程将不再需要该逻辑日志文件。如果上面所说的两个重要条件都已被满足,即逻辑日志文件已被备份到磁带上,并且快速恢复也已不再需要该逻辑日志文件,这时Online将该逻辑日志文件标记为free(空闲)状态,该文件也就可以被再次用以填如逻辑日志记录。
    在 Online处理过程中,Online按数字顺序依次填充空闲的(即状态为free)的逻辑日志文件。当第一个逻辑日志文件变满时,Online接着开始填充下一个逻辑日志文件,如果下一次逻辑日志的状态为“used”而不是“free”,则正常的Online处理将被挂起。Online不能跳过该标记为“used”状态的逻辑日志文件而去填充别的空闲的日志文件。保证空闲的逻辑日志文件在Online处理过程中总可以被得到,这是Online管理员的职责。
    Online至少需要三个逻辑日志文件以便循环使用逻辑日志文件,当一个逻辑日志文件在接收当前记录时,Online有可能正将另一个日志文件往磁带上备份,第三个日志文件是当前日志文件已满,而备份另一个日志文件的工作尚未完成时所需要的。(这个使用三个逻辑日志缓冲区的考虑是类似的)。
4)        逻辑日志文件:标识号与备份
    逻辑日志备份带以逻辑日志所包含的唯一数值标记。每当一个日志文件填满时,逻辑日志标识号就增加数值1。例如,如果一个Online系统包含三个逻辑日志文件,则相应的三个日志文件的标识号为1、2、3。当逻辑日志文件1第一次被释放以便循环使用时,它将变为逻辑日志文件4,第二次它又将变为逻辑日志文件7。
5)        逻辑日志文件的内容
逻辑日志文件中包含下述五种类型的记录:
        所有数据库的SQL定义语句。
        检查点记录。
        有关配置修改的记录。
        对于那些创建时使用日志登录的数据库的SQL数据操纵语句。
        有关某个数据库日志登录状态变化的记录。
    即使没有一个数据库创建时使用了事务日志登录,在处理过程中,Online也会将前面三种类型的记录写入逻辑日志文件。逻辑日志记录可以跨越Online的整个页面,但它们却不能跨越逻辑日志文件。
6)        逻辑日志文件的配置
当Online初始化时将会在rootdbs中创建逻辑日志文件。在Online处于静止方式以后,用户可以从rootdbs中删除一个或多个逻辑日志文件,也可以往另一个dbspace中增加一个或多个逻辑日志文件。用户有可能为了提高效率而这样做。
    在Online磁盘空间初始化以后,用户就不能再修改逻辑日志文件的大小了。如果一逻辑日志文件被删除,则由该逻辑日志文件占据的空间将被释放掉,并被链入chunk空闲链页。
7)        大小与数目方面的限制
    Online管理员决定每一个逻辑日志文件的大小,以及分配给整个逻辑日志的磁盘空间的大小。每个逻辑日志文件至少要被分配到200K的磁盘空间。
    逻辑日志文件的最小数目为3,最大数目则由一页上可容纳的逻辑日志描述字的数目所决定。对于一个2K大小的页,最大的日志文件数目为60。

[1] [2] 下一页  

文章录入:enadd    责任编辑:enadd 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
  • 几个重要的Informix动态服务…

  • Informix 4GL 語句 memo

  • Informix 5.0 for OpenServe…

  • Informix数据仓库解决方案

  • 如何监视infomirx动态服务器

  • Informix数据仓库技术

  • Informix知识集锦1

  • INFORMIX安装

  • Linux+Informix后台数据库系…

  • Informix 高级培训教材(三)

  •   网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 管理登录 |