অ্যান্ড্রয়েড

কীভাবে mysql- এ ব্যবহারকারীদের তালিকা প্রদর্শন করতে হয়

সুচিপত্র:

Anonim

আপনার কি কখনও আপনার মাইএসকিউএল সার্ভারে সমস্ত ব্যবহারকারীর একটি তালিকা পাওয়ার দরকার আছে? ডাটাবেস এবং টেবিলগুলি দেখানোর জন্য কমান্ড রয়েছে তবে মাইএসকিউএল show users কমান্ড নেই।

এই টিউটোরিয়ালটি ব্যাখ্যা করে যে কমান্ড লাইনের মাধ্যমে মাইএসকিউএল ডাটাবেস সার্ভারে সমস্ত ব্যবহারকারীর অ্যাকাউন্টগুলি তালিকাভুক্ত করা যায়। কোন ইউজারকে প্রদত্ত ডেটাবেসটিতে অ্যাক্সেস রয়েছে তা কীভাবে খুঁজে পাবেন তা আমরা আপনাকে দেখাব।

তুমি শুরু করার আগে

আমরা ধরে নিচ্ছি যে আপনি ইতিমধ্যে আপনার সিস্টেমে মাইএসকিউএল বা মারিয়াডিবি সার্ভার ইনস্টল করেছেন।

সমস্ত কমান্ডগুলি রুট ব্যবহারকারী হিসাবে মাইএসকিউএল শেলের ভিতরে সম্পাদিত হয়। মাইএসকিউএল শেলটি অ্যাক্সেস করতে নিম্নলিখিত কমান্ডটি টাইপ করুন এবং অনুরোধ করা হলে আপনার মাইএসকিউএল রুট ব্যবহারকারী পাসওয়ার্ড লিখুন:

mysql -u root -p আপনি যদি নিজের মাইএসকিউএল রুট পাসওয়ার্ডটি ভুলে গেছেন তবে এই নির্দেশাবলী অনুসরণ করে আপনি এটি পুনরায় সেট করতে পারেন।

সমস্ত মাইএসকিউএল ব্যবহারকারীদের দেখান

মাইএসকিউএল mysql ডাটাবেসে user নামের একটি সারণীতে ব্যবহারকারীদের সম্পর্কে তথ্য সংরক্ষণ করে।

সমস্ত মাইএসকিউএল ব্যবহারকারীর অ্যাকাউন্টের একটি তালিকা পেতে, mysql.users সারণী থেকে সমস্ত সারি পুনরুদ্ধার করতে SELECT বিবৃতি ব্যবহার SELECT :

SELECT User, Host FROM mysql.user;

আউটপুট নীচের মত দেখতে হবে:

+------------------+-----------+ | user | host | +------------------+-----------+ | root | localhost | | luke | % | | yoda | % | | jabba | 10.10.0.6 | | jabba | 10.10.0.9 | | chewbacca | localhost | | leia | localhost | | han | localhost | +------------------+-----------+ 8 rows in set (0.00 sec)

উপরের কমান্ডটি mysql.user টেবিল ( User এবং Host ) থেকে মাত্র দুটি কলাম দেখায়, এই সারণীতে 40 টিরও বেশি কলাম যেমন Password , Select_priv , Update_priv ইত্যাদি রয়েছে Update_priv

মাইএসকিউএল এর একটি ব্যবহারকারীর অ্যাকাউন্টে দুটি অংশ থাকে: একটি ব্যবহারকারীর নাম এবং হোস্ট-নেম।

desc mysql.user; ব্যবহার করুন desc mysql.user; টেবিলের কলামগুলি সম্পর্কে তথ্য প্রদর্শন করতে বিবৃতি। একবার আপনি কলামের নাম জানার পরে, আপনি একটি নির্বাচিত ডেটার বিরুদ্ধে কোয়েরি চালাতে পারেন।

উদাহরণস্বরূপ, পাসওয়ার্ড সম্পর্কিত তথ্য এবং এটি সক্রিয় বা মেয়াদোত্তীর্ণ কিনা তা সহ সমস্ত মাইএসকিউএল ব্যবহারকারী অ্যাকাউন্টের একটি তালিকা পেতে, আপনি নিম্নলিখিত কোয়েরিটি ব্যবহার করবেন:

SELECT User, Host, Password, password_expired FROM mysql.user;

+----------------+-----------+-------------------------------------------+------------------+ | User | Host | Password | password_expired | +----------------+-----------+-------------------------------------------+------------------+ | root | localhost | | N | | luke | % | *ADC3B5B27617732CD6320A2DA976258E149A7EC8 | N | | yoda | % | *9550E004046348198A143A115550E1262209FB6F | N | | jabba | 10.10.0.6 | *F91C86B486B945C083B61A05FF6E197560D187EC | Y | | jabba | 10.10.0.9 | | Y | | chewbacca | localhost | *17F2B1E48029294841AD66772BEBB7E6E6A005AF | N | | leia | localhost | *74409C8DB55AC1A6829D801915981C46EDBFC64A | N | | han | localhost | *7B3022FCAEC3534CE67C68322D8AF0C240D95745 | N | +----------------+-----------+-------------------------------------------+------------------+ 8 rows in set (0.00 sec)

একটি বিশেষ ডেটাবেস অ্যাক্সেস আছে এমন ব্যবহারকারীদের দেখান

ডাটাবেস-স্তরের সুবিধাগুলি সম্পর্কিত তথ্য mysql.db সারণীতে সংরক্ষণ করা হয়।

কোন ব্যবহারকারীর প্রদত্ত ডেটাবেস এবং সুবিধাগুলির স্তরের অ্যাক্সেস রয়েছে তা জানতে আপনি টেবিলটি জিজ্ঞাসা করতে পারেন।

উদাহরণস্বরূপ, db_name নামক ডাটাবেসে কিছু স্তরের অ্যাক্সেস রয়েছে এমন সমস্ত ব্যবহারকারীর একটি তালিকা পেতে আপনি নিম্নলিখিত কোয়েরিটি ব্যবহার করবেন:

SELECT * FROM mysql.db WHERE Db = 'db_name'\G;

*************************** 1. row *************************** Host: localhost Db: db_name User: db_user Select_priv: Y Insert_priv: Y Update_priv: Y Delete_priv: Y Create_priv: Y Drop_priv: Y Grant_priv: N References_priv: Y Index_priv: Y Alter_priv: Y Create_tmp_table_priv: Y Lock_tables_priv: Y Create_view_priv: Y Show_view_priv: Y Create_routine_priv: Y Alter_routine_priv: Y Execute_priv: Y Event_priv: Y Trigger_priv: Y 1 row in set (0.00 sec)

সুযোগ-সুবিধাগুলি ব্যবহার না করে কেবলমাত্র প্রদত্ত ডাটাবেসে অ্যাক্সেস প্রাপ্ত ব্যবহারকারী অ্যাকাউন্ট সম্পর্কে তথ্য আনতে:

SELECT db, host, user FROM mysql.db WHERE db = 'db_name'

+---------+-----------+---------+ | db | host | user | +---------+-----------+---------+ | db_name | localhost | db_user | +---------+-----------+---------+

নিম্নলিখিত কোয়েরি আপনাকে সমস্ত ডাটাবেস এবং সম্পর্কিত ব্যবহারকারীদের সম্পর্কে তথ্য প্রদর্শন করবে:

SELECT db, host, user FROM mysql.db WHERE db = 'db_name'

+------------------+-----------+-----------+ | db | host | user | +------------------+-----------+-----------+ | db_name | localhost | db_user | | ghost_production | localhost | chewbacca | | blog_db | localhost | leia | | linuxize | localhost | han | +------------------+-----------+-----------+

উপসংহার

এই টিউটোরিয়ালে, আমরা কীভাবে সমস্ত মাইএসকিউএল ব্যবহারকারীর একটি তালিকা পেতে এবং কোনও নির্দিষ্ট ডাটাবেসে কোন ব্যবহারকারীদের অ্যাক্সেস রয়েছে তা খুঁজে বের করার পদ্ধতিটি দেখিয়েছি।

আপনার কোনও প্রশ্ন থাকলে নির্দ্বিধায় কোনও মন্তব্য করুন leave

mysql মারিয়াদব