สอนใช้งาน MySQL

สอนใช้งาน MySQL

MySQL เป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ที่นิยมใช้กับเว็บไซต์และแอปพลิเคชันจำนวนมาก ติดตั้งง่าย มีเครื่องมือครบ และรองรับ SQL มาตรฐานพร้อมคำสั่งเฉพาะของตัวเอง บทความนี้จะพาติดตั้ง สร้างฐานข้อมูลและผู้ใช้ สร้างตาราง และสำรองข้อมูลด้วย `mysqldump`

หมายเหตุการทดสอบ: เครื่องที่ใช้เขียนบทความนี้ไม่มีเซิร์ฟเวอร์ MySQL จึงยังไม่ได้รันคำสั่งในบทความ คำสั่ง SQL ที่ใช้เป็นชุดเดียวกับที่ทดสอบกับ SQLite ในบทความ SQL ควรรันเองบนเครื่องที่ติดตั้ง MySQL แล้ว

สิ่งที่ต้องเตรียม

ภาพรวมการเชื่อมต่อ

ภาพแผนผัง: mysql client หรือแอปพลิเคชันเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ที่เก็บฐานข้อมูลและตาราง
ภาพแผนผัง: mysql client หรือแอปพลิเคชันเชื่อมต่อกับเซิร์ฟเวอร์ MySQL ที่เก็บฐานข้อมูลและตาราง

ขั้นที่ 1: เข้าสู่ระบบ

mysql -u root -p

ขั้นที่ 2: สร้างฐานข้อมูลและผู้ใช้

CREATE DATABASE school CHARACTER SET utf8mb4;
CREATE USER 'teacher'@'localhost' IDENTIFIED BY 'change-me';
GRANT SELECT, INSERT, UPDATE, DELETE ON school.* TO 'teacher'@'localhost';
FLUSH PRIVILEGES;

`CHARACTER SET utf8mb4` ทำให้เก็บภาษาไทยและอีโมจิได้ครบ ควรเปลี่ยนรหัสผ่านตัวอย่างเป็นรหัสที่ปลอดภัย

ขั้นที่ 3: สร้างตารางและเพิ่มข้อมูล

USE school;
CREATE TABLE students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  score INT
);
INSERT INTO students (name, score) VALUES ('สมชาย', 85), ('สมหญิง', 72);
SELECT name, score FROM students WHERE score >= 80;

`AUTO_INCREMENT` สร้างหมายเลขอัตโนมัติ และ `VARCHAR(100)` กำหนดความยาวสูงสุดของข้อความ

ขั้นที่ 4: สำรองและกู้คืนข้อมูล

mysqldump -u root -p school > school_backup.sql
mysql -u root -p school < school_backup.sql

ข้อผิดพลาดที่มักพบ

ขั้นต่อไป

เรียนรู้ดัชนีเพื่อเพิ่มความเร็ว การใช้ `EXPLAIN` ดูแผนการค้นหา และการตั้งค่าการสำรองข้อมูลอัตโนมัติ

สรุป

MySQL ทำงานเป็นเซิร์ฟเวอร์ที่แยกฐานข้อมูลและสิทธิ์ผู้ใช้ได้ การตั้ง `utf8mb4` ตั้งแต่ต้น การสร้างผู้ใช้แยก และการสำรองข้อมูลสม่ำเสมอ เป็นพื้นฐานสำคัญของการใช้งานจริง