zoukankan      html  css  js  c++  java
  • SQL0668N Operation not allowed for reason code "3" on table "TEST". SQLSTATE=57016

    问题描述:

    查询,操作表都报如下错误

    SQL0668N  Operation not allowed for reason code "3" on table "TEST".  SQLSTATE=57016

    操作步骤:

    第一:执行reorg解锁表,出现以下错误。

    [test@TEST-DB1 ~]$ db2 "reorg table test"
    SQL0668N Operation not allowed for reason code "3" on table "test". 
    SQLSTATE=57016

    第二:Load空文件对表进行terminate,出现以下错误。

    [test@TEST-DB1 ~]$ db2 load from / of del terminate into test
    
    Agent Type Node SQL Code Result
    ______________________________________________________________________________
    LOAD 001 +00000000 Success.
    ______________________________________________________________________________
    LOAD 002 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 003 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 004 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 005 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 006 +00000000 Success.
    ______________________________________________________________________________
    LOAD 007 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 008 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 009 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 010 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 011 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 012 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 013 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 014 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 015 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    LOAD 016 -00027902 Init error. Table unchanged.
    ______________________________________________________________________________
    RESULTS: 2 of 16 LOADs completed successfully.
    ______________________________________________________________________________
    
    Summary of LOAD Agents:
    Number of rows read = 0
    Number of rows skipped = 0
    Number of rows loaded = 0
    Number of rows rejected = 0
    Number of rows deleted = 0
    Number of rows committed = 0
    
    SQL27902N LOAD RESTART/TERMINATE is not allowed on a table that is not in 
    LOAD PENDING state.

    一般上面两步基本能解决表无法操作问题,不过也有的跟这次一样无法完成,

    分析可能是部分分区没有进行terminate或者load时被强制杀了

    第三:查询分区表状态

    [test@TEST-DB1 ~]$ db2 -x "SELECT DBPARTITIONNUM FROM TABLE(SYSPROC.ADMIN_GET_TAB_INFO('TEST','TEST')) AS T where load_status='PENDING' "

    挨个对上面查询出的分区号进行terminate处理

    [test@TEST-DB1 ~]$db2 load from /dev/null of del terminate into TEST.TEST  partitioned db config OUTPUT_DBPARTNUMS('分区号')

    执行完成!

  • 相关阅读:
    和时间做朋友:你一定要学的高效时间管理术
    助推:如何做出有关健康、财富与幸福的最佳决策(2017年诺贝尔经济学奖获得者理查德·泰勒作品)
    看透 : 解密身体语言隐藏的密码
    成为独角兽:海盗、梦想家、创新者如何开创并主宰新品类
    极简法则:从苹果到优步的深层简化工具
    高效15法则:谷歌、苹果都在用的深度工作发
    成功与运气:好运与精英社会的神话
    2星|《成长企业的法则》:尝试总结成功企业的模式,但是洞察力不够。
    3星|《OKR:源于英特热和谷歌的目标管理利器》:OKR原理、实施手册、实施过的公司的访谈
    gedit如何使用代码片段
  • 原文地址:https://www.cnblogs.com/yangsy/p/terminate.html
Copyright © 2011-2022 走看看