MySQL-এ নির্দিষ্ট ইউজারকে কোনো ডেটাবেসের সকল স্টোরড প্রসিডিউর (এবং ফাংশন) এক্সিকিউট করার অনুমতি দিতে GRANT EXECUTE ON database.* TO 'user'@'host' ব্যবহার করা হয়।
ইউজার লিস্ট দেখানো
mysql> SELECT user, host FROM mysql.user;
আউটপুট (আংশিক)
+------------------+-----------+ | user | host | +------------------+-----------+ | Bob | % | | Charlie | % | | Robert | % | | root | % | | Adam Smith | localhost | | Chris | localhost | | ... | ... | +------------------+-----------+ 20 rows in set (0.00 sec)
'Robert'@'%' কে web ডেটাবেসের সব প্রসিডিউর এক্সিকিউট করার অনুমতি
mysql> GRANT EXECUTE ON web.* TO 'Robert'@'%';
আউটপুট
Query OK, 0 rows affected (0.24 sec)
ব্যাখ্যা: GRANT EXECUTE ON web.* — web ডেটাবেসের সকল রুটিন (PROCEDURE, FUNCTION) এক্সিকিউট করার অনুমতি। TO 'Robert'@'%' — ইউজার 'Robert' যেকোনো হост (%) থেকে।
অন্যান্য গ্রান্ট উদাহরণ:
GRANT SELECT, INSERT ON db.* TO 'user'@'host';— নির্দিষ্ট প্রিভিলেজ।GRANT ALL PRIVILEGES ON db.* TO 'user'@'host';— সব প্রিভিলেজ (GRANT OPTION ছাড়া)।GRANT ALL PRIVILEGES ON *.* TO 'user'@'host' WITH GRANT OPTION;— সুপার ইউজার (সতর্কতা: নিরাপত্তা ঝুঁকি)।
প্রিভিলেজ রিভোক করা: REVOKE EXECUTE ON web.* FROM 'Robert'@'%';
দেখতে: SHOW GRANTS FOR 'Robert'@'%'; (আর্টিকেল ১০০৬০৭৩৯১৫参照)