[DB2] Backup DB2 offline/online and database logs

IBM DB2

จดไว้กันตายและกัน หลังๆไม่ค่อยได้เตะตัว DB2 แล้ว พอมาดูเคสอีกที เอ๋อแดรก เป็น Dev ที่สวมหลายหมวกแล้วมืนจริงๆ 555 เริ่มต้นด้วย BACKUP มันมี 2 แบบ Offline / Online แล้วที่นี้มันต่างกันยังไง ถ้าดูสถานะ Log ใช้ db2pd -db INVSDB -logs Circular logging & Archive logging  Log ในที่นี้หมายถึงพวก Transaction Logs นะ Recap เรื่อง Log กันก่อน จะมีตัว Log มี 3 States ใน DB ทั่วไปมี Log 2 แบบเหมือนกันนะ Circular log กับ Archive log โดยที่ 💾 Circular logging  Circular logging ให้ DB มันวน transaction log ไปเรื่อยๆ Note: ถ้าเต็มเราจะเจอ [DB2] SQL0964C Transaction log for database is full Property Value LOGARCHMETH1 OFF LOGARCHMETH2 OFF Property ที่ดูว่าเป็น Circular logging  💾 Archive logging  Archive logging ให้เก็บไปเรื่อยๆ ทำ Online Backup / HADR / roll forward recovery…

จดจาก Build GraphQL APIs (Go)

สัปดาห์ที่แล้วมาเป็นคนสอน docker สัปดาห์นี้วนมาเป็นนักเรียนบ้างครับ โดยรอบนี้ลองมาฟังตัว GraphQL วางมันจะต่างกับ REST แบบเดิมๆที่ใช้กันยังไง โดย Course นี้สอนโดยพี่ปั๊บ (Dev Mountain) ครับ ได้ความรู้เยอะครับ มีประสบการณ์ที่เจอมาเล่าด้วยนะ สำหรับผมก่อนมาเรียน อยากลองมาไล่ GraphQL ของ GitLab บางทีข้อมูลที่อยากได้มันยิงหลายรอบมาก และมาแก้พวก Get ที่ยิบย่อยที่เจอๆกัน แปะไว้ด้วยดีกว่า มีอีกบทความ / Post ที่บอกอีกมุมมองนึงนะ เอาไว้มาหาคำตอบตอนเรียน ที่เรียนมา ผมมีจดๆบางส่วนมานะ ตามนี้เลย ทำไมต้อง GraphQL ? ปัญหาแบบเดิมๆ แล้วที่นี้ Facebook เห็นปัญหา งานมาเยอะ และทำงานซ้ำซ้อน เลยทำ GraphQL ขึ้นมา โดยที่ GraphQL มีรูปร่างอย่างไร ? สิ่งที่สำคัญของ GraphQL เราต้องมากำหนด Schema มันอารมณ์แบบ Swagger ที่ Gen ออกมา เพื่อบอกว่ากับ Client เรามีรูปแบบอย่างไร โดยมี Keyword ที่สำคัญ ก่อนนำมาจัดในส่วน Query / Mutation / Subscription สิ่งที่เราต้องทำก่อน มี Resource อะไรบ้าง มี Keyword เพิ่ม เมื่อ Build ได้ Schema ดูที่หน้า Explorer ได้เลย GraphQL ถ้าเอามาใช้กับระบบ มันอยู่จุดไหน ผมเองตอนนี้เข้าใจว่า มันส่วน Presentation Layer นะ เดิมมี REST ตอนนี้มี GraphQL เข้ามาเพิ่ม เพื่อเป็นทางเลือก แต่ชั้น…

บำเหน็จ และบำนาญของประกันสังคม (ม.33) คิดยังไง

หลังจากทำงานมา 10 ปีแล้ว อยู่เกิดต่อมเอ๊ะขึ้นมา เพราะมีข่าวว่าจะขึ้นเงินสบทบประกันสังคมจาก 750 – 1000 บาทอยู่ เลยมาลองคำนวณก่อนว่า ถ้า 750 บาทเนี่ย เงินบำเหน็จ และบำนาญ จะเท่าไหร่นะ ถ้าเราอายุครบ 55 ปี จะได้เงินประกันสังคม คืนเท่าไหร่ ? จาก 750 ที่เราจ่ายไปจะถูกแบ่ง 3 ก้อน การรับบำเหน็จ หรือบำนาญขึ้นกับระยะเวลา บำเหน็จ – จ่ายไม่ถึง 12 เดือน จะได้รับเงินส่วนของเราที่ถูกหักไปคืน- จ่ายไปในช่วง 12 แต่น้อยกว่า 180 เดือน ได้รับเงินส่วนของเรา + เงินนายจ้างสบทบ บำนาญ – จ่ายไป 180 เดือนพอดี คิดจากฐานเงินเดือนเฉลี่ย 60 เดือนสุดท้าย (Max 15,000) x 20% 15,000 x 20% = 3,000 – จ่ายไป 180 เดือนขนไป คิด 2 ก้อนนะ 15,000 x 20% = 3,000 2.1. (240 – 180/12) x 1.5% = 7.5%2.2. 15,000 x 7.5% = 1,1252.3. รวม 1 + 2 จะได้ 3,000 + 1,125 = 4125/เดือน คงต้องลงทุนเพิ่มแล้วแหละ ส่วนของที่บริษัทไม่มีกองทุนสำรองเลี้ยงชีพนะ แต่เหมือนจะเป็นกองทุนข้างในกันเอง แต่ถามคนที่ออกไป ไม่มีใครได้สักคนต้องทิ้งเงินไป…

AZ-104: Implement and manage storage in Azure

azure

Configure storage accounts Configure Azure Blob Storage Create blob containers Configure Azure Storage security Azure Storage security strategies Create shared access signatures SAS ต้องมากำหนดข้อมูล ดังนี้ Identify URI and SAS parameters จากที่ตั้งค่าไว้ตะกี้ แปลงเป็น URI ยังไง ถ้าสนใจว่าแต่ละ parameter มีค่าเป็นไปได้อะไรบ้างดูจาก Create a user delegation SAS – Azure Storage | Microsoft Learn Recommendations for managing risks Sample: Using Stored Access Policy with Azure Storage – TheSleepyAdmins สรุป Access keys give you full rights to everything in your storage account, SAS you’re able to limit the access capabilities of its users Lab + Knowledge Check Configure Azure Files and Azure File Sync Deploy Azure File…

มาลองสอน Docker ครั้งแรก @BSRU

สำหรับ Blog นี้จะมาแปลกหน่อย จากเดิมปกติจะเป็นสรุป วันนี้มาในอีกมุม เป็นมุมว่าตัวเองไปยืนข้างหน้าชั้น อารมณ์แบบนำเสนอรายงาน แล้วออกมาสอนคนอื่นๆบ้าง ที่ลองมาสอน เพราะตัวเราเองได้เข้าไปฟัง / ลอง Workshop ที่ทาง Zabbix In Thailand จัดหลายรอบๆ เลยอยากจะลองเข้ามาร่วมแบ่งปันบ้าง โดยเรื่องที่จะสอน Docker ครับ ส่วนตัวมองว่ามันเป็นก้าวแรกในการขยับไปเรื่องอื่นๆ ได้ เตรียมตัว ตอนแรก ผมวางเนื้อหาไว้ประมาณนี้นะ ตอนทำเราไม่ได้ดูว่าที่ชาวบ้านเค้าสอน เค้าสอนอะไรบ้าง ส่วนตัวเรียนรู้ Container จากการจำมา ปะติดปะต่อกันมากกว่า และตอนสุดท้ายเราก็จะได้หัวข้อประมาณนี้ ในส่วนของ Tools เนื่องจากเริ่มต้นสอน ผมจะใช้ Tools Docker Desktop จะได้ดูผลจาก Command + GUI ของ Docker Desktop ไปคู่กันครับ พวก Command ใช้วิธีแยกเตรียมไฟล์ไว้ให้แทน ซึ่งส่วนใหญ่น่าจะถูก แต่มีวางยาไปบ้าง 555 ตอนวันจริงนะ สอนจริง 25-26 May 2024 วันจริงและ เนื่องจากเป็นคนสอน เลยไปเข้า และปรากฏว่าหลงอีกตึกครับ 555555 เลยเปิดเมล์อ้อสรุปมีการย้ายไปอีกตึกครับ มาเตรียมตัวกัน ระหว่างสอนวันแรกดีครับ มีพี่ที่ Community (พี่สมเกียรติ / พี่อุ้ม / พี่ลี) มาช่วยตอบคำถาม และ recap ที่ผมสอนด้วย ทำได้ปรับพื้นฐานกันได้ไวครับ และมีหัวข้อปรับ Slide เพิ่มนิดนึง เช่น ตอนลองสอนจริง แบบตื่นเต้นด้วยอาจจะพูดเร็วไป และพูดข้ามไปในบ้างเรื่องครับ หรือ hand-on มีวางยานิดนึง เจ็บจะได้จำครับ เดี๋ยวรอบหน้า ผมจะลองมาจัดการเวลาให้ดีขึ้นครับผม จะได้แบ่งเวลาสอน มี hand-on แบบง่าย และเป็นส่วน Challenge ครับ…

[AZURE] Recovery Service vault cannot be deleted as there are backup items still present in soft delete state

พอจะลองลบตัว Recovery Service vault ระบบแจ้งว่าไม่สามารถลบได้ โดย Error ประมาณ Recovery Service vault cannot be deleted as there are backup items still present in soft delete state สาเหตุ Solution ต้องยกเลิก Soft Delete ก่อน Note ถ้าลบ Backup ไปก่อนแล้ว มันอยู่ในส่วนของ Soft Delete ต้องไป Undelete ก่อน Reference

AZ-104: Manage identities and governance in Azure

azure

Configure Azure Active Directory Azure AD: Configure user and group accounts Configure subscriptions Configure Azure Policy Azure RBAC: Configure role-based access control Create Azure users and groups in Azure Active Directory Secure your Azure resources with Azure role-based access control (Azure RBAC) Suppose a team member can’t view resources in a resource group. Where would the administrator go to check the team member’s access?Ans Go to the resource group and select Access control (IAM) > Check Access. Allow users to reset their password with Azure Active Directory self-service password reset Reference

[PostgreSQL] How to Fixed, FATAL: database locale is incompatible with operating system(LC_COLLATE “th_TH.UTF-8”)

Full Error FATAL: database locale is incompatible with operating systemDetail: The database was initialized with LC_COLLATE “th_TH.UTF-8”, which is not recognized by setlocale() Solution – Linux Server Ubuntu Base Sol#01 Sol#02 or you can edit with text editor such as nano and uncomment (Remove #) in line th_TH.UTF-8 Note: you can use replace command like sed to replace value, the example I will show in Container case – For Container Base Default thai local in dockerfile Reference

[C#] Array Spread 

จริงๆเรียกว่าลองมาทวนๆ JavaScript แล้วมีงงๆกับ Array Spread นิดหน่อย เลยลองดูจาก Doc จาก Spread syntax (…) – JavaScript | MDN (mozilla.org) สรุปแตก Element ข้างในออกมาให้ตัวย่อยสุด ตัวอย่างของ Javascript ก็ตาม ด้านล่างนี้เลย ดูมีประโยชน์ดี แล้ว C# มันมีไหม คำตอบเพิ่งมีตอนปีที่แล้วใน C#12 ครับ Pattern คล้ายกับของ JS เลย ใช้ตัว ตัวอย่างตามนี้เลย แล้วถ้ามาลองตัวอย่างที่ตัวอย่างใน Spread syntax (…) – JavaScript | MDN (mozilla.org) สรุป Spread Operator ของ C# ยังไม่เท่ากับของตัว JavaScript นะ Bonus แล้วถ้าก่อนหน้า C#12 ทำยังไง กำหนด Data Type ให้รับ Array ครับ แล้วให้ Trick .Sum เอา Reference