微电子/半导体checkpoint

informix checkpiont > 30次/hr CKPTINTVL=300

1.Informix 7.31 UD3, HDR环境。
2.看日志发现8月28日开始发生部分时间段数据库checkpoint 次数频繁,同一个时间点持续3~4次,日志如下
3.8月27号有停机做过维护,断开HDR,并重建索引,然后重新HDR。SOP请参考第三段附件。
00:04:16  Logical Log 3375277 - Backup Started
00:04:16  Logical Log 3375277 - Backup Completed
00:04:26  Logical Log 3375278 Complete.
00:04:26  Logical Log 3375278 - Backup Started
00:04:27  Logical Log 3375278 - Backup Completed
00:04:33  Checkpoint Completed:  duration was 0 seconds.
00:04:33  Checkpoint loguniq 3375279, logpos 0x494164

00:04:33  Checkpoint Completed:  duration was 0 seconds.
00:04:33  Checkpoint loguniq 3375279, logpos 0x4a5130

00:04:33  Checkpoint Completed:  duration was 0 seconds.
00:04:33  Checkpoint loguniq 3375279, logpos 0x4b6088
c01a17[informix]/usr/informix/etc$ more onconfig.1
#**************************************************************************
#
#                          INFORMIX SOFTWARE, INC.
#
#  Title:       onconfig.std
#  Description: Informix Dynamic Server Configuration Parameters
#
#**************************************************************************

# Root Dbspace Configuration

ROOTNAME        rootdbs         # Root dbspace name
ROOTPATH        /usr/informix/PROD/rootdbs
                                # Path for device containing root dbspace
ROOTOFFSET      0               # Offset of root dbspace into device (Kbytes)
ROOTSIZE        500000          # Size of root dbspace (Kbytes)

# Disk Mirroring Configuration Parameters

MIRROR          0               # Mirroring flag (Yes = 1, No = 0)
MIRRORPATH                      # Path for device containing mirrored root
MIRROROFFSET    0               # Offset into mirrored device (Kbytes)

# Physical Log Configuration

PHYSDBS         phydbs          # Location (dbspace) of physical log
PHYSFILE        360000          # Physical log file size (Kbytes)

#PHYSDBS         phydbs          # Location (dbspace) of physical log
#PHYSFILE        360000          # Physical log file size (Kbytes)

# Logical Log Configuration

LOGFILES        2500            # Number of logical log files
LOGSIZE         4000            # Logical log size (Kbytes)

#LOGFILES        3               # Number of logical log files
#LOGSIZE         4000            # Logical log size (Kbytes)

# Diagnostics

MSGPATH         /home/informix/log/online.log # System message log file path
CONSOLE         /home/informix/log/console.log # System console message path
ALARMPROGRAM    /usr/informix/etc/no_log.sh # Alarm program path
SYSALARMPROGRAM /usr/informix/etc/evidence.sh # System Alarm program path
#ALARMPROGRAM    /usr/informix/etc/log_full.sh # Alarm program path
#SYSALARMPROGRAM /usr/informix/etc/evidence.sh # System Alarm program path
TBLSPACE_STATS  1

# System Archive Tape Device

#TAPEDEV         /dev/null
#TAPEDEV        /home/informix/ifxdmp/infofull
TAPEDEV         /dev/rmt/3m
TAPEBLK         1024            # Tape block size (Kbytes)
#TAPESIZE        190000000       # Maximum amount of data to put on tape (Kbytes)
TAPESIZE        400000000
# Log Archive Tape Device

#LTAPEDEV        /dev/null       # Log tape device path
LTAPEDEV        /dev/rmt/2m     # Log tape device path
#LTAPEDEV       /home/informix/ifxdmp/meslog # Log tape device path
LTAPEBLK        16              # Log tape block size (Kbytes)
LTAPESIZE       20000000        # Max amount of data to put on log tape (Kbytes)

# Optical

STAGEBLOB                       # Informix Dynamic Server/Optical staging area

# System Configuration

SERVERNUM       1               # Unique id corresponding to a Dynamic Server instance
#DBSERVERNAME    k1              # Name of default database server
#DBSERVERALIASES k1s,k1DR        # List of alternate dbservernames
DBSERVERNAME    c01a17          # Name of default database server
DBSERVERALIASES c01a17s,c01a17DR # List of alternate dbservernames
NETTYPE         ipcshm,1,30,CPU # Configure poll thread(s) for nettype
NETTYPE         soctcp,5,70,NET # Configure poll thread(s) for nettype
#NETTYPE        soctcp,3,120,NET # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT 60              # Max time to wait of lock in distributed env.
RESIDENT        1               # Forced residency flag (Yes = 1, No = 0)

MULTIPROCESSOR  1               # 0 for single-processor, 1 for multi-processor
NUMCPUVPS       4               # Number of user (cpu) vps
SINGLE_CPU_VP   0               # If non-zero, limit number of cpu vps to one

NOAGE           0               # Process aging
AFF_SPROC       0               # Affinity start processor
AFF_NPROCS      0               # Affinity number of processors

# Shared Memory Parameters

LOCKS           600000          # Maximum number of locks
BUFFERS         400000          # Maximum number of shared buffers
NUMAIOVPS       12              # Number of IO vps
PHYSBUFF        128             # Physical log buffer size (Kbytes)
LOGBUFF         32              # Logical log buffer size (Kbytes)
LOGSMAX         2500            # Maximum number of logical log files
CLEANERS        128             # Number of buffer cleaner processes
SHMBASE         0x0               # Shared memory base address
SHMVIRTSIZE     400000          # initial virtual shared memory segment size
SHMADD          16000           # Size of new shared memory segments (Kbytes)
SHMTOTAL        0               # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL       300             # Check point interval (in sec)
LRUS            128             # Number of LRU queues
#LRU_MAX_DIRTY   80              # LRU percent dirty begin cleaning limit
LRU_MAX_DIRTY   1               # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY   0               # LRU percent dirty end cleaning limit
#LRU_MIN_DIRTY   0               # LRU percent dirty end cleaning limit
LTXHWM          40              # Long transaction high water mark percentage
LTXEHWM         50              # Long transaction high water mark (exclusive)
TXTIMEOUT       0x12c             # Transaction timeout (in sec)
STACKSIZE       64              # Stack size (Kbytes)

# System Page Size
# BUFFSIZE - Dynamic Server no longer supports this configuration parameter.
#            To determine the page size used by Dynamic Server on your platform
#            see the last line of output from the command, 'onstat -b'.


# Recovery Variables
# OFF_RECVRY_THREADS:
# Number of parallel worker threads during fast recovery or an offline restore.
# ON_RECVRY_THREADS:
# Number of parallel worker threads during an online restore.

OFF_RECVRY_THREADS 10              # Default number of offline worker threads
ON_RECVRY_THREADS 3               # Default number of online worker threads

# Data Replication Variables
# DRAUTO: 0 manual, 1 retain type, 2 reverse type
DRAUTO          0               # DR automatic switchover
DRINTERVAL      60              # DR max time between DR buffer flushes (in sec)
DRTIMEOUT       90              # DR network timeout (in sec)
DRLOSTFOUND     /usr/informix/etc/dr.lostfound # DR lost+found file path

# CDR Variables
CDR_LOGBUFFERS  2048            # size of log reading buffer pool (Kbytes)
CDR_EVALTHREADS 1,2             # evaluator threads (per-cpu-vp,additional)
CDR_DSLOCKWAIT  5               # DS lockwait timeout (seconds)
CDR_QUEUEMEM    4096            # Maximum amount of memory for any CDR queue (Kbytes)
CDR_LOGDELTA    30              # % of log space allowed in queue memory
CDR_NUMCONNECT  16              # Expected connections per server
CDR_NIFRETRY    300             # Connection retry (seconds)
CDR_NIFCOMPRESS 0               # Link level compression (-1 never, 0 none, 9 max)
参与8

8同行回答

weiruan85weiruan85数据库管理员ibm
7.3.1  会不会是bug , 另外chk 频繁 你系统能感知不,比如突然很慢等等。显示全部
7.3.1  会不会是bug , 另外chk 频繁 你系统能感知不,比如突然很慢等等。收起
政府机关 · 2013-10-10
浏览1151
hugolinhugolin数据库管理员gbase
。。。我记错了。。。11以下版本确实比较难知道检查点触发原因显示全部
。。。
我记错了。。。
11以下版本确实比较难知道检查点触发原因收起
互联网服务 · 2013-10-08
浏览1240
liaosnetliaosnet信息分析/架构师gbasedbt.com
LRU_MAX_DIRTY   1               # LRU percent dirty begin cleaning limitLRU_MIN_DIRTY   0           ...hugolin 发表于 2013-10-7 15:46 这个...显示全部
LRU_MAX_DIRTY   1               # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY   0           ...
hugolin 发表于 2013-10-7 15:46


这个回复是有问题的,LRU刷新并不会要求检查点(虽然检查点时会要求LRU刷新)。

低版本的数据库似乎没有好办法知道CKPT触发的原因。。
开启TRACECKPT=1(需要重启数据库),或许可以更容易估计CKPT的原因。收起
IT咨询服务 · 2013-10-08
浏览1190
JcmJcm数据库管理员广东
请问第一段日志是备库的日志么?能否主备库的日志都多发一点,还有onstat -l 信息。显示全部
请问第一段日志是备库的日志么?能否主备库的日志都多发一点,还有onstat -l 信息。收起
互联网服务 · 2013-10-08
浏览1191
george002george002数据库管理员git
LRU不会触发检查点,是不是物理日志小了点。显示全部
LRU不会触发检查点,是不是物理日志小了点。收起
互联网服务 · 2013-10-07
浏览1220
hugolinhugolin数据库管理员gbase
LRU_MAX_DIRTY   1               # LRU percent dirty begin cleaning limitLRU_MIN_DIRTY   0               # LRU percent dirty end cl...显示全部
LRU_MAX_DIRTY   1               # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY   0               # LRU percent dirty end cleaning limit
你参数设置了LRU_MIN_DIRTY 为0,LRU_MAX_DIRTY为1,表示当达到1%buffer脏的时候就触发检查点,当数据库写频繁,在还没达到配置设置的CKPTINTVL 300 秒时就已经达到了1%,就会触发检查点。收起
互联网服务 · 2013-10-07
浏览1301
jjxlxxjjxlxx数据库管理员HJTC
8月27日重建HDR步骤:A17是primary,A19是Secondary。primary DB备份        login  c01a17: informix         $ ontape -s -L 0         $ onstat -rm A19做physical DB restore     ...显示全部
8月27日重建HDR步骤:A17是primary,A19是Secondary。
primary DB备份        
login  c01a17: informix
        $ ontape -s -L 0
        $ onstat -rm
A19做physical DB restore        
login  c01a19: informix
        $ onmode -ky
        $ ontape -p
        $ onstat -rm
        $ onstat -z
        $ onstat -Dr 5
A17,A19建立HDR        
login  c01a17: informix
        $ onmode -d primary c01a19DR
        login  c01a19: informix
        $ onmode -d secondary c01a17DR
secondary重启        
login  c01a19: informix
        $ onmode -ky
        $ oninit
收起
微电子/半导体 · 2013-10-04
浏览1204
jjxlxxjjxlxx数据库管理员HJTC
onconfig的下半部分# Backup/Restore variables BAR_ACT_LOG     /tmp/bar_act.log BAR_DEBUG_LOG   /tmp/bat_dbug.log BAR_MAX_BACKUP  0 BAR_RETRY       1 BAR_NB_XPORT_COUNT 10 BAR_XFER_BUF_SIZE 31 # Info...显示全部
onconfig的下半部分
# Backup/Restore variables
BAR_ACT_LOG     /tmp/bar_act.log
BAR_DEBUG_LOG   /tmp/bat_dbug.log
BAR_MAX_BACKUP  0
BAR_RETRY       1
BAR_NB_XPORT_COUNT 10
BAR_XFER_BUF_SIZE 31

# Informix Storage Manager variables
ISM_DATA_POOL   ISMData         # If the data pool name is changed, be sure to
                                                        # update $INFORMIXDIR/bin/onbar.  Change to
                                                        # ism_catalog -create_bootstrap -pool 
ISM_LOG_POOL    ISMLogs

# Read Ahead Variables
RA_PAGES        16              # Number of pages to attempt to read ahead
RA_THRESHOLD    6               # Number of pages left before next group

# DBSPACETEMP:
# Dynamic Server equivalent of DBTEMP for SE. This is the list of dbspaces
# that the Dynamic Server SQL Engine will use to create temp tables etc.
# If specified it must be a colon separated list of dbspaces that exist
# when the Dynamic Server system is brought online.  If not specified, or if
# all dbspaces specified are invalid, various ad hoc queries will create
# temporary files in /tmp instead.

DBSPACETEMP     tempdbs1,tempdbs2,tempdbs3,tempdbs4,tempdbs5,tempdbs6
# Default temp dbspaces

# DUMP*:
# The following parameters control the type of diagnostics information which
# is preserved when an unanticipated error condition (assertion failure) occurs
# during Dynamic Server operations.
# For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No.

DUMPDIR         /home/informix/ifxdmp # Preserve diagnostics in this directory
DUMPSHMEM       0               # Dump a copy of shared memory
DUMPGCORE       0               # Dump a core image using 'gcore'
DUMPCORE        0               # Dump a core image (Warning:this aborts Dynamic Server)
DUMPCNT         1               # Number of shared memory or gcore dumps for
                                                        # a single user's session

FILLFACTOR      90              # Fill factor for building indexes

# method for Dynamic Server to use when determining current time
USEOSTIME       1               # 0: use internal time(fast), 1: get time from OS(slow)

# Parallel Database Queries (pdq)
MAX_PDQPRIORITY 100             # Maximum allowed pdqpriority
DS_MAX_QUERIES  4               # Maximum number of decision support queries
DS_TOTAL_MEMORY 80000           # Decision support memory (Kbytes)
DS_MAX_SCANS    1048576         # Maximum number of decision support scans
DATASKIP        off             # List of dbspaces to skip

# OPTCOMPIND
# 0 => Nested loop joins will be preferred (where
#      possible) over sortmerge joins and hash joins.
# 1 => If the transaction isolation mode is not
#      "repeatable read", optimizer behaves as in (2)
#      below.  Otherwise it behaves as in (0) above.
# 2 => Use costs regardless of the transaction isolation
#      mode.  Nested loop joins are not necessarily
#      preferred.  Optimizer bases its decision purely
#      on costs.
OPTCOMPIND      0               # To hint the optimizer

ONDBSPACEDOWN   0               # Dbspace down option: 0 = CONTINUE, 1 = ABORT, 2 = WAIT
LBU_PRESERVE    1               # Preserve last log for log backup
#LBU_PRESERVE    0               # Preserve last log for log backup
OPCACHEMAX      128             # Maximum optical cache size (Kbytes)

# HETERO_COMMIT (Gateway participation in distributed transactions)
# 1 => Heterogeneous Commit is enabled
# 0 (or any other value) => Heterogeneous Commit is disabled
HETERO_COMMIT   0

# Optimization goal: -1 = ALL_ROWS(Default), 0 = FIRST_ROWS
OPT_GOAL        -1

# Optimizer DIRECTIVES ON (1/Default) or OFF (0)
DIRECTIVES      1

# Status of restartable restore
RESTARTABLE_RESTORE off

# ccflags for backup performance for UD3
CCFLAGS         0x400000
收起
微电子/半导体 · 2013-10-04
浏览1326

提问者

jjxlxx
数据库管理员HJTC

相关文章

问题状态

  • 发布时间:2013-10-04
  • 关注会员:0 人
  • 问题浏览:5689
  • 最近回答:2013-10-10
  • X社区推广