กลับไปหน้าบล็อก
มกราคม 13, 2026คู่มือ

วิธีตั้งค่าฐานข้อมูล MySQL บน Linux Server

คู่มือฉบับสมบูรณ์เกี่ยวกับการติดตั้ง การรักษาความปลอดภัย และการจัดการเซิร์ฟเวอร์ฐานข้อมูล MySQL บน Ubuntu และ CentOS

วิธีตั้งค่าฐานข้อมูล MySQL บน Linux Server

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

การติดตั้ง MySQL

MySQL 8.0 เป็นเวอร์ชันเสถียรปัจจุบัน ณ ปี 2026 กระบวนการติดตั้งแตกต่างกันเล็กน้อยระหว่าง Ubuntu/Debian และดิสทริบิวชันที่ใช้ RHEL เราจะครอบคลุมทั้งสองวิธีด้านล่าง

การติดตั้ง MySQL บน Ubuntu/Debian

สำหรับ Ubuntu 22.04 LTS และใหม่กว่า MySQL 8.0 มีอยู่ใน repository เริ่มต้น ติดตั้งโดยใช้ apt:

bash
sudo apt update
sudo apt install mysql-server -y
sudo systemctl start mysql
sudo systemctl enable mysql

# ตรวจสอบการติดตั้ง
sudo systemctl status mysql
mysql --version

การติดตั้ง MySQL บน RHEL / CentOS / AlmaLinux / Rocky Linux

สำหรับดิสทริบิวชันที่ใช้ RHEL คุณต้องเพิ่ม repository ของ MySQL ก่อน แนะนำให้ใช้ MySQL 8.0 สำหรับการใช้งานจริง:

bash
# ดาวน์โหลดแพ็คเกจ repository ของ MySQL
sudo wget https://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm

# ติดตั้ง repository
sudo rpm -ivh mysql80-community-release-el9-1.noarch.rpm

# สำหรับ CentOS 8/Rocky Linux 8/AlmaLinux 8 ใช้:
# sudo wget https://dev.mysql.com/get/mysql80-community-release-el8-7.noarch.rpm

# ติดตั้ง MySQL
sudo yum install mysql-server -y

# เริ่มและเปิดใช้งาน MySQL
sudo systemctl start mysqld
sudo systemctl enable mysqld

# ตรวจสอบการติดตั้ง
sudo systemctl status mysqld
mysql --version

กำลังตรวจสอบการติดตั้ง

หลังการติดตั้ง ตรวจสอบว่า MySQL ทำงานอย่างถูกต้อง:

bash
# ตรวจสอบสถานะบริการ
sudo systemctl status mysql  # Ubuntu/Debian
sudo systemctl status mysqld  # RHEL / CentOS

# ตรวจสอบเวอร์ชัน MySQL
mysql --version

# ทดสอบการเชื่อมต่อ (จะถามรหัสผ่าน root)
sudo mysql -u root -p

การรักษาความปลอดภัยการติดตั้ง MySQL

รันสคริปต์การติดตั้งที่ปลอดภัยของ MySQL:

bash
sudo mysql_secure_installation
# ทำตามคำแนะนำเพื่อตั้งรหัสผ่าน root, ลบผู้ใช้นิรนาม, ปิดการล็อกอิน root จากระยะไกล ฯลฯ

การสร้างฐานข้อมูลและผู้ใช้

bash
sudo mysql -u root -p
CREATE DATABASE myapp_db;
CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON myapp_db.* TO 'app_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

การจัดการผู้ใช้

bash
sudo mysql -u root -p
# สร้างผู้ใช้
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

# ให้สิทธิ์
GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@'localhost';

# เพิกถอนสิทธิ์
REVOKE ALL PRIVILEGES ON database_name.* FROM 'newuser'@'localhost';

# ลบผู้ใช้
DROP USER 'newuser'@'localhost';

การเปิดใช้งานการเข้าถึงระยะไกล (ทางเลือก)

เพื่ออนุญาตการเชื่อมต่อระยะไกล ให้แก้ไข bind-address:

bash
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
# เปลี่ยน bind-address = 127.0.0.1 เป็น bind-address = 0.0.0.0
sudo systemctl restart mysql
# กำหนดค่าไฟร์วอลล์เพื่ออนุญาตพอร์ต 3306 ด้วย

การสำรองและกู้คืนฐานข้อมูล

สร้างการสำรองข้อมูลและกู้คืน:

bash
# สำรองข้อมูล
mysqldump -u root -p database_name > backup.sql

# กู้คืน
mysql -u root -p database_name < backup.sql

แนวทางปฏิบัติที่ดีที่สุด

  • ใช้รหัสผ่านที่รัดกุมสำหรับผู้ใช้ฐานข้อมูล
  • ให้สิทธิ์ที่จำเป็นเท่านั้นแก่ผู้ใช้
  • สำรองข้อมูลฐานข้อมูลของคุณเป็นประจำ
  • อัปเดต MySQL เพื่อรับแพตช์ความปลอดภัย
  • ตรวจสอบประสิทธิภาพของฐานข้อมูลและปรับแต่ง query