فراموش کردن رمزهای عبور برای اکثر ما اتفاق می افتد. اگر رمز عبور ریشه برای ورود به پایگاه داده MySQL یا MariaDB خود را فراموش یا گم کرده اید، در صورت دسترسی به سرور مجازی و یک حساب کاربری دارای قابلیت sudo ، باز هم می توانید دسترسی پیدا کرده و پسورد را ریست کنید.
در این آموزش نحوه تنظیم مجدد رمز عبور ریشه برای نسخه های قدیمی تر و جدیدتر MySQL و MariaDB ارائه می شود.
پیش نیازها
برای بازیابی رمز عبور ریشه MySQL / MariaDB ، به این موارد نیاز دارید:
• دسترسی به سرور مجازی لینوکس که MySQL یا MariaDB را با یک کاربر sudo اجرا کند.
مرحله 1 – شناسایی نسخه بانک اطلاعاتی
بیشتر توزیع های مدرن لینوکس با MySQL یا MariaDB همراه هستند ، یک جایگزین محبوب که کاملاً با MySQL سازگار است. بسته به پایگاه داده استفاده شده و نسخه آن ، برای بازیابی رمز اصلی باید از دستورات مختلفی استفاده کنید.
می توانید نسخه خود را با دستور زیر بررسی کنید:
$ mysql –version
خروجی مانند این را برای MySQL مشاهده خواهید کرد:
MySQL output
mysql Ver 14.14 Distrib 5.7.16, for Linux (x86_64) using EditLine wrapper
یا خروجی مانند این برای MariaDB:
MariaDB output
mysql Ver 15.1 Distrib 5.5.52-MariaDB, for Linux (x86_64) using readline 5.1
توجه داشته باشید که کدام بانک اطلاعاتی و کدام نسخه را اجرا می کنید ، زیرا بعداً از آنها استفاده خواهید کرد. در مرحله بعد باید پایگاه داده را متوقف کنید تا بتوانید به صورت دستی به آن دسترسی پیدا کنید.
مرحله 2 – توقف سرور مجازی بانک اطلاعاتی
برای تغییر رمز عبور ریشه ، باید از قبل سرور مجازی پایگاه داده را خاموش کنید.
می توانید با دستور زیر این کار را برای MySQL انجام دهید:
$ sudo systemctl stop mysql
و برای MariaDB با:
$ sudo systemctl stop mariadb
پس از متوقف کردن سرور مجازی پایگاه داده ، برای تنظیم مجدد رمزعبور ریشه به صورت دستی به آن دسترسی پیدا می کنید.
مرحله 3 – راه اندازی مجدد سرور مجازی بانک اطلاعاتی بدون بررسی مجوز
اگر MySQL و MariaDB را بدون بارگذاری اطلاعات در مورد امتیازات کاربر اجرا کنید ، به شما این امکان را می دهد تا بدون ارائه رمز عبور ، به خط فرمان پایگاه داده با امتیازات اصلی دسترسی پیدا کنید. این امر به شما امکان می دهد بدون شناختن آن به پایگاه داده دسترسی پیدا کنید.
برای انجام این کار ، شما باید از بارگذاری جداول امتیازدهی ، که اطلاعات امتیازات کاربر را ذخیره می کند ، توسط پایگاه داده جلوگیری کنید. از آنجا که این کار کمی خطر امنیتی دارد ، باید از ایجاد شبکه نیز صرفنظر کنید تا از اتصال سایر کلاینت ها جلوگیری کنید.
پایگاه داده را بدون لود جداول امتیاز یا فعال کردن شبکه شروع کنید:
$ sudo mysqld_safe –skip-grant-tables –skip-networking &
علامت & در انتهای این دستور باعث می شود این روند در پس زمینه اجرا شود ، بنابراین می توانید به استفاده از ترمینال خود ادامه دهید.
اکنون می توانید به عنوان کاربر اصلی به بانک اطلاعاتی متصل شوید که نباید از شما پسورد بخواهد.
$ mysql -u root
در عوض بلافاصله پوسته پایگاه داده را مشاهده خواهید کرد.
MySQL prompt
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
MariaDB prompt
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
MariaDB [(none)]>
اکنون که دسترسی ریشه دارید ، می توانید رمز عبور اصلی را تغییر دهید.
مرحله 4 – تغییر رمز عبور Root
یک روش ساده برای تغییر رمز عبور اصلی برای نسخه های مدرن MySQL ، استفاده از دستور ALTER USER است. با این حال ، این دستور اکنون کار نمی کند زیرا جداول امتیاز لود نمی شوند.
بیایید به سرور مجازی پایگاه داده بگوییم که جداول امتیاز را با صدور فرمان FLUSH PRIVILEGES مجدد لود کند.
Mysql> FLUSH PRIVILEGES;
اکنون می توانیم کلمه عبور اصلی را تغییر دهیم.
برای MySQL 5.7.6 و نسخه های جدیدتر و همچنین MariaDB 10.1.20 و جدیدتر از دستور زیر استفاده کنید.
Mysql> ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new_password’;
برای MySQL 5.7.5 و نسخه های قبل تر و همچنین MariaDB 10.1.20 و قبل تر از این دستور استفاده کنید:
Mysql> SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘new_password’);
حتماً new_password را با رمز جدید انتخابی خود جایگزین کنید.
توجه: اگر فرمان ALTER USER کار نکند ، معمولاً نشان دهنده یک مشکل بزرگتر است. با این حال ، می توانید UPDATE …SET را امتحان کنید تا رمزعبور ریشه را تنظیم کنید.
Mysql> UPDATE mysql.user SET authentication_string = PASSWORD(‘new_password’) WHERE User = ‘root’ AND Host = ‘localhost’;
به یاد داشته باشید که جدولهای اعطای امتیاز را پس از این مجدد لود کنید.
در هر صورت ، باید تأیید کنید که فرمان با موفقیت انجام شده است.
Output
Query OK, 0 rows affected (0.00 sec)
گذرواژه تغییر کرده است ، بنابراین شما هم اکنون می توانید نمونه دستی سرور مجازی پایگاه داده را متوقف کرده و آن را به حالت قبل ریستارت کنید.
مرحله 5 – سرور مجازی پایگاه داده را به طور عادی ریستارت کنید
ابتدا نمونه سرور مجازی پایگاه داده را که به طور دستی در مرحله 3 شروع کرده اید متوقف کنید. این دستور PID یا شناسه پردازش MySQL یا MariaDB را جستجو میکند و SIGTERM را ارسال می کند تا به آن بگوید که پس از انجام عملیات پاکسازی از آن خارج شود. در این لینک آموزش مدیریت فرآیند لینوکس می توانید اطلاعات بیشتری کسب کنید.
برای MySQL ، از این دستور استفاده کنید:
$ sudo kill `cat /var/run/mysqld/mysqld.pid`
برای MariaDB :
$ sudo kill `/var/run/mariadb/mariadb.pid`
سپس سرویس را با استفاده از systemctl مجدداً راه اندازی کنید.
برای MySQL ، از این دستور استفاده کنید:
$ sudo systemctl start mysql
برای MariaDB :
$ sudo systemctl start mariadb
اکنون می توانید با این دستور تأیید کنید که رمز عبور جدید به صورت صحیح اعمال شده است:
$ mysql -u root -p
این دستور باید رمز عبور تازه تخصیص یافته را از شما بخواهد. پسورد را وارد کنید ، و باید همانطور که انتظار می رود ، به دیتابیس دسترسی پیدا کنید.
نتیجه
اکنون دسترسی ادمین به MySQL یا سرور مجازی MariaDB بازگردانی شده است. اطمینان حاصل کنید که رمزعبور ریشه جدیدی که انتخاب کرده اید قوی و ایمن است و آن را در جای امن نگه دارید.
از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :
نصب و پیکربندی Ansible در اوبونتو 18.04 – نصب MySQL در اوبونتو 18.04
نظارت بر سلامت سرور با Checkmk در اوبونتو – اجرای چند نسخه PHP بر روی یک سرور
نصب Nginx، MySQL، PHP در CentOS 7 – نصب و پیکربندی Elasticsearch در اوبونتو 18.04
راه اندازی سرور اولیه با اوبونتو 20.04 – تنظیم کلیدهای SSH در Ubuntu 20.04
نصب و استفاده از PostgreSQL در اوبونتو 20.0 – نحوه نصب MySQL در اوبونتو 20.04
نصب Python 3 روی سرور Ubuntu 18.04 – نحوه نصب Python 3 روی سرور Ubuntu 20.04
نصب Linux،Apache،MySQL،PHP LAMP در اوبونتو 20.04 – نصب وب سرور Apache در CentOS 8
نحوه نصب Drupal با Docker Compose – نحوه نصب Nginx در اوبونتو 20.04
7 مورد از اقدامات امنیتی برای محافظت از سرورهای شما – نحوه نصب و ایمن سازی Redis در اوبونتو 20.04
نحوه نصب و ایمن سازی Redis در اوبونتو 18.04 – اضافه کردن فضای Swap در اوبونتو 20.04
چگونه می توان فایروال را با UFW در اوبونتو 20.04 تنظیم کرد – نظارت بر اطلاعیه و مسیر BGP با BGPalerter اوبونتو 18.04
نصب و ایمن سازی phpMyAdmin در اوبونتو 20.04 – نصب و استفاده از Composer در اوبونتو 20.04
ریست کردن رمز ورود ریشه MySQL یا MariaDB – استفاده از نوع داده MySQL BLOB برای ذخیره تصاویر
نصب Nginx در اوبونتو 18.04 – نصب توزیع Anaconda پایتون در اوبونتو 20.04
نحوه نصب جاوا با Apt در اوبونتو 18.04 – نحوه نصب Django و تنظیم محیط توسعه در اوبونتو 16.04
نصب جنگو و تنظیم محیط توسعه در اوبونتو 20.04 – نحوه ایجاد سرور Minecraft در اوبونتو 18.04
نحوه راه اندازی یک پروژه Node با Typescript – نحوه نصب و پیکربندی VNC در اوبونتو 18.04
ایجاد یک برنامه Django و اتصال آن به یک بانک اطلاعاتی – نصب و پیکربندی VNC در اوبونتو 20.04
نصب MariaDB در اوبونتو 20.04 – فعال سازی و اتصال رابط کاربری Django
تنظیم پلتفرم Cloud IDE کد سرور را در اوبونتو 18.04 – پیکربندی Apache HTTP با رویداد MPM و PHP-FPM
کلمات کلیدی خرید سرور
خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان –
https://vpsgol.net/product/vps-germany/
https://vpsgol.net/product/vps-usa/
https://vpsgol.net/product/vps-france/
https://vpsgol.net/product/vps-canada/
https://vpsgol.net/product/vps-poland/
https://vpsgol.net/product/vps-netherlands/
https://vpsgol.net/product/vps-england/