informix-逻辑日志

informix的安装步骤 informix的安装步骤(本人原创) 一、环境搭建 linux 版本: CentOS8.0/CentOS7.4/CentOS6.8(本人亲测6.8和7.4) informix安装包:本人亲测(11.5和12.1) informix服务名:demo_on (随意) 1.在Linux系统下创建组和用户 su root (必须在root权限下) --创建组 groupadd -g 1000 informix --创建用户 useradd -u 1000 -g 1000 -d /ho 阅读详情
什么是逻辑日志

    日志是记录数据库操作的。包括物理日志、逻辑日志。物理日志记录数据库物理变化,即变化的数据信息,而逻辑设备记录逻辑的变化,比如insert, update等动作,但不是记录具体数据,那个由物理日志完成。

逻辑日志的类型

可以用informix的日志类型来理解逻辑日志:无日志, 无buffer日志, 有buffer日志, asii日志
无日志:不记录日志,此时当然也不支持事务(可以在大事务时,临时切换到无日志状态以防止长事务发生。)
无buffer日志:也并不是每个操作都直接写到磁盘,而是每个事务完成后马上写。
buffer日志:一般会在buffer满了后才写到磁盘
assii日志:和无buffer处理相似
各日志间的切换命令:

逻辑日志的备份方式

先说一下备份级别,也同样用informix的概念来理解
备份级别分为 0, 1, 2 
0:完全备份
1:自上一次完全备份,进行增量
2:自上一次增量进行增量

备份方式有两种:自动、连续
所谓自动并不是想像中的自动,它运行一次后会结束,这样就要有脚本或人工定时去备份逻辑日志,不然会被填满。
可以用命令:ontape -a 来切换到自动备份
而连续才是想像中自动的意思,他不会停止,只要日志满了就会去备份。通常如果不想去费心思管理逻辑日志,可以设置为连续。
可以用命令:ontape -c 来切换到连续备份

informix中逻辑日志的工作流程

    informix逻辑日志一般有多个。建立多个日志的原因我想是考虑到效率。当多个进程需要记录日志时,可以同时向多个日志文件中写。
    在informix配置文件中logfiles指定逻辑日志文件的个数(最少为3个,最大为X个)。logsize指定每个逻辑日志文件的大小。(总逻辑日志空间为:logsize*logfiles) 这里的配置只在informix实例初始化时才起作用,即oninit -i 。当然在使用过程中如果有需求要改变逻辑日志的个数或大小不能通过oninit -i 来实现。onparams可以对逻辑日志文件进行动态的添加,更改大小,删除,移动等操作。

buffer中逻辑日志什么时候写入日志文件

上面,说到我们会建立多个日志文件用来记录逻辑日志,但并不是每产生一次操作记录就向日志文件中写,那样io太多。而是在记录在buffer中。当达到一定限度时再写入日志文件,那么什么时候buffer会写入文件中呢?
1. buffer满了   用来记录逻辑日志的buffer的大小由onconfig文件中的logbuff决定,当buffer写满后会写入日志文件。这儿可以看到设置合适的    logbuff大小还是对效果有影响的。如果过小,buffer很快被写满,就要做一次io, 写入日志文件。这样会造成过多的IO。如果过大,常时间buffer中的数据不写入日志文件,如果有意外发生,造成较大的不可恢复。同时点用太多内存有可能影响整体性能。

逻辑日志写满了怎么办?

  当逻辑日志写满后,数据库就会被塞住,而不能进行任何操作。所以不能让逻辑日志写满。那么就要保证逻辑日志文件可以循环使用。
下面是一种方案:当某逻辑日志文件写满后,将逻辑日志进行备份,然后再把这个日志文件设备为可用。
informix也是这么做的,系统运行时,可以让日志文件写满后进行连续备份,这样就可以循环使用日志文件了。
那么备份到哪呢?在onconfig文件中,LTAPEDEV指定备份的磁带,我现在设置成/dev/null 其实是不备份的,但让informix以为已经备份,以至系统可以向下正常运行。当然,如果我指定到备份设备,就可以备份了。
  如果把备份设备指定到/dev/null ,那么备份方式将自动为连续备份。
  如果把备份设备指到了具体的磁带机,那么可以用ontape -c来设置备份方式为连续备份

下面一段是关于日志状态的说明:
先对下面的一段进行一些说明,number一共到9说明有9个逻辑日志,size为12500说明生个逻辑日志文件大小10M。 used当然是已经使用过了多少。
可以看到大部已经使用完。不用害怕,这是很正常的。可以看到%used为100%的flags为U-B  U虽然说明已经满了,但B却说明了已经备份过了,可以进行循环使用。如果当前使用的日志文件满了后,会自动切换到下一个U-B上。
第8个日志文件flags为U---C-L  说明这个是当前正在使用的日志文件。使用onmode -l可以切换到下一个日志文件,切换后再用onstat -l查看,可以看到第9个日志文件变为U---C状态,说明已经在使用下一个了,而它的%usered则为0。也验证了U-B状态会循环使用的说明。
还有一点要注意,即使在当前使用的日志后面有没有满的日志,informix也不会跳过当前使用的日志去写入下面的日志文件,只有当前日志满了后才切换到下一个(或用onmode -l强制转到下一个)

address   number   flags     uniqid    begin        size     used    %used
8352f680  1       U-B----  11544    1061e7      12500    12500   100.00%
8352f69c  2       U-B----  11545    1092bb      12500    12500   100.00%
8352f6b8  3       U-B----  11546    10c38f      12500    12500   100.00%
8352f6d4  4       U-B----  11547    10f463      12500    12500   100.00%
8352f6f0  5       U-B----  11548    112537      12500    12500   100.00%
8352f70c  6       U-B----  11549    11560b      12500    12500   100.00%
8352f728  7       U-B----  11550    6135e6      12500    12500   100.00%
8352f744  8       U---C-L  11551    6166ba      12500    10616    84.93%
8352f760  9       U-B----  11530    61978e      12500    12500   100.00%
逻辑日志文件的状态显示包括两个区域:
number:标识单个逻辑日志文件的logid。
flags:标明相应逻辑日志文件的状态。flags状态标志有七个位置,但仅第一,三,五,七位置
有标志值。
第一个位置上,可能出现A,F,U三个标志中的一个;
第三个位置上,标志B可能出现也可能也可能不出现;
第五个位置上,可能为标志C也可能为空;
第七个位置上,可能是标志L也可能为空;

位置    标志     含义
1       A       Added,新增加的逻辑日志文件,仅当建立一个(根dbspace的)0级archive
后才能使用。
1       F       Free,该逻辑日志文件空闲并可以使用。
1       U       Used,该逻辑日志文件正在使用而未释放,OnLine恢复时还需要该文件(回
滚一个事务或找到上一个检查点记录)
3       B       Backed-UP,该逻辑日志文件已备份。
5       C       Current,该逻辑日志文件是当前正在填充的逻辑日志文件。
7       L       Last,该逻辑日志文件包含有最近一次检查点记录,在新的检查点记录写入
另一个日志文件之前,该文件及后面的逻辑日志文件不能释放。


所有状态标志的可能组合
状态标志       逻辑日志文件的状态
A------       上次0级archive以来新增加的逻辑日志文件,暂时不能使用
F------       空闲
U------       正在使用,还没有备份
U-B----       日志已备份,恢复时还需要
U-B---L       日志已备份,包含上次检查点记录,恢复时还需要此文件
U---C--       当前日志文件
U---C-L       当前日志文件,并包含上次检查点记录

长事务

先说一下引起长事务的原因,一个逻辑日志文件中包括一个没有结束的事务时,这个日志文件是不能被备份的。如果一个事务特别长,那么就有可能把所有日志文件都写满。如果所有日志被写满是很麻烦的。informix会控制当日志写入量达到一定程度时,就报告这个事务为长事务,然后进行回滚,以防止日志被写满。

这儿就有两个高水位线的概念,在onconfig文件中HTXHWM  这是一个百分比,当已经使用日志量达到这个总日志量的这个百分比时,就报告长事务。开始回滚,期间别的操作还可以进行(写入日志),但当达到另一个水准线时LTXEHWM informix会停止其它进程的操作,用所有精力进行回滚。(当达到这个水平时,如果再接受别的进程写入日志,有可能不能完成回滚就已经填满所有日志。回滚也是要写入大量日志的!)

上面就是长事务的原因。所以进行比较大的事务操作时,可以暂时切换到无日志状态。如果不能即时关闭日志记录,可以把日志文件大小加大,都有可能解决上面的问题。另外还有虽的方法,我还要去查看

注意:长日志是指发生在一个日志文件不能备份的情况下,所以增加日志文件个数并不管用,只有适当增加每个日志文件大小

  

Informix 常见问题处理 Informix 常见问题处理2009-01-05 14:04逻辑日志满 立即下载

相关推荐

告别GPS,用Sentinel-1数据+Python实战SBAS-InSAR监测城市地面沉降(保姆级教程)

本文详细介绍了如何利用Sentinel-1数据和Python实现SBAS-InSAR技术监测城市地面沉降。通过保姆级教程,从环境配置、数据获取到干涉处理、时序分析和形变反演,逐步解析全流程技术细节,帮助读者掌握毫米级精度的形变监测方法,并以上海陆家嘴区域为例展示实际应用效果。

weixin_32771907的博客 536

解决逻辑日志已满问题

1. If logical file is full, Youll see this error in informixs log file : Logical Log Files are Full -- Backup is Needed. You will not be able to search certain tables and you may also encounter tabl

ducduc的专栏 2432

斯坦福大学CS224d基础1:线性代数知识

本文为斯坦福CS229的内容,也是CS224d课程的背景数学知识。概括了在机器学习和深度学习中用到的大部分线性代数知识。为了便于大家查漏补缺,这里根据英文版本整理了一个中文版本。

龙心尘 2万+

【informix】解决启动报错大全,以及解决办法

oninit -ivy bad INFORMIXSERVER[informix@localhost informix]$ cd data/ shared memory not initialized for INFORMIXSERVER '' Opening primary chunks...FAILED oninit: Fatal error in shared memory initialization WARNING: server initialization failed o

小慌慌的博客 7748

从零到飞:在Ubuntu 22.04上为你的无人机搭建PX4-Autopilot开发环境

本文详细指导在Ubuntu 22.04上搭建PX4-Autopilot开发环境,涵盖系统依赖安装、源码获取、编译目标选择及Gazebo仿真测试。通过优化构建过程和调试技巧,帮助开发者快速为无人机部署稳定的飞控系统,实现从仿真到实机的平滑过渡。

weixin_26878995的博客 490

C#创建COM组件,QT调用COM组件简单测试(VS2008+QT4.6.4)

一. C#创建组件: 1. VS2008新建一个项目,选择Visual C#, Class library 修改Properties下面的AssemblyInfo.cs文件,ComVisible属性设置为True,即:[assembly: ComVisible(true)] 2. 右击项目,选择“属性”, 选择“生成”选项卡,把“为COM互操作注册”勾选上 选择“签名”选项卡,把“

3517

informix数据库大全(持续更新)

数据库操作常用命令: 登陆命令,putty或者ubuntu命令 dbaccess databaseName 执行sql脚本命令 : dbaccess databaseName sqlExample.sql 表操作常用命令 建表语句 create table tableName( tableColumn type [not null unique] ) extent size 2400000 next size 1200000 lock mode row; create index 数

此生不换的博客 6976

AFL源码分析之afl-as.c详细注释

前言 afl-as注释好了,明白了是如何进行插桩的,以及插在哪里 本文主要参考Sakura大佬文章:https://eternalsakura13.com/2020/08/23/afl/ 编写不易,如果能够帮助到你,希望能够点赞收藏加关注哦Thanks♪(・ω・)ノ /* Copyright 2013 Google LLC All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); y

hollk’s blog 2172

informix的逻辑日志和物理日志分析

informix数据库中物理日志和逻辑日志两种非常重要的磁盘构件。 1.物理日志 物理日志(physicallog)由一片连续的磁盘空间。其主要目的是为系统进行快速恢复提供原始数据映像。物理日志以页为单位进行分配和释放,它所存储的内容被称为beforep_w_picpaths(顾名思义,数据原来的面貌即修改前数据映像)。当共享内存中的某个页要被修改之前(第一次被修改),系统先将其修改前数据映像(b...

WenJloveYaJ的博客 1717

剪映专业版教程:用AI生成音乐MV并重新制作画面—《漂泊与归梦》完全原创实战

本文详细拆解如何用AI生成音乐MV并重新制作画面的全流程。以歌曲《漂泊与归梦》为例,首先用AI将歌词转化为带音乐的MP4文件;导入剪映后分离音频并删除原视频,通过“识别字幕”功能提取歌词文本并逐句核对修正;接着设置“向右擦除”动画并锁定字幕轨道;最后根据歌词意境配置动漫、风景等非真人画面规避审核风险。教程涵盖从AI生成、音频分离、字幕提取到画面重制的每个环节,助你打造完全原创、无侵权风险的音乐短视频。

深耕计算机专业知识与技术。 1076

uniapp - 详细实现移动端公众号 H5 网页授权登录流程及示例代码,申请测试公众号全流程及本地调试无需部署上线服务器就能直接调起微信登陆授权页面,手机移动端h5公众号页面利用微登录拿到用户数据!

uni-app,微信公众号,h5网页,uniapp网页端,手机端H5公众号页面,微信网页登陆,uniApp详细实现公众号的登录,微信授权第三方网站登录,流程及逻辑详细教程,OAuth2.0,公众号网页授权,微信网页授权通过code换取网页授权,redirect_url,参数错误,解决,报错,无法调起,如何申请测试公众号,微信公众平台测试号的申请与使用,获取用户openid手机号昵称头像,利用测试号实现本地调试微信登录授权,本地无法调试怎么办,测试公众号,在开发环境下怎么测试,用项目本地ip地址,微信公众号平

🏆 前端领域优质创作者 5063

informix添加逻辑日志

informix添加逻辑日志 1、 建立逻辑日志表空间logdbs2、 切换到quiescent模式          onmode -s3、 建立逻辑日志     onparams  -a -d logdbs -s 30000 –y4、 切换到on_line模式           onmode -m5、 做0级备份           ontape -s –

文逗 2925

点云数据生成DEM,并导出三维模型

点云数据生成DEM,并导出三维模型

qq_42540466的博客 2万+

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

逻辑日志是数据库管理的重要方面。 逻辑日志如果管理不当,将使数据库管理员感到头疼。 一些最常见的问题是: 多头交易。 如果一笔交易达到排他的多笔交易高水位标记(ELTM)时未提交或回滚,则该交易被称为多笔交易。 排他的长事务高水位标记是一个配置参数,规定单个事务可以跨越逻辑日志的百分比。 一旦事务达到Informix®Dynamic Server配置文件中的ELTM设置,服务器就会中止事...

cusi77914的博客 3979

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

解密informix逻辑日志记录信息

注意:以下内容仅为个人研究,受限于水平,不保证结果准确与正确!目的:了解逻辑日志是如何记录信息的;了解使用onlog实用程序数据库版本:IDS V11.50UC6 for linux ,数据库使用log(buf或者unbuf均可)使用到的相关表: tt2( id char(10), col1 char(20), ...

liaosnet的专栏 784

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

informix数据库中物理日志和逻辑日志两种非常重要的磁盘构件

1.物理日志 物理日志(physical log)由一片连续的磁盘空间。其主要目的是为系统进行快速恢复提供原始数据映像。物理日志以页为单位进行分配和释放,它所存储的内容被称为before images(顾名思义,数据原...

934

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

在Gbase数据库中添加informix逻辑日志与物理日志

在添加Gbase的逻辑日志时,出现了很多错误,在此对整个过程进行梳理的同时也会对之前出现的错误进行总结

qq_45708407的博客 1625

informix增加逻辑日志—Linux Shell

#/bin/bash#create date:2010/06/05#author: oak#function : add logical logs for informix#file name: add_logical_logs...

cnyp2016的博客 320

oracle 长事务 逻辑日志,什么是逻辑日志

日志是记录数据库操作的。包括物理日志、逻辑日志。物理日志记录数据库物理变化,即变化的数据信息,而逻辑设备记录逻辑的变化,比如insert, update等动作,但不是记录具体数据,那个由物理日志完成。逻辑日志的类型可以用informix的日志类型来理解逻辑日志:无日志, 无buffer日志, 有buffer日志, asii日志无日志:不记录日志,此时当然也不支持事务(可以在大事务时,临时切换到无日...

weixin_32751961的博客 474

Informix入门之---日志分析

大家都知道informix是需要日志的,但各日志都做什么用,各有什么意义等等,我们在下面做一个探讨:    首先需要说明的是informix的日志有两种:一种是物理日志,用来存放数据的前映象;另一种是逻辑日志,用来存放所有事物的操作过程。    在初始化的配置中,物理日志和逻辑日志的不是存放在根的磁盘空间的。默认的大小物理日志2M,逻辑日志6个,每个日志文件2M。但在实际的生产环境中,这两个参数一...

心似海 3354

INFORMIX----邏輯日誌不能正常的備份

<br />問題表述:    工作中遇到這樣的問題(截圖如下):<br /><br />日誌沒有備份成功,提示磁帶沒有任何登陸數據,即數據沒有備份成功。<br /> <br />問題分析:<br />1. 剛開始以為是備份到本機的相關目錄沒有對應的操作權限。經檢查后排除該種可能;<br /> <br />2. 嘗試查看對應目錄下空間是否足夠,經檢查后排除該種可能;<br /> <br />3. 更改本機數據備份的路徑,備份提示依舊,排除環境變量讀取;<br /> <br />4. 執行ps -ef |gre

hanner_cheung的专栏 867

INFORMIX数据库系统

7.4.3 INFORMIX数据库系统 INFORMIX系统使用了两类日志文件:逻辑日志文件(logical log file)和物理日志文件(physical log file)。逻辑日志文件用来存放数据库系统中所有更新事务的日志信息,就是我们这一章所讲的数据库日志;物理日志文件并不存放日志信息,它被用来保存数据被更新前的原有映像。任何事务在更新数据前,都需要将这些数据备份到物理日志文件...

zheng_weizhong的博客 688

INFORMIX 数据库空间物理日志,逻辑日志,数据库会话级的存储过程,数据表的分片

#查看数据库的状态 onstat - #查看数据空间 onstat -d #命令查看日志: onstat -m #查看逻辑日志和逻辑日志每个文件的大小 onstat -l #关闭数据库 onmode -ky 清理共享内存 onclean -ky onstat -g ckp 清空测试库的事务日志 ontape -s -N databasename -t /dev/null onspaces -c -...

一个奋斗者的博客 2134

informix 日志详解

informix日志分为逻辑日志和物理日志 命令 Onstat -l 可以看到如下结果: [seal@HBAPQ151 db]$ onstat -l | more IBM Informix Dynamic Server Version 10.00.UC9 -- On-Line -- Up 325 days 13:47:33 -- 725956 Kbytes Physical Lo...

dengweidan3299的博客 1002

Informix之onparams语法及实例(日志部份)

<br />(其中红色字体为手工输入,蓝色字体为主要变化关注点。)<br />1、基本用法:<br />-bash-3.1$ onparams --<br />Usage:  onparams  { -a -d <DBspace> [-s <size>] [-i] }                      |<br />                  { -b -g <pagesize> [-n <number of buffers>] <br />                   [-r <n

sunxp的专栏 4606
上一篇: informix实用程序- oninit
下一篇: informix-基本配置说明
vinep
博客等级 码龄23年 626粉丝 211原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值