কম্পিউটার টিউটোরিয়াল

MySQL-এ নির্দিষ্ট ইউজারের প্রivilেজ (Grants) চেক করা


MySQL-এ SHOW GRANTS দিয়ে ইউজার অধিকার দেখানো

MySQL-এ কোনো নির্দিষ্ট ইউজারের কী কী পারমিশন (privileges) আছে তা দেখতে SHOW GRANTS FOR কমান্ড ব্যবহার করা হয়। এটি সিকিউরিটি অডিট ও ইউজার ম্যানেজমেন্টের জন্য অত্যন্ত গুরুত্বপূর্ণ।

সিনট্যাক্স

SHOW GRANTS FOR 'yourUserName'@'yourHostName';

উদাহরণ সহ ব্যাখ্যা

রুট ইউজারের প্রিভিলেজ দেখি:

mysql> SHOW GRANTS;
+----------------------------------------------------------------------------------------------------------------------------------+
| Grants for root@%                                                                                                                |
+----------------------------------------------------------------------------------------------------------------------------------+
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ... ON *.* TO `root`@`%` WITH GRANT OPTION                                   |
| GRANT BACKUP_ADMIN, BINLOG_ADMIN, ... ON *.* TO `root`@`%` WITH GRANT OPTION                                                     |
+----------------------------------------------------------------------------------------------------------------------------------+

নির্দিষ্ট ইউজার (JOHN@%) এর প্রিভিলেজ:

mysql> SHOW GRANTS FOR 'JOHN'@'%';
+----------------------------------------------------------------------------------------------------------------------------------+
| Grants for JOHN@%                                                                                                                |
+----------------------------------------------------------------------------------------------------------------------------------+
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES,   |
| SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW,             |
| CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, CREATE ROLE, DROP ROLE ON *.* TO `JOHN`@`%`        |
| WITH GRANT OPTION                                                                                                                |
| GRANT BACKUP_ADMIN, BINLOG_ADMIN, CONNECTION_ADMIN, ENCRYPTION_KEY_ADMIN, GROUP_REPLICATION_ADMIN, PERSIST_RO_VARIABLES_ADMIN,   |
| REPLICATION_SLAVE_ADMIN, RESOURCE_GROUP_ADMIN, RESOURCE_GROUP_USER, ROLE_ADMIN, SET_USER_ID, SYSTEM_VARIABLES_ADMIN,             |
| XA_RECOVER_ADMIN ON *.* TO `JOHN`@`%` WITH GRANT OPTION                                                                          |
+----------------------------------------------------------------------------------------------------------------------------------+

দ্রষ্টব্য: হোস্টনেম '%' মানে যেকোনো হোস্ট থেকে কানেক্ট করতে পারবে। নির্দিষ্ট আইপি বা হোস্টের জন্য সেটি উল্লেখ করুন।

  1. MySQL-এ SHOW GRANTS দিয়ে নির্দিষ্ট ইউজারের সব 권한 (Grants) দেখানো

  2. MySQL-এ IS NOT NULL দিয়ে কলামে NULL বা NOT NULL চেক করা

  3. MySQL-এ ORDER BY এবং LIMIT ব্যবহার করে নির্দিষ্ট ইউজারের লগইন টাইম আপডেট করা

  4. MySQL-এ ডেটাবেস তৈরি করে ইউজার তৈরি এবং গ্রান্ট পারমিশন দেওয়া