免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 2116 | 回复: 13
打印 上一主题 下一主题

请教数据库性能问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-15 10:22 |只看该作者 |倒序浏览
各位大虾,我原来有一台 windows NT+ informix 7.3.1 作为数据仓库服务器,觉得速度不够快,又新买一台更好的服务器,
安装 windows 2000 server + informix 9.3.0,但是我把原来的数据 dbexport 后, dbimport 到新的服务器,
但是发现运行的速度更慢了,原来一个procedure 运行要1个小时,现在要2天。
新的服务器 有 4 CPU + 4G 内存,informix 配置与原来的配置基本一样,
配置如下:
#**************************************************************************
#
#                           INFORMIX SOFTWARE, INC.
#
#  Title:        onconfig.std
#  Description: Informix Dynamic Server Configuration Parameters
#
#**************************************************************************

# Root Dbspace Configuration

ROOTNAME        rootdbs         # Root dbspace name
ROOTPATH        d:\IFMXDATA\ol_xib\rootdbs_dat.000
                                # Path for device containing root dbspace
ROOTOFFSET      0               # Offset of root dbspace into device (Kbytes)
ROOTSIZE        51200           # 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         logdbs          # Location (dbspace) of physical log
PHYSFILE        1000000         # Physical log file size (Kbytes)

# Logical Log Configuration

LOGFILES        58              # Number of logical log files
LOGSIZE         5000            # Logical log size (Kbytes)
LOG_BACKUP_MODE MANUAL          # Logical log backup mode (MANUAL, CONT)

# Diagnostics

MSGPATH         d:\Informix\ol_xib.log # System message log file path
CONSOLE         d:\Informix\conol_xib.log # System console message path
ALARMPROGRAM    d:\Informix\etc\log_full.bat # Alarm program path
TBLSPACE_STATS  1               # Maintain tblspace statistics


# System Diagnostic Script.
# SYSALARMPROGRAM - Full path of the system diagnostic script (e.g.
#                     c:\informix\etc\evidence.bat.) Set this parameter
#                   if you want a different Diagnostic Script than
#                   {INFORMIXDIR}\etc\evidence.bat, which is default.

# System Archive Tape Device

#TAPEDEV                \\.\TAPE0        # Tape device path       
TAPEDEV         nul            
TAPEBLK         16              # Tape block size (Kbytes)
TAPESIZE        209715200       # Maximum amount of data to put on tape (Kbytes)

# Log Archive Tape Device

LTAPEDEV        NUL             # Log tape device path
LTAPEBLK        16              # Log tape block size (Kbytes)
LTAPESIZE       10240           # Max amount of data to put on log tape (Kbytes)

# Optical

STAGEBLOB                       # Informix Dynamic Server/Optical staging area
OPTICAL_LIB_PATH                 # Location of Optical Subsystem driver DLL

# System Configuration

SERVERNUM       0               # Unique id corresponding to a server instance
DBSERVERNAME    ol_xib          # Name of default Dynamic Server
DBSERVERALIASES                 # List of alternate dbservernames
NETTYPE         soctcp,1,,NET   # Override sqlhosts nettype parameters
DEADLOCK_TIMEOUT 10              # Max time to wait of lock in distributed env.
RESIDENT        0               # Forced residency flag (Yes = 1, No = 0)

MULTIPROCESSOR  1               # 0 for single-processor, 1 for multi-processor
NUMCPUVPS       3               # 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           200000          # Maximum number of locks
BUFFERS         200000          # Maximum number of shared buffers
NUMAIOVPS       1               # Number of IO vps
PHYSBUFF        512             # Physical log buffer size (Kbytes)
LOGBUFF         512             # Logical log buffer size (Kbytes)
CLEANERS        3               # Number of buffer cleaner processes
SHMBASE         0xc000000         # Shared memory base address
SHMVIRTSIZE     64000           # initial virtual shared memory segment size
SHMADD          8192            # Size of new shared memory segments (Kbytes)
SHMTOTAL        0               # Total shared memory (Kbytes). 0=>;unlimited
CKPTINTVL       900             # Check point interval (in sec)
LRUS            8               # Number of LRU queues
LRU_MAX_DIRTY   60              # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY   50              # LRU percent dirty end cleaning limit
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 1               # Default number of online worker threads

# Data Replication Variables
DRINTERVAL      30              # DR max time between DR buffer flushes (in sec)
DRTIMEOUT       30              # DR network timeout (in sec)
DRLOSTFOUND     \tmp            # DR lost+found file path

# CDR Variables
CDR_EVALTHREADS 1,2             # evaluator threads (per-cpu-vp,additional)
CDR_DSLOCKWAIT  5               # DS lockwait timeout (seconds)
CDR_QUEUEMEM    4096            # Maximum memory for any CDR queue (Kbytes)
CDR_QHDR_DBSPACE                 # CDR queue dbspace (default same as catalog)
CDR_QDATA_SBSPACE                 # CDR queue smart blob space
CDR_QDATA_SBFLAGS 2               # Log/no-log (default no log)
CDR_NIFCOMPRESS 0               # Link level compression (-1 never, 0 none, 9 max)

# Backup/Restore variables
BAR_ACT_LOG     d:\Informix\bar_ol_xib.log #Path of log file for onbar.exe
BAR_MAX_BACKUP  1               
BAR_RETRY       1               
BAR_NB_XPORT_COUNT 10              
BAR_XFER_BUF_SIZE 15              
BAR_BSALIB_PATH d:\ISM\2.20\bin\libbsa.dll # Location of ISM XBSA DLL

RESTARTABLE_RESTORE on              #To support restartable restore..values on/off

# Informix Storage Manager variables
ISM_DATA_POOL   ISMData         
ISM_LOG_POOL    ISMLogs         

# Read Ahead Variables
RA_PAGES        8               # Number of pages to attempt to read ahead
RA_THRESHOLD    4               # 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     tempdbs         # 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         d:\tmp          # Preserve diagnostics in this directory
DUMPSHMEM       1               # Dump a copy of shared memory
DUMPGCORE       0               # Dump a core image using 'gcore'
DUMPCORE        0               # Dump a core image (Warning:this aborts Dynamic
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       0               # 0: use internal time(fast), 1: get time from OS(slow)

# Parallel Database Queries (pdq)
MAX_PDQPRIORITY 100             # Maximum allowed pdqpriority
DS_MAX_QUERIES  32              # Maximum number of decision support queries
DS_TOTAL_MEMORY 4096            # 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      2               # To hint the optimizer

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

ONDBSPACEDOWN   2               # Dbspace down option: 0 = CONTINUE, 1 = ABORT, 2 = WAIT
OPCACHEMAX      0               # 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               

SBSPACENAME     sbspace         # Default sbspace

BLOCKTIMEOUT    3600            # Default timeout for system block

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

ALLOW_NEWLINE   0               # embedded newlines(Yes = 1, No = 0 or anything but 1)
SYSSBSPACENAME  sbspace         # Default System sbspace

#
# The following are default settings for enabling Java in the database.
#
#VPCLASS        jvp,num=1  # Number of JVPs to start with
JVPJAVAHOME     d:\Informix\extend\krakatoa\jre
                                # JDK installation root directory
JVPHOME         d:\Informix\extend\krakatoa # Krakatoa installation directory
JVPPROPFILE     d:\Informix\extend\krakatoa\.jvpprops_ol_xib # JVP property file
JDKVERSION      1.3             # JDK version supported by this server

# The path to the JRE libraries relative to JVPJAVAHOME
JVPJAVALIB      \bin\           
JVPJAVAVM       hpi;server;verify;java;net;zip;jpeg
# Classpath to use upon Java VM start-up (use _g version for debugging)
JVPCLASSPATH    d:\Informix\extend\krakatoa\krakatoa.jar;d:\Informix\extend\krakatoa\jdbc.jar

JVPLOGFILE      d:\Informix\extend\krakatoa/jvp.log # JVP log file.

onstat -p 显示如下:
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
15581038 15542294 558937370 97.21   671271   1448475  19529612 96.56

isamtot  open     start    read     write    rewrite  delete   commit   rollbk
123997558 453609   3881103  83966991 3577960  1848918  1064711  4933     2

gp_read  gp_write gp_rewrt gp_del   gp_alloc gp_free  gp_curs
2        0        0        0        0        0        2

ovlock   ovuserthread ovbuff   usercpu  syscpu   numckpts flushes
0        0            0        8398.23  1283.38  13       166

bufwaits lokwaits lockreqs deadlks  dltouts  ckpwaits compress seqscans
1799335  0        515170639 0        0        9        1418324  914553

ixda-RA  idx-RA   da-RA    RA-pgsused lchwaits
40018    494      14126775 14143954   1322670

请问,我需要改哪些配置,谢谢!

论坛徽章:
0
2 [报告]
发表于 2004-06-15 11:20 |只看该作者

请教数据库性能问题

onstat -p 显示如下:
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
15581038 15542294 558937370 97.21 671271 1448475 19529612 96.56

isamtot open start read write rewrite delete commit rollbk
123997558 453609 3881103 83966991 3577960 1848918 1064711 4933 2

gp_read gp_write gp_rewrt gp_del gp_alloc gp_free gp_curs
2 0 0 0 0 0 2

ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes
0 0 0 8398.23 1283.38 13 166

bufwaits lokwaits lockreqs deadlks dltouts ckpwaits compress seqscans
1799335 0 515170639 0 0 9 1418324 914553

ixda-RA idx-RA da-RA RA-pgsused lchwaits
40018 494 14126775 14143954 1322670


seqscans大了些,应用需要优化了。
bufwaits也不小,如果这个onstat -p的信息是重启后两天内输入的,或许需要增加一些buffer。

其他的还真不知道了,onstat -l帖出来看看。

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
3 [报告]
发表于 2004-06-15 12:10 |只看该作者

请教数据库性能问题

update statistics
可以建相应的索引

论坛徽章:
0
4 [报告]
发表于 2004-06-15 15:43 |只看该作者

请教数据库性能问题

已经做 update statistics medium 了,
索引都已经存在,和原来的机器一样,
oncheck -c DI 都没有问题
onstat -l 如下:
3fb6ea70 14       U-B----  192      1464b89     12500    12500   100.00
3fb6eaa8 15       U-B----  193      1467c5d     12500    12500   100.00
3fb6eae0 16       U-B---L  194      146ad31     12500    12500   100.00
3fb6eb18 17       U-B----  195      146de05     12500    12500   100.00
3fb6eb50 18       U-B----  196      1470ed9     12500    12500   100.00
3fb6eb88 19       U-B----  197      1473fad     12500    12500   100.00
3fb6ebc0 20       U-B----  198      1500003     12500    12500   100.00
3fb6ebf8 21       U-B----  199      15030d7     12500    12500   100.00
3fb6ec30 22       U-B----  200      15061ab     12500    12500   100.00
3fb6ec68 23       U-B----  201      150927f     12500    12500   100.00
3fb6eca0 24       U-B----  202      150c353     12500    12500   100.00
3fb6ecd8 25       U---C--  203      150f427     12500    11805    94.44
3fb6ed10 26       U-B----  146      15124fb     12500    12500   100.00
3fb6ed48 27       U-B----  147      15155cf     12500    12500   100.00
3fb6ed80 28       U-B----  148      15186a3     12500    12500   100.00
3fb6edb8 29       U-B----  149      151b777     12500    12500   100.00
3fb6edf0 30       U-B----  150      151e84b     12500    12500   100.00
3fb6ee28 31       U-B----  151      152191f     12500    12500   100.00
3fb6ee60 32       U-B----  152      15249f3     12500    12500   100.00
3fb6ee98 33       U-B----  153      1527ac7     12500    12500   100.00
3fb6eed0 34       U-B----  154      152ab9b     12500    12500   100.00
3fb6ef08 35       U-B----  155      152dc6f     12500    12500   100.00
3fb6ef40 36       U-B----  156      1530d43     12500    12500   100.00
3fb6ef78 37       U-B----  157      1533e17     12500    12500   100.00

谢谢帮助!

论坛徽章:
0
5 [报告]
发表于 2004-06-15 17:57 |只看该作者

请教数据库性能问题

原帖由 "qianzs" 发表:
已经做 update statistics medium 了,
索引都已经存在,和原来的机器一样,
oncheck -c DI 都没有问题
onstat -l 如下:
3fb6ea70 14       U-B----  192      1464b89     12500    12500   100.00
3fb6eaa8 ..........


有一个疑问:就凭这些log,你的procedure作两天居然没有出长事务?pf啊。
另外,你的onstat -l输出就这些吗?物理日志的部分呢?这些对于性能的分析会有用些。

论坛徽章:
0
6 [报告]
发表于 2004-06-15 18:52 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
7 [报告]
发表于 2004-06-15 21:30 |只看该作者

请教数据库性能问题

让我来猜——不关informix配置的事。
armStrong 该用户已被删除
8 [报告]
发表于 2004-06-16 10:21 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
9 [报告]
发表于 2004-06-16 11:34 |只看该作者

请教数据库性能问题

onstat -l 输出如下:
Informix Dynamic Server Version 9.30.TC1     -- On-Line -- Up 00:06:52 -- 909120
Kbytes

Physical Logging
Buffer bufused  bufsize  numpages numwrits pages/io
  P-2  23       128      72599    567      128.04
      phybegin physize  phypos   phyused  %used
      1400035  250000   133560   72599    29.04

Logical Logging
Buffer bufused  bufsize  numrecs  numpages numwrits recs/pages pages/io
  L-2  1        128      2119752  88477    1018     24.0       86.9
        Subsystem    numrecs  Log Space used
        OLDRSAM      2119752  358857928


假如是系统的问题,该怎么查,我用的是 windows 2000 server ,
系统管理员认为没问题。

论坛徽章:
0
10 [报告]
发表于 2004-06-16 12:20 |只看该作者

请教数据库性能问题

buffer太小了说,
才运行没多久bufwaits就上百万。
听萎哥的话,加buffer。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP