免费注册 查看新帖 |

Chinaunix

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

INFORMIX创建索引报错,大家帮忙看看,小弟初学,跪求帮助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-11 11:14 |只看该作者 |倒序浏览
在执行INFORMIX9.4版本的创建索引脚本的时候报以下错误:




Index created.


  242: Could not open database table (gaps.ywty_msgfile).

  113: ISAM error:  the file is locked.
Error in line 2
Near character position 30





索引创建序列如下,第一个索引创建成功,第二报错误:



create unique index "gaps".msgfilesy1 on "gaps".ywty_msgfile (ywlx,
    ptxym,xymxz) using btree  in datadbs ;
create index "gaps".msgfilesy2 on "gaps".ywty_msgfile (ywlx,xymxz,
    xym) using btree  in datadbs ;



表结构如下:




{ TABLE "gaps".ywty_msgfile row size = 83 number of columns = 6 index size = 36 }

create table "gaps".ywty_msgfile
  (
    ywlx char(3)
        default '' not null ,
    ptxym char(9)
        default '' not null ,
    xymxz char(1)
        default '' not null ,
    xym char(9)
        default '' not null ,
    errtxt char(60)
        default '' not null ,
    jlzt char(1)
        default '' not null
  )  extent size 32 next size 32 lock mode page;
revoke all on "gaps".ywty_msgfile from "public";


论坛徽章:
1
15-16赛季CBA联赛之江苏
日期:2017-04-05 11:23:15
2 [报告]
发表于 2012-05-11 11:19 |只看该作者
表被锁了,过会再试!

论坛徽章:
0
3 [报告]
发表于 2012-05-11 11:20 |只看该作者
本帖最后由 yankaga 于 2012-05-11 11:28 编辑

我只是想知道为什么被锁住了,因为我连服务都重启过了,还是被锁,新建的数据库及服务,脚本在其他的服务器上都是没问题的~

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
4 [报告]
发表于 2012-05-11 12:51 |只看该作者
输出onstat -k 看一下~

论坛徽章:
0
5 [报告]
发表于 2012-05-11 12:54 |只看该作者
本帖最后由 yankaga 于 2012-05-11 13:01 编辑

回复 4# liaosnet

之前我看过了,没有锁的存在,但是还是会被锁住;

之前我去看文档说,9.4对表建索引是先把表锁起来的,是不是因为我对一张表同时建两个索引的关系?

但是个人觉得两个索引是顺序建的,对单表建一个索引的话没问题的,但是放一起是有问题的~




$ onstat -k

IBM Informix Dynamic Server Version 9.40.FC4     -- On-Line (Prim) -- Up 19:14:03 -- 10426464 Kbytes

Locks
address          wtlist           owner            lklist           type     tblsnum  rowid    key#/bsiz
0 active, 5000000 total, 524288 hash buckets, 0 lock table overflows





   

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
6 [报告]
发表于 2012-05-11 13:04 |只看该作者
回复 5# yankaga


    要的要建索引的时候的onstat -k


你这两条语句下去,第一个索引建成功了吗?


要不你重写手写下这2条建表语句,再执行一次试下。。

论坛徽章:
0
7 [报告]
发表于 2012-05-11 13:08 |只看该作者
本帖最后由 yankaga 于 2012-05-11 13:09 编辑
liaosnet 发表于 2012-05-11 13:04
回复 5# yankaga



之前有显示,第一个索引是建成功的,第二个就失败了~~~

第二条单独拿出来在DBACCESS下执行也是OK的~~~

放在一个脚本里面就会执行失败

刚才再次执行了下 ,onstat -k的结果和之前给你看到的是一致的~~~~

论坛徽章:
0
8 [报告]
发表于 2012-05-11 13:15 |只看该作者
刚才尝试将两个索引分成单独的两个文件执行,但是报错依然

第一个执行的时候成功了,但是对第二个执行的时候还是失败了~~~~

论坛徽章:
0
9 [报告]
发表于 2012-05-11 14:26 |只看该作者
贴上onconfig文件





#**************************************************************************
#
#  Licensed Material - Property Of IBM
#
#  "Restricted Materials of IBM"
#
#  IBM Informix Dynamic Server
#  (c) Copyright IBM Corporation 1996, 2004 All rights reserved.
#
#  Title:        onconfig.std
#  Description: IBM Informix Dynamic Server Configuration Parameters
#
#**************************************************************************

# Root Dbspace Configuration

ROOTNAME        rootdbs                # Root dbspace name
ROOTPATH        /informix/dbs/rootdbs  # Path for device containing root dbspace
ROOTOFFSET        0                # Offset of root dbspace into device (Kbytes)
ROOTSIZE        4096000                # 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        32767000        # Physical log file size (Kbytes)

# Logical Log Configuration

LOGFILES        58              # Number of logical log files
LOGSIZE                102400                # Logical log size (Kbytes)

# Diagnostics

MSGPATH                /informix/online.log # System message log file path
CONSOLE                /dev/console        # System console message path

# To automatically backup logical logs, edit alarmprogram.sh and set
# BACKUPLOGS=Y
ALARMPROGRAM    /informix/etc/no_log.sh # Alarm program path
TBLSPACE_STATS  1                # Maintain tblspace statistics

# System Archive Tape Device

TAPEDEV                /dbbkup/0lvel_bak/archive0        # Tape device path       
TAPEBLK                32                # Tape block size (Kbytes)
TAPESIZE        2048000                # Maximum amount of data to put on tape (Kbytes)

# Log Archive Tape Device

LTAPEDEV        /dbbkup/logic_bak/logic_arc        # Log tape device path
LTAPEBLK        32                # Log tape block size (Kbytes)
LTAPESIZE        0                # Max amount of data to put on log tape (Kbytes)

# Optical

STAGEBLOB                       # Informix Dynamic Server staging area

# System Configuration

SERVERNUM        0                # Unique id corresponding to a OnLine instance
DBSERVERNAME        bxdxsv                # Name of default database server
DBSERVERALIASES                        # List of alternate dbservernames
NETTYPE                soctcp,7,256,NET                # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT        60        # 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        7                # 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                5000000                # Maximum number of locks
BUFFERS                400000                # Maximum number of shared buffers
NUMAIOVPS        2                  # Number of IO vps
PHYSBUFF        256                # Physical log buffer size (Kbytes)
LOGBUFF                256                # Logical log buffer size (Kbytes)
CLEANERS        15               # Number of buffer cleaner processes
SHMBASE         0x700000010000000        # Shared memory base address
SHMVIRTSIZE        8192000                # initial virtual shared memory segment size
SHMADD          1024000            # Size of new shared memory segments (Kbytes)
SHMTOTAL        0               # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL       300             # Check point interval (in sec)
LRUS                15                # 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        300                # Transaction timeout (in sec)
STACKSIZE       128       

# Dynamic Logging
# DYNAMIC_LOGS:
#    2 : server automatically add a new logical log when necessary. (ON)
#    1 : notify DBA to add new logical logs when necessary. (ON)
#    0 : cannot add logical log on the fly. (OFF)
#
# When dynamic logging is on, we can have higher values for LTXHWM/LTXEHWM,
# because the server can add new logical logs during long transaction rollback.
# However, to limit the number of new logical logs being added, LTXHWM/LTXEHWM
# can be set to smaller values.
#
# If dynamic logging is off, LTXHWM/LTXEHWM need to be set to smaller values
# to avoid long transaction rollback hanging the server due to lack of logical
# log space, i.e. 50/60 or lower.

DYNAMIC_LOGS    2
LTXHWM          70
LTXEHWM         80

# System Page Size
# BUFFSIZE - OnLine no longer supports this configuration parameter.
#            To determine the page size used by OnLine 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        /informix/etc/dr.lostfound        # 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 amount of memory for any CDR queue (Kbytes)
CDR_NIFCOMPRESS 0        # Link level compression (-1 never, 0 none, 9 max)
CDR_SERIAL                0        # Serial Column Sequence
CDR_DBSPACE                        # dbspace for syscdr database
CDR_QHDR_DBSPACE    # CDR queue dbspace (default same as catalog)
CDR_QDATA_SBSPACE   # List of CDR queue smart blob spaces

# CDR_MAX_DYNAMIC_LOGS
# -1 => unlimited
#  0 => disable dynamic log addition
# >0 => limit the no. of dynamic log additions with the specified value.
# Max dynamic log requests that CDR can make within one server session.

CDR_MAX_DYNAMIC_LOGS    0  # Dynamic log addition disabled by default

# Backup/Restore variables
BAR_ACT_LOG   /usr/informix/bar_act.log  # ON-Bar Log file - not in /tmp please
BAR_DEBUG_LOG /usr/informix/bar_dbug.log # ON-Bar Debug Log - not in /tmp please
BAR_MAX_BACKUP        0
BAR_RETRY        1
BAR_NB_XPORT_COUNT 20
BAR_XFER_BUF_SIZE 15
RESTARTABLE_RESTORE        ON
BAR_PROGRESS_FREQ        0

# 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:
# OnLine equivalent of DBTEMP for SE. This is the list of dbspaces
# that the OnLine SQL Engine will use to create temp tables etc.
# If specified it must be a colon separated list of dbspaces that exist
# when the OnLine 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        tmpdbs                # 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 OnLine operations.  
# For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No.

DUMPDIR                /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 OnLine)
DUMPCNT                1                # Number of shared memory or gcore dumps for
                                # a single user's session

FILLFACTOR        90                # Fill factor for building indexes

# method for OnLine 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  2       # Maximum number of decision support queries
DS_TOTAL_MEMORY  256      # Decision support memory (Kbytes)
DS_MAX_SCANS 1048576   # Maximum number of decision support scans       
DATASKIP        off      
# 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

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            # Default smartblob space name - this is where blobs
                       # go if no sbspace is specified when the smartblob is
                       # created. It is also used by some datablades as
                       # the location to put their smartblobs.
SYSSBSPACENAME         # Default smartblob space for use by the Informix
                       # Server. This is used primarily for Informix Server
                       # system statistics collection.

BLOCKTIMEOUT    3600   # Default timeout for system block
SYSALARMPROGRAM    /informix/etc/evidence.sh    # System Alarm program path

# 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)

#
# The following are default settings for enabling Java in the database.
# Replace all occurrences of /usr/informix with the value of $INFORMIXDIR.

#VPCLASS        jvp,num=1       # Number of JVPs to start with

JVPJAVAHOME     /informix/extend/krakatoa/jre       # JRE installation root directory
JVPHOME         /informix/extend/krakatoa # Krakatoa installation directory

JVPPROPFILE     /informix/extend/krakatoa/.jvpprops # JVP property file
JVPLOGFILE      /informix/jvp.log   # JVP log file.

JDKVERSION    1.3              # JDK version supported by this server

# The path to the JRE libraries relative to JVPJAVAHOME
JVPJAVALIB    /bin

# The JRE libraries to use for the Java VM

JVPJAVAVM     hpi:jvm:java:net:zip:jpeg

# use JVPARGS to change Java VM configuration
#To display jni call
#JVPARGS        -verbose:jni

# Classpath to use upon Java VM start-up (use _g version for debugging)

#JVPCLASSPATH  /usr/informix/extend/krakatoa/krakatoa_g.jar:/usr/informix/extend/krakatoa/jdbc_g.jar
JVPCLASSPATH  /usr/informix/extend/krakatoa/krakatoa.jar:/usr/informix/extend/krakatoa/jdbc.jar



论坛徽章:
0
10 [报告]
发表于 2012-05-11 14:27 |只看该作者
回复 6# liaosnet

贴上ONCONFIG文件

大神帮忙
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP