DB2建表時報錯:DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727


失敗原因:


java.lang.RuntimeException: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-286, SQLSTATE=42727, SQLERRMC=16384;DB2ADMIN, DRIVER=3.69.49

經查證,屬於DB2表空間不足導致的,連接到目標數據庫下執行下列語句


1、創建一個大型表空間

--首先創建一個頁大小為32k的緩沖池

 CREATE BUFFERPOOL buf1 IMMEDIATE  SIZE 250 NUMBLOCKPAGES 108 BLOCKSIZE 32 PAGESIZE 32 K ;


db2 => CREATE BUFFERPOOL buf1 IMMEDIATE  SIZE 250 NUMBLOCKPAGES 108 BLOCKSIZE 32 PAGESIZE 32K

DB20000I  SQL 命令成功完成。


--然後使用這個緩沖池

    CREATE  LARGE  TABLESPACE ts2 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 32 OVERHEAD 10.5 PREFETCHSIZE 32 TRANSFERRATE 0.14 BUFFERPOOL  buf1 ;


db2 => CREATE  LARGE  TABLESPACE ts2 PAGESIZE 32 K  MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 32 OVERHEAD 10.5 PREFETCHSIZE 32 TRANSFERRATE 0.14 BUFFERPOOL  buf1

DB20000I  SQL 命令成功完成。



2、修改事務日志大小

    update db cfg using LOGFILSIZ 10240 --日志文件大小

    update db cfg using LOGPRIMARY 100 --主日志文件個數

    update db cfg using LOGSECOND 100 --輔助日志文件的個數


3、註意修改完成後需要重啟DB2服務才可生效。

0 個評論

要回覆文章請先登錄註冊