Category Database

[DB2] ตัวอย่างการใช้งาน Stored Procedure DELETE_MANY_ROWS

IBM DB2

หลังจากบทความเมื่อหลายปีก่อนได้นำเสนอวิธีการลบข้อมูลเยอะๆบน DB2 แล้วไม่ให้เกิดปัญหา Transaction Log Full ไปแล้ว แต่ผมดันลืมแนบตัวอย่าวการใช้ไป คราวนี้ผมมาใส่ตัวอย่างการใช้งานครับ ถ้ามองเป็น SQL SELECT มันจะเทียบเท่ากับ

[DB2] ลอง Replace Query มาเป็น Stored Procedure กันครับ

IBM DB2

เนื่องจากปัญหาในช่วงนี้ตัว Framework ที่วางกันไว้มันเกินข้อจำกัดไปแล้วครับ การเอา SQL ไปยัดลงเป็น String ในฐานข้อมูลเนี่ยย นอกจากมีข้อจำกัดในการทำ HADR แล้ว ถ้า Requirement เปลี่ยนไปจน Query มันมีขนาดเกินจากที่กำหนดไว้นี่แย่แน่เลยครับ หนทางการแก้ไขมีหลายแบบครับ มาลองไล่วิธีที่เคยทำกันก่อนครับ สำหรับใน Blog นี้ของเอาวิธีที่ 3 ครับ เนื่องจากข้อมูลในเนตมันน้อยมากครับ และผมอยากจะแก้ Query เดิมให้น้อยที่สุดครับ สรุป

[MSSQL] สรุปงาน SQL Server Community Thailand Meeting #10

หลังจากห่างหายไปนานกับงานมาฟังความรู้ Idea ดีๆแบบนี้นะครับ กลับมาคราวนี้อ้าวครั้งที่ 10 แล้วเหรอ ผ่านไปไวเหมือนโกหกครับ มาดู Blog เก่าๆได้ที่นี่ครับ มาดูรายละเอียดของแต่ละหัวข้อกันเลยครับ ลุยยยยยยยยยยยยยยยยยย Data Classification and Vulnerability Assessment Speaker Khemika Pattaranipit – Azure SQL DB : Data Classification and Vulnerability Assessment – Transparent Data File Encryption (TDE) (SQL Server 2008 ++)…

[DB2] Query ดูกันว่าในฐานข้อมูลของเรามี Index กี่อัน

IBM DB2

พอดีช่วงหลังๆ DB ถูกใช้งานจากคนหลายคน และ ปรับ Performance โดยหลายๆคน แต่บางที Index อาจจะขัดแย้งกันก็ได้ ครั้นจะไปกดไล่ใน DB ที่จะ Table มันก็ไม่ไหวนะ มา Query ดูกันดีกว่า มาดูตัวอย่างกันได้เลยครับ ตามรูปเลย ผมหา Index ตาม Pattern ที่ได้ตกลงกันไว้ในทีมครับ

[DB2] สร้าง VM สำหรับ DB2 11.1 Fixed Pack 4 บน Ubuntu 18.04.2

IBM DB2

หลังจากโน้มน้าวทีมให้เปลี่ยนมาใช้ VM ที่เป็น Linux ได้ หลังจากใช้ Windows มานานนนนนแสนนานครับ โดยอันนี้ผมจะลงแบบ Native นะครับ เพราะถ้าใช้ Docker มันจะเปลืองพื้นที่มากเปิดไป Docker Image ของ DB2 Express C 11.1 กินเนื้อที่ประมาณเกือบๆ 4 GB และขึ้น Database ได้แค่ 1 Database เองด้วย สำหรับขั้นตอนการทำ VM ก็ตาม List นี้เลยครับ Prepare Host Install DB2 11.1.4.4…

[DB2] SQL30082N Security processing failed with reason “1” (“PASSWORD EXPIRED”). SQLSTATE=08001

IBM DB2

ใช้ DB2 บน Docker มา 7-8 เดือน วันนี้พี่ในทีมบอกว่า เฮ้ยยย Database เป็นอะไร Login เข้าไม่ได้ครับ โดย Error Message คือ SQL30082N Security processing failed with reason “1” (“PASSWORD EXPIRED”).SQLSTATE=08001 ก่อนอื่นมาดูกันก่อนครับ มันเป็นที่ DB2 หรือป่าว ? คำตอบไม่เกี่ยวกับ DB2 เลยครับ เพราะ ตัว DB2 ไม่ได้จดจำ Username หรือ…

[DB] DBeaver – เครื่องมือที่ช่วยให้การจัดการ Database เป็นเรื่องง่ายๆ

หลังจากเข้าไปดูปัญหาของหลายๆทีม พบว่า Tools ตัวเก่าอย่าง WinSQL มันเก่ามาก น่าจะ 15 ปี และ ถึงว่าเป็น Software ที่ใช้คุ้มค่าเกินราคาจริงๆครับ แต่ต้องซูฮกคนออกแบบด้วยทั้งตัว Protocal – ODBC และภาษา SQL จึงทำให้ Tools ตัวนี้ตายยากมากๆครับ แม้ว่าจะมีปัญหาจุกจิมากครับ ทั้งปัญหาการเอาผลลัพธ์ที่ได้จาการ Query ไปใช้ต่อ หรือการที่ User ต้องเชี่ยวมากจำ Column ได้แม่นครับ แต่หลังจากนี้ปัญหาจะหมดไปด้วยเจ้า DBeaver ครับ โดยเวอร์ชัน Community Edition ผมได้ลองใช้ และแนะนำในองค์กรครับ มันเพียงพอกับการใช้งานทั่วไป เช่น…

[DB2] Run Script แบบ Check ก่อน ถ้าผ่านไปต่อ

IBM DB2

จริงๆ Blog นี้เกิดจากการได้เป็นผู้โชคดีไปช่วยน้องในทีม Run Script สำหรับ UAT ครับ โดยที่น้องคนนั้นก็ไม่ค่อยมั่นใจกับ Script ครับ เมื่อทดสอบที่ Site ลูกค้าจริงแล้วพบว่า อ้าวเฮ้ยยยย ไม่เหมือนที่คุยกันไว้นี่นาที่บอกว่า Migrate ครบ แต่อ้าวข้อมูลหายไปอ้าวเฮ้ย อย่ากลืนน้ำลายตัวเองดีกว่าเสียเวลาร้องขออะไรสุดท้ายข้อมูลก็ต้องกลับคืน (มันของลูกค้า ไม่ได้ข้อมูลครบคงหัวขาด) ทำไมถึงเป็นเช่นนั้นหละ ทำไม Script ที่มีการซักซ้อมมาอย่างดีถึงเกิดปัญหาตอนใช้จริง มาดูโครงสร้าง Script กันดีกว่าครับ โดยได้ทำเป็น Batch File ชุดนึงครับ (ไฟล์ migrate.bat ) ข้างในมีเนื้อหาประมาณนี้ครับ แต่พอลองทดสอบทำงานจริง อ้าวววววววว Schema ไม่ตรงกัน…

[DB2] เมื่อ Path ก็มี แต่ทำไมยัง สร้าง Database ไม่ได้ มีแต่ SQL1052N The database path path does not exist.

IBM DB2

วันนี้ผมได้ไปช่วยน้องในทีมสำหรับอีก Project แต่ก็เจอปัญหามากมายเลยครับ ทั้งเรื่องขึ้น Database ที่ติดปัญหาขนาดของ Table ที่ Field เยอะมากจน Page Size 4K ไม่พอ ทำให้ต้อง DROP DB แล้ว Import Data เข้าไปใหม่ ซึ่งปรากฏว่า Drive C ที่มันเหลือน้อยมากครับ 25 GB แต่ Database ที่ต้องการเอาเข้าไป มันตั้ง 80 GB ทางเลือกเดียวตอนนี้ คือ ต้องไปสร้าง Database ที่ Drive อื่นครับ…

[MSSQL] มาดูขนาดของ Database และ Table กัล

Microsoft SQL Server

หลังจากช่วยได้ นอกจากเป็น Dev แล้ว อีกอย่างที่ Dev ควรรู้ด้วย คือ ตัว Database ครับ วันนี้ผมขอแปะ Query สำหรับดูขนาดของ Database ไฟล์ .mdf กับ .ldf โดยสามารถดูข้อมูลจากได้ Query ดังนี้ัครับ Database File Size ผลลัพธ์ที่ได้ Table Size ประโยชน์ แถม ถ้าเราต้องการจะลด Database Size หลังจากรู้ Size Database แล้ว ทั้งในาส่วน mdf /…