การรู้ character set และ collation เริ่มต้นของเซิร์ฟเวอร์ MySQL สำคัญสำหรับการจัดการข้อมูลภาษาไทยและหลายภาษา ให้ถูกต้องและไม่เกิดปัญหาการเข้ารหัส
คำสั่งตรวจสอบ Character Set
SHOW VARIABLES LIKE 'character_set_server';
คำสั่งตรวจสอบ Collation
SHOW VARIABLES LIKE 'collation_server';
ตัวอย่างผลลัพธ์
+----------------------+-------+ | Variable_name | Value | +----------------------+-------+ | character_set_server | utf8 | +----------------------+-------+
+------------------+-----------------+ | Variable_name | Value | +------------------+-----------------+ | collation_server | utf8_unicode_ci | +------------------+-----------------+
คำอธิบาย
- character_set_server - ชุดอักขระเริ่มต้นของเซิร์ฟเวอร์ (utf8, utf8mb4, latin1, ฯลฯ)
- collation_server - กฎการจัดเรียงและเปรียบเทียบข้อความเริ่มต้น
ข้อมูลเพิ่มเติมสำคัญ
- utf8mb4 แนะนำให้ใช้แทน utf8 เพรองรองรับ emoji และอักขระ Unicode ทั้งหมด (4 bytes)
- utf8mb4_unicode_ci หรือ utf8mb4_0900_ai_ci (MySQL 8.0+) เป็น collation ที่แนะนำสำหรับภาษาไทย
- ตรวจสอบได้ทั้งหมดด้วย:
SHOW VARIABLES LIKE 'character_set%';และSHOW VARIABLES LIKE 'collation%'; - เปลี่ยนค่าได้ในไฟล์ config (my.cnf/my.ini) หรือตอนสร้าง database/table
คำสั่งตรวจสอบแบบครบถ้วน
mysql> SHOW VARIABLES LIKE 'character_set%'; mysql> SHOW VARIABLES LIKE 'collation%';