วิธีติดตั้งและรักษาความปลอดภัย MySQL บน Ubuntu: คู่มือครบถ้วนสำหรับการตั้งค่า การจัดการผู้ใช้ และการบำรุงรักษา

目次

1. วัตถุประสงค์และประโยชน์ของการติดตั้ง MySQL บน Ubuntu

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

2. การเตรียมสภาพแวดล้อม Ubuntu ของคุณ

ก่อนติดตั้ง MySQL ให้แน่ใจว่ารายการแพ็กเกจในระบบ Ubuntu ของคุณเป็นเวอร์ชันล่าสุด สิ่งนี้ช่วยลดความเสี่ยงของข้อผิดพลาดระหว่างการติดตั้ง

2-1. อัปเดตและอัปเกรดแพ็กเกจระบบ

เรียกใช้คำสั่งต่อไปนี้เพื่ออัปเดตแพ็กเกจระบบเป็นเวอร์ชันล่าสุด:

sudo apt update
sudo apt upgrade

การอัปเดตช่วยให้แน่ใจว่าแพ็กเกจที่มีอยู่เข้ากันได้กับการติดตั้ง MySQL

2-2. ตรวจสอบ Dependencies

MySQL ต้องการแพ็กเกจที่พึ่งพาหลายตัว การตรวจสอบ dependencies ล่วงหน้าช่วยหลีกเลี่ยงปัญหาการติดตั้ง หากจำเป็น ให้ตรวจสอบและติดตั้งแพ็กเกจที่จำเป็นโดยใช้คำสั่งด้านล่าง:

sudo apt install -f

3. ขั้นตอนการติดตั้ง MySQL

ติดตั้งแพ็กเกจ mysql-server เพื่อตั้งค่า MySQL บน Ubuntu ยืนยันว่าเซอร์วิส MySQL กำลังทำงานอย่างถูกต้อง

3-1. ติดตั้ง MySQL

เรียกใช้คำสั่งด้านล่างเพื่อดาวน์โหลดและติดตั้ง MySQL โดยอัตโนมัติ:

sudo apt install mysql-server

3-2. ตรวจสอบเซอร์วิส MySQL และเปิดใช้งานการเริ่มต้นอัตโนมัติ

หลังจากติดตั้ง ตรวจสอบว่าเซอร์วิส MySQL กำลังทำงานหรือไม่:

sudo systemctl status mysql

หากสถานะแสดง active (running) การติดตั้งสำเร็จแล้ว เพื่อให้แน่ใจว่า MySQL เริ่มต้นอัตโนมัติเมื่อระบบบูต เรียกใช้ต่อไปนี้:

sudo systemctl enable mysql

4. การกำหนดค่าพื้นฐานและการเสริมความปลอดภัย

หลังจากติดตั้ง ใช้สคริปต์ mysql_secure_installation เพื่อปรับปรุงการตั้งค่าความปลอดภัยของ MySQL

4-1. เรียกใช้ mysql_secure_installation

เรียกใช้คำสั่งต่อไปนี้เพื่อกำหนดการตั้งค่าความปลอดภัย:

sudo mysql_secure_installation

สคริปต์จะถามคุณสำหรับการตั้งค่าต่อไปนี้:

  • นโยบายรหัสผ่าน : กำหนดความแข็งแกร่งของรหัสผ่าน (ต่ำ กลาง สูง) เพื่อเพิ่มความปลอดภัย
  • ลบผู้ใช้ไม่ระบุชื่อ : ลบผู้ใช้ไม่ระบุชื่อเริ่มต้น
  • ลบฐานข้อมูลทดสอบ : ลบฐานข้อมูลทดสอบเพื่อลดความเสี่ยงด้านความปลอดภัย
  • จำกัดการเข้าถึงระยะไกล : ปิดการเข้าสู่ระบบระยะไกลสำหรับผู้ใช้ root

4-2. การตั้งค่าความปลอดภัยที่แนะนำ

โดยทั่วไปแนะนำให้ป้อน Y สำหรับแต่ละคำถาม ตั้งนโยบายรหัสผ่านเป็น medium หรือ high และจำกัดการเข้าถึงระยะไกลเพื่อปรับปรุงความปลอดภัยเพิ่มเติม

5. การเชื่อมต่อกับ MySQL และการจัดการผู้ใช้

เชื่อมต่อกับ MySQL และดำเนินการกำหนดค่าพื้นฐานหรือการจัดการผู้ใช้

5-1. เข้าถึง MySQL Shell

เพื่อดำเนินการ MySQL ในฐานะผู้ใช้ root เรียกใช้คำสั่งต่อไปนี้:

sudo mysql

5-2. เปลี่ยนวิธีการรับรองความถูกต้อง (ไม่บังคับ)

เริ่มต้นด้วย MySQL 8.0 วิธีการรับรองความถูกต้องเริ่มต้นสำหรับผู้ใช้ root คือ auth_socket เพื่ออนุญาตการเข้าถึงจากเครื่องมือภายนอกเช่น phpMyAdmin เปลี่ยนวิธีการรับรองความถูกต้องเป็น mysql_native_password ดังนี้:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'StrongPassword';
FLUSH PRIVILEGES;

6. การดำเนินการฐานข้อมูลและตารางพื้นฐาน

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

6-1. การสร้างฐานข้อมูลและตาราง

ใช้คำสั่งต่อไปนี้เพื่อสร้างฐานข้อมูล:

CREATE DATABASE database_name;
USE database_name;

ถัดไป สร้างตาราง ตัวอย่างเช่น เพื่อจัดการข้อมูลผู้ใช้:

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100),
  email VARCHAR(100)
);

6-2. การแทรกและแสดงข้อมูล

ใช้คำสั่งด้านล่างเพื่อแทรกข้อมูลและแสดงเนื้อหาตาราง:

.

INSERT INTO users (name, email) VALUES ('Taro Yamada', 'taro@example.com');
SELECT * FROM users;

7. การบำรุงรักษาและการสำรองข้อมูลเป็นประจำ

การทำงานของ MySQL อย่างเหมาะสมต้องอาศัยการสำรองข้อมูลและการบำรุงรักษาเป็นประจำ

7-1. สร้างการสำรองข้อมูล

การสำรองข้อมูลเป็นประจำเป็นสิ่งสำคัญสำหรับการปกป้องข้อมูล ใช้ mysqldump ดังต่อไปนี้:

mysqldump -u root -p database_name > backup.sql

7-2. ปรับประสิทธิภาพการทำงาน

ปรับแต่งตารางฐานข้อมูลเป็นระยะเพื่อรักษาประสิทธิภาพ:

OPTIMIZE TABLE table_name;

7-3. คำถามที่พบบ่อย

  • หากมีตัวเลือกเพิ่มเติมปรากฏขึ้นระหว่าง mysql_secure_installation เพื่อให้สามารถเข้าถึง root ได้โดยไม่ต้องใช้ “การจำกัดการเข้าถึงจากระยะไกล” ให้กำหนดมาตรการความปลอดภัยแบบกำหนดเองด้วยตนเอง

8. การแก้ไขปัญหาและแหล่งข้อมูลสนับสนุน

หากเกิดปัญหาในขณะใช้ MySQL ให้ใช้วิธีต่อไปนี้เพื่อวินิจฉัยและแก้ไขปัญหา

8-1. ตรวจสอบสถานะบริการและรีสตาร์ท

ใช้คำสั่งด้านล่างเพื่อตรวจสอบการทำงานของบริการ MySQL หรือรีสตาร์ทเมื่อจำเป็น:

sudo systemctl status mysql
sudo systemctl restart mysql

8-2. ตรวจสอบบันทึกข้อผิดพลาด

การตรวจสอบบันทึกข้อผิดพลาดช่วยระบุสาเหตุของปัญหา:

sudo cat /var/log/mysql/error.log

8-3. แหล่งข้อมูลสนับสนุน

อ้างอิงเอกสารอย่างเป็นทางการและฟอรั่มชุมชน เว็บไซต์ MySQL อย่างเป็นทางการและเว็บไซต์ถามตอบเช่น Stack Overflow มีข้อมูลการแก้ไขปัญหาที่มีคุณค่า

9. สรุป

คู่มือนี้ครอบคลุมการติดตั้ง MySQL และขั้นตอนการตั้งค่าที่สำคัญบน Ubuntu ด้วยการกำหนดค่าความปลอดภัย การบำรุงรักษา และการจัดการการสำรองข้อมูลอย่างเหมาะสม คุณสามารถใช้งาน MySQL ได้อย่างมีประสิทธิภาพและปลอดภัย ขั้นตอนต่อไปคือการพิจารณาอัตโนมัติการสำรองข้อมูลและการปรับประสิทธิภาพการสืบค้น.