เขียน Ansible Playbook ติดตั้ง Database (MySQL/PostgreSQL) บน VPS

เขียน Ansible Playbook ติดตั้ง Database (MySQL/PostgreSQL) บน VPS

Database เป็น component ที่ต้องการความระมัดระวังในการติดตั้งและตั้งค่ามากกว่า web server เพราะเกี่ยวข้องกับข้อมูลโดยตรง การใช้ Ansible จัดการ database server ช่วยให้ทุกขั้นตอนตั้งแต่ติดตั้ง package, สร้าง database, กำหนดสิทธิ์ user, ไปจนถึง hardening ถูก document ไว้ในรูป playbook ที่ตรวจสอบและทำซ้ำ

Workshop: PostgreSQL + Node.js Application

Workshop: PostgreSQL + Node.js Application

PostgreSQL เป็นฐานข้อมูลที่ได้รับความนิยมอย่างมากในการพัฒนา Web Application โดยเฉพาะเมื่อใช้ร่วมกับ Node.js Workshop นี้จะพาคุณตั้งแต่ติดตั้ง PostgreSQL บน Cloud VPS สร้าง Database พัฒนา RESTful API ด้วย Express.js และเชื่อมต่อกับ PostgreSQL ผ่าน pg library เนื้อหาเหมาะสำหรับนักพัฒนาที่ต้องการเรียนร

Multi-master Replication Setup — คู่มือตั้งค่า MySQL, MariaDB Galera และ PostgreSQL

Multi-master Replication Setup — คู่มือตั้งค่า MySQL, MariaDB Galera และ PostgreSQL

Multi-master Replication คือรูปแบบการทำสำเนาฐานข้อมูลที่อนุญาตให้ทุก Node สามารถรับคำสั่ง Write ได้พร้อมกัน ต่างจาก Primary-Replica ทั่วไปที่มีเพียง Node เดียวรับ Write ข้อดีคือไม่มี Single Point of Failure สำหรับ Write Operation และกระจาย Write Load ไปยังหลาย Node ได้ บทความนี้จะอธิบายแนวคิด ข้อดี-

Database Clustering Setup — คู่มือตั้งค่า MySQL, PostgreSQL และ MongoDB Cluster

Database Clustering Setup — คู่มือตั้งค่า MySQL, PostgreSQL และ MongoDB Cluster

Database Clustering คือการนำเซิร์ฟเวอร์ฐานข้อมูลหลายเครื่องมาทำงานร่วมกันเสมือนเป็นระบบเดียว เพื่อเพิ่มความสามารถในการรองรับ Load ที่สูงขึ้น เพิ่ม Availability ให้ระบบทำงานได้ต่อเนื่องแม้เซิร์ฟเวอร์บางเครื่องล่ม และกระจายภาระงานออกไปยังหลาย Node เพื่อลดคอขวดของระบบ บทความนี้จะอธิบายแนวคิดและวิธีตั้ง

Database Migration จาก MySQL ไป PostgreSQL — คู่มือครบทุกขั้นตอน

Database Migration จาก MySQL ไป PostgreSQL — คู่มือครบทุกขั้นตอน

การย้ายฐานข้อมูลจาก MySQL ไปยัง PostgreSQL เป็นงานที่หลายองค์กรต้องเผชิญเมื่อระบบเติบโตขึ้นและต้องการฟีเจอร์ขั้นสูงที่ PostgreSQL มีให้ เช่น Full ACID Compliance ที่เข้มงวดกว่า การรองรับ JSON/JSONB แบบ Native การทำ Partitioning ที่ยืดหยุ่น Window Functions ที่หลากหลาย และ Extension System ที่ทรงพลัง

Connection Pooling ด้วย PgBouncer: คู่มือตั้งค่าและปรับแต่งสำหรับ PostgreSQL

Connection Pooling ด้วย PgBouncer: คู่มือตั้งค่าและปรับแต่งสำหรับ PostgreSQL

PostgreSQL สร้าง Process ใหม่ทุกครั้งที่มีการเชื่อมต่อเข้ามา ซึ่งใช้ทรัพยากรทั้ง Memory และ CPU ในการ Fork Process เมื่อแอปพลิเคชันมีผู้ใช้จำนวนมากและเปิดปิดการเชื่อมต่อบ่อย ๆ เซิร์ฟเวอร์จะรับภาระหนักจนทำให้ประสิทธิภาพลดลง Connection Pooling เป็นเทคนิคที่แก้ปัญหานี้โดยสร้างกลุ่มการเชื่อมต่อสำเร็จรูป

Vacuum และ Analyze ใน PostgreSQL: คู่มือดูแล Dead Tuples และ Autovacuum

Vacuum และ Analyze ใน PostgreSQL: คู่มือดูแล Dead Tuples และ Autovacuum

PostgreSQL ใช้ระบบ MVCC (Multiversion Concurrency Control) ในการจัดการ Transaction ซึ่งหมายความว่าเมื่อ UPDATE หรือ DELETE ข้อมูล แถวเก่าจะไม่ถูกลบทันทีแต่จะถูกทำเครื่องหมายว่าไม่ใช้แล้ว แถวเหล่านี้เรียกว่า Dead Tuples และจะสะสมมากขึ้นเรื่อย ๆ จนทำให้ตารางใหญ่ขึ้นโดยไม่จำเป็น Query ช้าลง และดิสก์ถูก

การตั้งค่า PostgreSQL Logging: คู่มือครบทุกพารามิเตอร์สำคัญ

การตั้งค่า PostgreSQL Logging: คู่มือครบทุกพารามิเตอร์สำคัญ

การตั้งค่า Logging ใน PostgreSQL เป็นหัวใจสำคัญของการดูแลฐานข้อมูลให้ทำงานได้อย่างเสถียร Log ที่ดีช่วยให้ผู้ดูแลระบบตรวจจับปัญหาได้ตั้งแต่เนิ่น ๆ วิเคราะห์ Query ที่ช้า และติดตามกิจกรรมที่ผิดปกติ ในทางกลับกัน Log ที่ตั้งค่าไม่เหมาะสมอาจสร้างภาระให้ดิสก์เต็มหรือบันทึกข้อมูลไม่เพียงพอสำหรับการแก้ปัญหา

Query Optimization ใน PostgreSQL

Query Optimization ใน PostgreSQL

ประสิทธิภาพของแอปพลิเคชันที่ใช้ PostgreSQL ขึ้นอยู่กับการเขียน Query ที่ดีเป็นอย่างมาก Query ที่เขียนไม่เหมาะสมอาจทำให้ระบบช้าลง ใช้ทรัพยากรมากเกินไป และส่งผลกระทบต่อผู้ใช้งานทั้งหมด การปรับแต่งคำสั่ง SQL จึงเป็นทักษะสำคัญที่ผู้ดูแลฐานข้อมูลและนักพัฒนาควรเรียนรู้ บทความนี้จะอธิบายเทคนิคการปรับแต่ง Q

PostgreSQL Streaming Replication

PostgreSQL Streaming Replication

ในระบบฐานข้อมูลที่ต้องรองรับการใช้งานระดับ Production การมีเซิร์ฟเวอร์เพียงตัวเดียวอาจไม่เพียงพอ เพราะหากเกิดปัญหาขึ้น ระบบทั้งหมดจะหยุดทำงานทันที PostgreSQL มีฟีเจอร์ Streaming Replication ที่ช่วยให้สามารถทำสำเนาข้อมูลจากเซิร์ฟเวอร์หลัก (Primary) ไปยังเซิร์ฟเวอร์สำรอง (Standby) แบบ Real-time ผ่าน W

LINE CHAT