คอนฟิก MySQL 8.0 Replication บน Ubuntu 20.04

เมื่อมีปริมาณการใช้งานเซิร์ฟเวอร์ฐานข้อมูล (Database Server) เพิ่มมากขึ้น อาจทำให้เซิร์ฟเวอร์ตัวเดียวไม่สามารถรองรับได้ ทำให้ต้องมีการขยายขนาด โดยอาจทำได้สองวิธีหลักๆ คือ

  1. เปลี่ยนเครื่องให้มี CPU, Memory หรือ Disk ที่มีความเร็วสูงขึ้น
  2. อีกวิธีที่จะแนะนำในที่นี้ คือเพิ่มเครื่องแล้วคอนฟิก Replication เพื่อให้ทุกเครื่องมีฐานข้อมูลที่เหมือนกัน เพื่อกระจายการรองรับการใช้งาน

บทความนี้จะอธิบายคอนฟิก MySQL Replication เพื่อ replicate ข้อมูลระหว่าง MySQL Database Server สองเครื่อง ทั้งแบบ Master-Slave และ Master-Master โดยทดสอบกับเวอร์ชัน 8.0 ที่ติดตั้งบน Ubuntu 20.04
Continue reading “คอนฟิก MySQL 8.0 Replication บน Ubuntu 20.04”

ติดตั้ง MongoDB v3.0 บน CentOS 7

อยู่ในช่วงกำลังศึกษา NoSQL เพื่อหาวิธีการจัดเก็บข้อมูลแบบใหม่ ให้สามารถรองรับจำนวนข้อมูลขนาดใหญ่ ที่ไม่อยู่ในรูปแบบที่แน่นอน (non SQL)

หลายสำนักเห็นตรงกันว่าให้ลองใช้ MongoDB ซึ่งเป็นที่นิยมกันมาก ด้วยคุณสมบัติ ประสิทธิภาพ เอกสาร คู่มือการใช้งาน วิธีการแก้ไขปัญหา ก็มีแพร่หลายอยู่บนอินเทอร์เน็ต โปรแกรมภาษาต่างๆ ก็มีโมดูลในการเขียนโปรแกรมเชื่อมต่อแล้ว แถมยังสามารถใช้งานได้ฟรีอีกด้วย

เริ่มต้นลองมาดูวิธีการติดตั้ง MongoDB บน CentOS 7 เพื่อรันเป็นเซิร์ฟเวอร์กัน

Continue reading “ติดตั้ง MongoDB v3.0 บน CentOS 7”

คอนฟิก BIND DNS เก็บข้อมูลโซนโดเมนไว้ใน SQLite บน CentOS 7

จากบทความ คอนฟิกเซิร์ฟเวอร์ BIND DNS บน CentOS 7 – ตอนที่ 2 เพิ่มโซนโดเมน ที่ผ่านมา หลังจากที่เราตัดสินใจตั้งเซิร์ฟเวอร์ DNS เพื่อเก็บข้อมูลโดเมนของเราเองแล้วนั้น หากมีการแก้ไขข้อมูลของโดเมน เช่นมีการเพิ่มหรือเปลี่ยนแปลง ชื่อ (hostname) กับ IP Address หรือข้อมูลอื่น ก็ต้องมีการแก้ไขไฟล์โซนของโดเมนนั้นๆ

ดีฟอลต์จากการติดตั้ง BIND ผู้ดูแลระบบต้องแก้ไขคอนฟิกโซนโดเมน ในรูปแบบการแก้ไขไฟล์ โดยใช้ editor เช่น vi หรือ nano และหลังการแก้ไขเสร็จสิ้น ก็ต้องรีสตาร์ตเซอร์วิส named ใหม่

เพื่อชีวิตที่ง่ายขึ้นของผู้ดูแลระบบ ในที่นี้ขอแนะนำการคอนฟิก BIND ให้เก็บข้อมูลโซนโดเมน ไว้ในรูปแบบฐานข้อมูล (SQLite) เวลาแก้ไขข้อมูล ก็ปรับปรุงข้อมูลในฐานข้อมูลโดยตรง แต่หลังแก้ไขเสร็จสิ้นแล้ว ไม่จำเป็นต้องรีสตาร์ตเซอร์วิส named ใหม่อีกครั้ง

Continue reading “คอนฟิก BIND DNS เก็บข้อมูลโซนโดเมนไว้ใน SQLite บน CentOS 7”

สร้างเว็บไซต์ร้านค้าออนไลน์ด้วย PrestaShop บน CentOS 7

มาทดลองติดตั้ง PrestaShop อีกสักโปรแกรม ที่มีขั้นตอนการติดตั้งมากกว่าติดตั้ง WordPress อยู่หน่อย แต่ก็ไม่น่ายากเกินไปสำหรับเราแล้ว :)

PrestaShop เป็นโปรแกรมสร้างเว็บไซต์ร้านค้าออนไลน์ ที่สามารถดาวน์โหลดมาใช้งานได้ฟรี มีคุณสมบัติการใช้งานทั้งระบบการสร้างร้านค้า การซื้อขาย ระบบการจ่ายเงิน ธีมหน้าการออกแบบเว็บให้สามารถเลือกใช้ และอื่นๆ อีกมากมาย

PrestaShop ถูกพัฒนาด้วยภาษา PHP และใช้ MySQL เป็นฐานข้อมูลหลักในการเก็บข้อมูล ดังนั้นเราจะลองติดตั้งบนเว็บเซิร์ฟเวอร์ตัวเดียวกันกับที่เราเพิ่งลองติดตั้ง WordPress ไป

Continue reading “สร้างเว็บไซต์ร้านค้าออนไลน์ด้วย PrestaShop บน CentOS 7”

ติดตั้ง WordPress บน CentOS 7

หลังจากที่เราติดตั้งลีนุกซ์ CentOS 7  ลงเว็บเซิร์ฟเวอร์ Apache ที่มีโมดูล PHP  แล้วก็ติดตั้งคอนฟิกเซิร์ฟเวอร์ฐานข้อมูล  MariaDB เสร็จเรียบร้อยแล้ว

ลองมาทดสอบการใช้งานกัน ด้วยการลง WordPress โปรแกรม CMS ยอดนิยม

Continue reading “ติดตั้ง WordPress บน CentOS 7”

ติดตั้งเซิร์ฟเวอร์ MariaDB บน CentOS 7

สิ่งที่เปลี่ยนแปลงไปอีกอย่างใน CentOS 7 หรือ Red Hat 7 ก็คือเปลี่ยนมาใช้ MariaDB เพื่อเป็นเซิร์ฟเวอร์ฐานข้อมูลแทนที่ MySQL ซึ่งผู้ใช้งานแทบไม่ต้องเปลี่ยนอะไร เพราะรูปแบบการใช้งาน เช่นชื่อคำสั่ง ออปชันที่ใช้ยังคงเหมือนเดิม

คนสร้างและพัฒนา MariaDB ก็คือคนเดิมที่เคยสร้างและพัฒนา MySQL มาก่อน ขอไม่กล่าวถึงเหตุผลหรือรายละเอียดในที่นี้ แต่สรุปคร่าวๆ ว่า MariaDB สามารถใช้งานได้ฟรี (GPL) มีคุณสมบัติให้ใช้งานเช่น Storage Engine มากขึ้น ว่ากันว่าประสิทธิภาพดีขึ้น ทำให้หลายๆ ที่ เริ่มเปลี่ยนมาใช้ MariaDB กันแล้ว

ลองมาดูวิธีการติดตั้งเซิร์ฟเวอร์ MariaDB บน CentOS 7 กัน และวิธีการคอนฟิกเซิร์ฟเวอร์ฐานข้อมูลเบื้องต้นว่าเหมือนเดิมขนาดไหน

Continue reading “ติดตั้งเซิร์ฟเวอร์ MariaDB บน CentOS 7”

Laravel การเชื่อมต่อกับฐานข้อมูล

หลังจากที่ หัดใช้ Route และ View เบื้องต้น แล้ว ในตอนนี้เรามาดูวิธีเขียน Laravel เพื่อเชื่อมต่อฐานข้อมูลกัน

โดยจะใช้วิธีการทำ migrate หรือ migration ของ Laravel ซึ่งเปรียบเสมือนเป็นการจัดการควบคุมเวอร์ชั่นของฐานข้อมูล (version control ของ database) เพื่อให้ laravel ทราบว่า โครงสร้างตารางที่ใช้นั้นมีการเปลี่ยนแปลงไปอย่างไร และจะสร้าง แก้ไข หรือลบไฟล์ที่เกี่ยวข้องตามโครงสร้างที่เปลี่ยนไปได้โดยอัตโนมัติ

แล้วใช้ Eloquent ORM เพื่อดึงข้อมูลออกมา

Continue reading “Laravel การเชื่อมต่อกับฐานข้อมูล”

วิธีเปิด ปิด Oracle Database 11g

หลังจาก  ติดตั้ง Oracle Database 11g Release 2 บน CentOS 6 ไปเรียบร้อยแล้ว สิ่งหนึ่งที่ผู้ดูแลระบบหรือ DBA (Database Administrator) ต้องทำเป็นคือเปิด ปิด Oracle Database

ในที่นี้ขอแสดงวิธีการเปิด ปิดแบบง่ายๆ เพื่อใช้อ้างอิงเตือนความจำ

หมายเหตุ ขออนุญาตไม่ลงรายละเอียดของแต่ละคำสั่งว่าคืออะไร

Continue reading “วิธีเปิด ปิด Oracle Database 11g”

ติดตั้ง Oracle Database 11g Release 2 บน CentOS 6

บทความนี้แสดงวิธีการติดตั้ง Oracle Database 11g Release 2 โดยทดสอบบน CentOS 6.5 (x86_64) เผื่อเป็นประโยชน์ ให้สามารถทดลองใช้ Oracle Database ในการเรียนรู้ หลักการ และคำสั่งต่างๆ ก่อนที่จะไปใช้กับเครื่องจริง

Continue reading “ติดตั้ง Oracle Database 11g Release 2 บน CentOS 6”

คอนฟิก MySQL 5.5 Replication บน CentOS 6

บทความนี้จะอธิบายคอนฟิก MySQL Replication เพื่อ replicate ข้อมูลระหว่าง MySQL Database Server สองเครื่อง ทั้งแบบ Master-Slave และ Master-Master โดยทดสอบกับเวอร์ชั่น 5.5 ที่ติดตั้งบน CentOS 6

Continue reading “คอนฟิก MySQL 5.5 Replication บน CentOS 6”