ขั้นตอนสร้าง User และ Grant สิทธิ์เต็มรูปแบบ
1. สร้างผู้ใช้
CREATE USER 'yourUserName'@'localhost' IDENTIFIED BY 'yourPassword';
2. มอบสิทธิ์ทั้งหมดบนฐานข้อมูลเฉพาะ
GRANT ALL PRIVILEGES ON yourDatabaseName.* TO 'yourUserName'@'localhost';
ตัวอย่างการใช้งาน
mysql> CREATE USER 'Adam Smith'@'localhost' IDENTIFIED BY 'Adam123456'; Query OK, 0 rows affected (0.29 sec) mysql> GRANT ALL PRIVILEGES ON test.* TO 'Adam Smith'@'localhost'; Query OK, 0 rows affected (0.19 sec)
สิทธิ์ที่อยู่ใน ALL PRIVILEGES:
- SELECT, INSERT, UPDATE, DELETE
- CREATE, DROP, ALTER, INDEX
- CREATE TEMPORARY TABLES, LOCK TABLES
- EXECUTE, CREATE VIEW, SHOW VIEW
- CREATE ROUTINE, ALTER ROUTINE
- EVENT, TRIGGER
- REFERENCES
คำสั่งเพิ่มเติมที่มีประโยชน์:
-- ดูสิทธิ์ของ user SHOW GRANTS FOR 'Adam Smith'@'localhost'; -- ยกเลิกสิทธิ์ REVOKE ALL PRIVILEGES ON test.* FROM 'Adam Smith'@'localhost'; -- ลบผู้ใช้ DROP USER 'Adam Smith'@'localhost'; -- Reload privileges (หลังเปลี่ยนแปลงสิทธิ์) FLUSH PRIVILEGES;
Best Practice: ให้สิทธิ์เฉพาะที่จำเป็น (Principle of Least Privilege) แทน ALL PRIVILEGES