নতুন ইউজার তৈরি করে সকল প্রivilেজ দিয়েও যদি অ্যাক্সেস ডেনাইড হয়, তবে FLUSH PRIVILEGES কমান্ড চালাতে হয়। এটি প্রivilেজ ক্যাশ রিফ্রেশ করে।
সমাধান
FLUSH PRIVILEGES;
সম্পূর্ণ প্রক্রিয়া
১. নতুন ইউজার তৈরি করুন
mysql> CREATE USER 'Bob'@'%' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.56 sec)
২. সকল প্রivilেজ দিন
mysql> GRANT ALL PRIVILEGES ON *.* TO 'Bob'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.23 sec)
৩. প্রivilেজ ফ্লাশ করুন (গুরুত্বপূর্ণ!)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.14 sec)
পরिणাম
এখন 'Bob' ইউজার পাসওয়ার্ড '123456' দিয়ে যেকোনো হোস্ট (% wildcard) থেকে কানেক্ট করতে পারবে।
গুরুত্বপূর্ণ নোট:
- MySQL 8.0+ এ
GRANTস্টেটমেন্ট আপডেটেড প্রivilেজ সিস্টেমে অটোমেটিকলি ফ্লাশ করে, তবুওFLUSH PRIVILEGESচালানো ভালো প্র্যাক্টিস। %হোস্ট মানে যেকোনো আইপি থেকে কানেকশন আլাউ। সিকিউরিটির জন্য নির্দিষ্ট হোস্ট বা IP ব্যবহার করুন (যেমন:'Bob'@'localhost'বা'Bob'@'192.168.1.%')।WITH GRANT OPTIONদিলে ইউজার অন্যদের প্রivilেজ দিতে পারবে - সতর্কতার সাথে ব্যবহার করুন।