آموزشسیستم مدیریت محتوا

آموزش تغییر رمز مدیر سایت از طریق دیتابیس در سی‌پنل (phpMyAdmin)

اگر به پیشخوان وردپرس دسترسی ندارید یا ایمیل بازیابی رمز کار نمی‌کند، می‌توانید رمز کاربر مدیر را مستقیماً از دیتابیس در سی‌پنل تغییر دهید. در این راهنما گام‌به‌گام و به زبان ساده این کار را انجام می‌دهیم.

چه زمانی به این روش نیاز داریم؟

  • رمز عبور مدیر را فراموش کرده‌اید و ایمیل بازیابی ارسال نمی‌شود.
  • ایمیل کاربر مدیر تغییر کرده یا به آن دسترسی ندارید.
  • سایت هک شده و می‌خواهید سریعاً رمز مدیر را عوض کنید.
  • صفحه ورود (wp-login.php) خطا می‌دهد یا لینک بازیابی منقضی می‌شود.

⚠️ پیش از هر کاری از دیتابیس بکاپ بگیرید. یک اشتباه کوچک در جدول کاربران می‌تواند دسترسی شما را قطع کند.

پیش‌نیازها

  • دسترسی به کنترل‌پنل هاست (cPanel) با نام کاربری و رمز عبور
  • دانستن نام دیتابیس سایت (در فایل wp-config.php قابل مشاهده است)
  • یک رمز عبور قوی جدید (حداقل ۱۲ کاراکتر، ترکیب حرف بزرگ و کوچک، عدد و کاراکتر ویژه)

گام ۱: ورود به سی‌پنل

  1. در مرورگر آدرس https://yourdomain.com/cpanel یا https://yourdomain.com:2083 را باز کنید.
  2. نام کاربری و رمز عبور هاست را وارد کنید.
  3. پس از ورود، به بخش Databases بروید.

گام ۲: پیدا کردن نام دیتابیس سایت

  1. در سی‌پنل وارد File Manager شوید.
  2. به مسیر public_html بروید.
  3. فایل wp-config.php را انتخاب و روی Edit کلیک کنید.
  4. مقدار خطوط زیر نام دیتابیس و پیشوند جدول‌های شماست:
define( 'DB_NAME', 'user_wp123' );
define( 'DB_USER', 'user_wpuser' );
$table_prefix = 'wp_';

💡 مقدار $table_prefix را هم یادداشت کنید. معمولاً wp_ است، اما ممکن است چیزی مانند wp7x_ باشد. نام جدول کاربران شما به شکل PREFIX_users خواهد بود.

گام ۳: باز کردن phpMyAdmin

  1. در سی‌پنل، در بخش Databases روی phpMyAdmin کلیک کنید.
  2. در ستون کناری، روی نام دیتابیس سایت کلیک کنید.
  3. فهرست جدول‌ها نمایش داده می‌شود.

گام ۴: پیدا کردن کاربر مدیر در جدول users

  1. روی جدول wp_users کلیک کنید.
  2. ردیف کاربر مدیر را با کمک ستون user_login یا user_email پیدا کنید.
  3. مقدار ID آن کاربر را یادداشت کنید (معمولاً ۱).
ستون توضیح
ID شناسه یکتای کاربر
user_login نام کاربری برای ورود
user_pass رمز عبور رمزنگاری‌شده
user_email ایمیل کاربر
display_name نام نمایشی

گام ۵: تغییر رمز عبور (روش گرافیکی)

  1. در ردیف کاربر مدیر، روی Edit (ویرایش) کلیک کنید.
  2. به فیلد user_pass بروید.
  3. مقدار قبلی را کامل حذف کنید و رمز جدید را به‌صورت متن ساده بنویسید (مانند MyNewPass!2026).
  4. در ستون Function روبه‌روی user_pass، از لیست کشویی گزینه MD5 را انتخاب کنید.
  5. روی Go کلیک کنید.

✅ پیام ۱ row affected نشان می‌دهد تغییر با موفقیت انجام شده است.

گام ۶: تغییر رمز با دستور SQL (روش سریع‌تر)

در phpMyAdmin و پس از انتخاب دیتابیس، روی تب SQL کلیک کنید و دستور زیر را اجرا کنید:

UPDATE wp_users
SET user_pass = MD5('MyNewPass!2026')
WHERE user_login = 'admin';

اگر پیشوند جدول‌ها متفاوت است، آن را جایگزین کنید:

UPDATE wp7x_users
SET user_pass = MD5('MyNewPass!2026')
WHERE ID = 1;

گام ۷: ورود و ایمن‌سازی رمز

  1. به آدرس https://yourdomain.com/wp-admin بروید.
  2. با نام کاربری و رمز جدید وارد شوید.
  3. به کاربران → پروفایل شما بروید و یک‌بار دیگر از داخل وردپرس رمز را تغییر دهید.

🔒 چرا این کار مهم است؟ MD5 الگوریتمی قدیمی و ضعیف است. وردپرس هنگام اولین ورود موفق، رمز را به الگوریتم امن‌تر (bcrypt/phpass) تبدیل می‌کند، اما تغییر مجدد از پیشخوان مطمئن‌ترین راه است.

روش جایگزین: ساخت کاربر مدیر جدید از دیتابیس

اگر ردیف کاربر مدیر حذف شده یا آسیب دیده است:

INSERT INTO wp_users
(user_login, user_pass, user_nicename, user_email, user_registered, user_status, display_name)
VALUES
('newadmin', MD5('MyNewPass!2026'), 'newadmin', 'admin@yourdomain.com', NOW(), '0', 'New Admin');

سپس شناسه کاربر جدید را برداشته و دسترسی مدیریت را به آن بدهید:

INSERT INTO wp_usermeta (user_id, meta_key, meta_value)
VALUES
(10, 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}'),
(10, 'wp_user_level', '10');

❗ عدد ۱۰ را با ID واقعی کاربر جدید و wp_ را با پیشوند جدول‌های خود جایگزین کنید.

رفع مشکلات رایج

رمز جدید را وارد می‌کنم اما وارد نمی‌شوم

  • مطمئن شوید در ستون Function گزینه MD5 انتخاب شده باشد؛ وگرنه رمز به‌صورت متن ساده ذخیره شده و کار نمی‌کند.
  • کش مرورگر و کوکی‌ها را پاک کنید.
  • کش افزونه‌های امنیتی یا کش سرور (LiteSpeed / Varnish) را خالی کنید.

پیام «مجوز دسترسی به این صفحه را ندارید» می‌گیرم

یعنی رمز درست است اما نقش کاربر مدیر نیست. در جدول wp_usermeta مقدار wp_capabilities باید برابر a:1:{s:13:"administrator";b:1;} باشد.

جدول wp_users را پیدا نمی‌کنم

  • ممکن است پیشوند جدول‌ها متفاوت باشد؛ فایل wp-config.php را بررسی کنید.
  • ممکن است دیتابیس اشتباهی را باز کرده باشید؛ وجود چند دیتابیس روی یک هاست معمول است.

خطای دسترسی در phpMyAdmin

اگر کاربر دیتابیس مجوز کافی ندارد، در بخش MySQL Databases سی‌پنل کاربر را به دیتابیس اضافه کنید و گزینه ALL PRIVILEGES را فعال کنید.

نکات امنیتی مهم

  • پیش از هر تغییر، از دیتابیس Export بگیرید (تب Export در phpMyAdmin).
  • نام کاربری admin را تغییر دهید؛ این نام هدف اصلی حملات Brute Force است.
  • ورود دومرحله‌ای (۲FA) را فعال کنید.
  • رمزها را در یک مدیر رمز نگه دارید، نه در فایل متنی روی هاست.
  • اگر سایت هک شده بود، رمز هاست، FTP و کاربر دیتابیس را هم عوض کنید و مقادیر SALT در wp-config.php را تازه کنید تا همه نشست‌ها خارج شوند.

پرسش‌های پرتکرار

این روش برای همه سایت‌ها کار می‌کند؟

این راهنما برای وردپرس نوشته شده است. در سیستم‌های دیگر (جوملا، پرستاشاپ و غیره) ساختار جدول و الگوریتم رمزنگاری متفاوت است.

MD5 امن است؟

خیر. MD5 فقط به‌عنوان راهی موقت برای بازگرداندن دسترسی استفاده می‌شود. بلافاصله پس از ورود، رمز را از داخل پیشخوان عوض کنید.

داده‌های سایت از بین می‌رود؟

خیر. تغییر مقدار user_pass فقط رمز عبور یک کاربر را عوض می‌کند و به مطالب، نوشته‌ها یا تنظیمات سایت آسیبی نمی‌زند.

خلاصه در یک نگاه

ورود به سی‌پنل ← phpMyAdmin ← انتخاب دیتابیس ← جدول wp_users ← ویرایش ردیف کاربر مدیر ← نوشتن رمز جدید در user_pass با تابع MD5 ← ذخیره ← ورود به wp-admin و تغییر مجدد رمز.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *