از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش نمایش کاربران در MySQL و اطلاعات کاربر با استفاده از لینوکس
سرفصلهای مطلب
سرور پایگاه داده MySQL اغلب اولین انتخاب برای توسعه دهندگان و هر کسی است که علاقه مند به آزمایش یک زبان پرس و جو ساختاریافته است. MySQL دارای ویژگی های متعددی است که آن را قابل اعتماد، ایمن و کارآمد می کند.
با این حال، راه هایی برای بهبود امنیت سرور MySQL حتی بیشتر وجود دارد. یکی از آنها ایجاد کاربران پایگاه داده با دسترسی محدود است.
این آموزش توضیح می دهد که چرا باید حساب های کاربری MySQL جداگانه ایجاد کنید و چگونه از MySQL استفاده کنید نمایش کاربران فرمان روی VPS لینوکس شما.
چرا کاربران در MySQL Server ایجاد کنیم؟
هر زمان که کاربران یا مدیران پایگاه داده MySQL را نصب می کنند، اولین کاربری که ایجاد می شود کاربر ریشه است – مدیر MySQL. کاربر ریشه اجازه انجام همه کارها را خواهد داشت روی پایگاه داده MySQL
در حالی که داشتن همه مجوزها می تواند مفید به نظر برسد، انجام این کار با نقص های امنیتی خاص خود همراه است و اشتراک گذاری کاربر ریشه بین چندین نفر خطرناک است. هکرها اغلب سعی می کنند به عنوان کاربر اصلی وارد سیستم شوند و اطلاعات میزبانی شده را بدزدند یا حتی کل سرور MySQL را در کنار داده های آن از بین ببرند.
بنابراین، مدیران سیستم کاربرانی را با مجوزهای خاص ایجاد می کنند روی برخی از پایگاه های داده به عبارت دیگر، اگر اعتبار یک حساب به خطر بیفتد، تأثیر آن حداقل و قابل مدیریت خواهد بود.
روش نمایش کاربران در پایگاه داده MySQL روی لینوکس
برخلاف دستورات SHOW DATABASES یا SHOW TABLES که همه پایگاههای داده یا جداول را بلافاصله نمایش میدهند، دستور SHOW USERS در MySQL وجود ندارد. حتی اگر چنین دستوری وجود نداشته باشد، کاربران می توانند از پرس و جوی MySQL استفاده کنند و لیست کاملی از کاربران را در سرور پایگاه داده MySQL دریافت کنند.
برای اطلاعات بیشتر مراحل زیر را دنبال کنید.
1. به عنوان کاربر ریشه MySQL وارد شوید
با ورود به VPS از طریق SSH به عنوان کاربر اصلی شروع کنید. پس از انجام این کار، خط فرمان MySQL را با این دستور وارد کنید:
sudo mysql -u root -p
سپس رمز عبور ریشه MySQL خود را وارد کنید.
مهم! به خاطر داشته باشید که رمزهای عبور ریشه سیستم و MySQL جدا هستند و می توانند متفاوت باشند.
هنگامی که شما در MySQL هستید console به عنوان کاربر اصلی، می توانید پرس و جوهایی را برای نمایش سایر کاربران MySQL اجرا کنید.
2. از MySQL SHOW USERS Query استفاده کنید
برای نشان دادن کاربران MySQL ایجاد شده در سرور پایگاه داده از پرس و جو زیر استفاده کنید:
SELECT user FROM mysql.user;
در نتیجه، لیست تمامی کاربرانی که در MySQL ایجاد شده اند را مشاهده خواهید کرد.
توجه داشته باشید که ممکن است کاربران تکراری وجود داشته باشد. این به این دلیل است که MySQL دسترسی به سرور را با توجه به آدرس IP که از آن می آید فیلتر می کند.
شما همچنین می توانید یک را اضافه کنید host ستون برای دیدن اطلاعات بیشتر با استفاده از دستور زیر:
SELECT user,host FROM mysql.user;
با این کار می توانید کاربران MySQL و کدام را ببینید host یا آدرس IP که آنها اجازه دسترسی دارند. در مورد ما، همه کاربران از یک پایگاه داده محلی هستند:
3. اطلاعات بیشتر کاربر MySQL (اختیاری) را ببینید
اگر به اطلاعات بیشتری در مورد کاربران MySQL نیاز دارید، فرمان جستجو را می توان با کمک پرس و جوهای MySQL گسترش داد.
به عنوان مثال، دستور زیر تمام اطلاعات ممکن را از جدول کاربر چاپ می کند:
SELECT * FROM mysql.user;
با این حال، چنین خروجی ممکن است بیش از حد کثیف به نظر برسد. بنابراین، توصیه می کنیم با استفاده از پرس و جوهای خاص تر، جستجو را محدود کنید.
در اینجا چند مورد از محبوب ترین موارد استفاده آورده شده است:
پیش نمایش ستون های جدول
پرس و جوی زیر پیش نمایشی از ستون های جدول کاربر را نمایش می دهد. اگر کاربران بخواهند اطلاعات مربوط به یک جدول خاص را بررسی کنند، بسیار مفید است.
DESC mysql.user
نمایش فقط نام های کاربری منحصر به فرد
برای پرش از تکرار نام های کاربری، می توان از پرس و جو زیر استفاده کرد:
SELECT DISTINCT user FROM mysql.user;
انقضای رمز عبور و وضعیت قفل شدن حساب
برای بررسی وضعیت انقضای رمز عبور و وضعیت قفل شدن حساب، از این پرس و جو استفاده کنید:
SELECT user, account_locked, password_expired FROM mysql.user;
نمایش کاربران ثبتشده فعلی و فعلی
کاربر فعلی را می توان با پرس و جو زیر نمایش داد:
SELECT current_user();
اگر به اطلاعات بیشتری نیاز دارید، می توانید پرس و جو را تغییر دهید تا کاربرانی که در حال حاضر وارد سیستم شده اند را با وضعیت آنها نمایش دهید. این دستور برای یافتن کاربران بیکار که از منابع زیادی استفاده می کنند مفید است.
SELECT user,host, command FROM information_schema.processlist;
نتیجه
مدیریت یک سرور پایگاه داده می تواند کار چالش برانگیزی باشد. بنابراین، مدیران پایگاه داده باید در هنگام ایجاد و مدیریت مجوزهای کاربر مراقب باشند.
MySQL نمایش کاربران دستور به مدیران اجازه می دهد تا کاربران MySQL را در کنار سایر اطلاعات مهم مشاهده کنند.
برای جمع بندی، ما اصول اولیه روش نشان دادن کاربران MySQL را که به یک پایگاه داده متصل هستند پوشش داده ایم و یاد گرفته ایم که چگونه:
- همه کاربران ایجاد شده در پایگاه داده MySQL را فهرست کنید
- پیش نمایش ستون های جدول پایگاه داده MySQL
- فقط نام های کاربری منحصر به فرد را در یک جدول نمایش دهید
- انقضای رمز عبور و وضعیت قفل شدن حساب را بررسی کنید
- نمایش کاربران فعلی و وارد شده در حال حاضر در پایگاه داده MySQL
امیدواریم این آموزش برای شما مفید بوده باشد. اگر سؤال یا دیدگاه دیگری دارید، در بخش نظرات زیر با ما در میان بگذارید.
درباره سیستم های مدیریت پایگاه داده بیشتر بدانید
DBMS چیست: راهنمای کامل
روش نصب phpMyAdmin روی CentOS 7
روش نصب MongoDB روی اوبونتو
آپاچی کاساندرا: آموزشی برای مبتدیان
روش نصب PostgreSQL روی اوبونتو
روش نصب phpMyAdmin روی اوبونتو
روش نصب PostgreSQL روی CentOS 7
MySQL Show Users FAQ
چگونه می توانم همه کاربران MySQL و رمزهای عبور را ببینم؟
پرس و جوی SQL زیر را انجام دهید:
mysql> انتخاب کاربر، رمز عبور، host از mysql کاربر
این پرس و جو لیستی از کاربران، نام کاربری، رمز عبور و پایگاه داده آنها را نشان می دهد host.
چگونه کاربران را در MySQL MariaDB نشان دهم؟
با کلاینت mysql به عنوان کاربر ریشه وارد سرور MariaDB/MySQL خود شوید. پرس و جو زیر را تایپ کنید:
$ mysql -u root –p
یا
$ mysql –u root –h localhost – p mysql
کاربران در کجای MySQL ذخیره می شوند؟
MySQL کاربران را در جدول کاربر در پایگاه داده ذخیره می کند.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-29 13:10:05