[DB2] Query ตรวจสอบการ Set Automatic Storage ของ Table Space

เมื่อวานได้ลองขึ้น DB สุดท้ายแล้ว พอทดสอบ Run App มันแจ้ง Error นี้ครับ

SQL0289N Unable to allocate new pages in table space "USERSPACE1". SQLSTATE=57011

สาเหตุ

DB2 มันจัดสรรพื้นที่ให้ไม่ได้ แต่การที่เราจะแก้อะไร ควรจะดู Config เก่าก่อน

  • ได้มีการกำหนด Automatic Storage หรือ ยัง โดยเจ้า Automatic Storage เป็น Feature ที่ช่วยตรวจสอบพื้นที่ของ Table Space หรือ User Space ถ้ามันเต็ม ตัว DB2 ขยายพื้นที่ให้อัตโนมัติครับ)
  • พื้นที่ในที่จัดสรรไม่ให้มันไม่พอจริงๆครับ
  • และปัญหาอื่นๆครับ (ผมไม่เคยเจอ ถ้ามีเจอเพิ่มเติมจะมา Update ครับ)

สำหรับ Query ที่เอาไว้ตรวจสอบ Automatic Storage ของแต่ละ Table Space มีการกำหนด (YES หรือ NO) สามารถดูได้จาก Query ดังนี้

SELECT TBSP_NAME
     , CASE TBSP_USING_AUTO_STORAGE
          WHEN 1 THEN 'YES'
          ELSE 'NO'
       END AUTO_STORAGE
FROM TABLE (SYSPROC.MON_GET_TABLESPACE('',-1))

ผลลัพธ์จากการ Query นะครับ

ส่วนปัญหาที่แท้จริงในตอนต้น Blog เกิดจากไป Restore DB ผิดที่ครับ พื้นที่เลยไม่พอ T__T


Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts sent to your email.