คำตอบคือ ครอบคลุม เนื่องจากสิทธิ์นี้เป็น Global Privilege (สิทธิ์ระดับเซิร์ฟเวอร์) ซึ่งจะมีผลบังคับใช้กับฐานข้อมูลและตารางทั้งหมดที่มีอยู่ในปัจจุบันและที่จะสร้างขึ้นในภายหลัง
ตัวอย่างการทดสอบ
1. สร้างผู้ใช้ใหม่
mysql> CREATE USER 'Jace'@'localhost' IDENTIFIED BY 'Jace123'; Query OK, 0 rows affected (0.67 sec)
2. ให้สิทธิ์ SELECT แบบ Global (*.*)
mysql> GRANT SELECT ON *.* TO 'Jace'@'localhost'; Query OK, 0 rows affected (0.58 sec)
3. ตรวจสอบสิทธิ์ที่ได้รับ
mysql> SHOW GRANTS FOR 'Jace'@'localhost';
4. ผลลัพธ์ที่ได้
+-------------------------------------------+ | Grants for Jace@localhost | +-------------------------------------------+ | GRANT SELECT ON *.* TO `Jace`@`localhost` | +-------------------------------------------+ 1 row in set (0.14 sec)
สรุป
การใช้ GRANT ... ON *.* จะให้สิทธิ์เข้าถึง ทุกฐานข้อมูลและทุกตาราง รวมถึงฐานข้อมูลที่จะสร้างใหม่ในอนาคตด้วย ควรใช้ด้วยความระมัดระวังและให้เฉพาะผู้ใช้ที่เชื่อถือได้เท่านั้น