کلمه عبور وردپرس را می توان به راحتی از طریق فرم ورود "Lost password" یا همان "فراموشی رمز عبور" وردپرس، تغییر داد. اما اگر کاربر وردپرس هیچ راهی برای دسترسی به آدرس ایمیل نداشته باشد، تغییر رمز عبور با استفاده از این روش ممکن است غیرممکن باشد. در چنین مواردی، کار به  تغییر رمز عبور یک حساب کاربری وردپرس تنها میتواند توسط یک مدیر سیستم با دسترسی کامل به برنامه پایگاه داده MySQL مدیریت شود.

در این مقاله، ما به شما نحوه تنظیم مجدد رمز عبور یک حساب کاربری وردپرس را از طریق خط فرمان MySQL در لینوکس نشان خواهیم داد.

 

قبل از ورود به سرویس پایگاه داده MySQL/MariaDB، ابتدا یک نسخه هش MD5 از رمز عبور جدید که به حساب کاربری مورد نظر اختصاص داده خواهد شد را با استفاده از فرمان زیر در ترمینال لینوکس خود ایجاد کنید.

echo -n "newpass" | md5sum

رشته "newpass" استفاده شده در این مثال را با رمز عبور قوی خودتان، جایگزین کنید. هش MD5 رمز عبور را در یک فایل کپی کنید؛ تا بعدا هش را در فیلد رمز عبور کاربر MySQL بنویسید.

پس از اینکه هش MD5 رمز عبور جدید را ایجاد کردید، به پایگاه داده MySQL با دسترسی root وارد شده و دستور زیر را به منظور شناسایی و انتخاب پایگاه داده وردپرس صادر نمایید. در این مورد پایگاه داده وردپرس، wordpress نامیده می شود.

mysql -u root -p
MariaDB [(none)]> show databases;
MariaDB [(none)]> use wordpress;

بعد دستور زیر را اجرا نمایید؛ تا جدولی که حساب های کاربری وردپرس در آن قرار دارند را شناسایی کنید. معمولا جدولی که تمام اطلاعات کاربران را ذخیره می کند، wp_users است.

به جدول wp_users، پرس‌و‌جو بزنید تا ID، نام عبور و رمز عبور تمام کاربران را بازیابی کنید و فیلد ID نام کاربری حسابی که باید رمز عبورش تغییر کند را شناسایی نمایید. مقدار ID نام کاربری، برای ادامه به روز رسانی رمز عبور مورد نیاز می شود.

MariaDB [(none)]> show tables;
MariaDB [(none)]> SELECT ID, user_login, user_pass FROM wp_users;

پس از اینکه ID کاربری که باید رمزعبورش تغییر کند را به درستی شناسایی نمودید، دستور زیر را وارد کنید تا رمز عبور او به روز شود. به جای ID و رمز عبور کاربر، هش MD5 مربوطه را قرار دهید.

در این مورد، ID کاربر 1 است و هش رمز عبور جدید عبارت است از: e6053eb8d35e02ae40beeeacef203c1a

MariaDB [(none)]> UPDATE wp_users SET user_pass= "e6053eb8d35e02ae40beeeacef203c1a" WHERE ID = 1;

در صورتی که شما در حال حاضر رمز عبور هش شده با MD5 ندارید، می توانید دستور MySQL UPDATE را با رمز عبور خود اجرا کنید، همانطور که در مثال زیر نشان داده شده است.
در این مورد، ما از تابع MySQL MD5() برای محاسبه هش MD5 رشته رمز عبور استفاده می کنیم.

MariaDB [(none)]> UPDATE wp_users SET user_pass = MD5('the_new_password') WHERE ID=1;

بعد از اینکه رمز عبور به روز رسانی شد، به جدول wp_users یک درخواست با ID کاربری که شما رمز عبورش را تغییر داده اید بزنید، تا اطلاعات پایگاه داده این کاربر را بازیابی کنید.

MariaDB [(none)]> SELECT ID, user_login, user_pass FROM wp_users WHERE ID = 1;

تبریک، عملیات تغییر رمز عبور با موفقیت انجام شد.

منبع: این