بهینه سازی دیتابیس وردپرس

مشخصات مقاله:
بروزرسانی: آبان ۱۴۰۴
بهینه سازی دیتابیس وردپرس
فهرست مطالب

مقدمه‌

با استفاده از کنترل پنل هاست و افزونه‌های محبوب مثل WP Rocket و WP-Optimize، بهینه سازی دیتابیس وردپرس شما سبک‌تر،و سریعتر میشود 🚀

روش بهینه‌سازی سطح پیچیدگی مناسب برای
phpMyAdmin در هاست متوسط تا پیشرفته کاربران حرفه‌ای
افزونه WP Optimize متوسط کاربران نیمه‌حرفه‌ای
افزونه WP Rocket آسان مبتدیان و کاربران عمومی

پادکست 

 

پاکسازی پایگاه داده وردپرس

دیتابیس وردپرس چیست ؟

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

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

  • بازبینی‌های پست (Post Revisions): وردپرس به طور پیش‌فرض هر بار که پستی را ذخیره می‌کنید، یک نسخه کامل از آن را نگه می‌دارد. این نسخه‌ها به سرعت جداول شما را پر می‌کنند.
  • داده‌های موقت (Transients): اطلاعات کش شده‌ای که باید منقضی شوند اما گاهی اوقات باقی می‌مانند.
  • دیدگاه‌های اسپم و زباله: دیدگاه‌هایی که به بخش زباله‌دان یا اسپم منتقل شده‌اند اما هنوز در دیتابیس جا خوش کرده‌اند.

تشخیص حجم دیتابیس

در ادامه چند ابزار مفید برای بررسی سرعت کوئری‌ها و حجم دیتابیس در سایت‌های وردپرسی به‌صورت تیتر وار آورده شده است:

  • WP-Optimize (افزونه)مشاهده حجم جداول و بهینه‌سازی خودکار

  • WP DB Manager (افزونه)گزارش حجم جداول، پشتیبان‌گیری و تعمیر دیتابیس

  • phpMyAdmin :نمایش دقیق حجم هر جدول و اجرای دستورات EXPLAIN برای کوئری‌ها

دایرکت ادمین

اندازه دیتابیس

در سی پنل هم همینطور بدنبال database بگردید

روش بهینه‌سازی سطح پیچیدگی مناسب برای
WP-CLI (خط فرمان) پیشرفته توسعه‌دهندگان 
phpMyAdmin هاست سخت کاربران حرفه‌ای
افزونه WP Optimize متوسط اماتور
افزونه WP Rocket اسان همگانی

دسته بندی انواع دیتابیس

  • تا ۲۰۰ مگابایت سبک
  • ۲۰۰-۵۰۰ متوسط
  • ۵۰۰ تا ۲ گیگاابایت بزرگ
  • بالاتر از ۲ گیگ سنگین

حجم پایگاه داده

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

این کار نه تنها حجم غیرضروری را کاهش می‌دهد، بلکه سرعت کوئری‌ها را به شکل چشمگیری افزایش داده و در نهایت، تجربه کاربری سریع‌تر و بهتری را برای بازدیدکنندگان شما به ارمغان می‌آورد.

  • کاهش حجم غیرضروری: با هر نصب و حذف افزونه، جداول و ردیف‌های بلااستفاده در دیتابیس باقی می‌مانند.

  • افزایش سرعت واکشی: جداول پراکنده یا پرشده از داده‌های بی‌فایده، کوئری‌ها را کند می‌کنند.

  • بهبود عملکرد سایت: صفحات سریع‌تر لود می‌شوند و تجربه کاربری مثبت‌تر خواهد بود.

بهینه‌سازی دیتابیس از طریق کنترل پنل هاست

اولین راه برای بهینه‌سازی دیتابیس وردپرس اینه که از کنترل پنل هاستتون استفاده کنید. فرقی نمی‌کنه از cPanel استفاده می‌کنید یا DirectAdmin

مقاله مرتبط:  افزونه مدیریت پروژه در وردپرس

مراحل بهینه‌سازی با phpMyAdmin

  1. ورود به هاست: وارد کنترل پنل هاستتون بشید و phpMyAdmin رو پیدا کنید.

  2. انتخاب دیتابیس: توی phpMyAdmin، دیتابیس سایت وردپرستون رو از لیست سمت چپ انتخاب کنید.

  3. بررسی جداول: جداول رو نگاه کنید. جداولی که با پیشوند wp_ یا اسم افزونه‌های قدیمی شروع می‌شن، ممکنه دیگه لازم نباشن. مثلاً اگه افزونه‌ای رو پاک کردید، جدولش هنوز توی دیتابیس مونده.

  4. حذف جداول غیرضروری: جداول مربوط به افزونه‌هایی که دیگه استفاده نمی‌کنید رو انتخاب کنید و با گزینه “Delet” حذفشون کنید.

حذف دیتابیس

مثلا: افزونه بوکلی⬆️ که حذف شده بود.ولی جداولش دردیتابیس مونده بود😂

بهینه‌سازی جداول ووکامرس

برای بهینه‌سازی جداولی مانند ووکامرس، تیک گزینه های wocomerce یا wc را بزنید  و از منوی کشویی پایین with selected- گزینه ، “Optimize table” رو انتخاب کنید تا بهینه بشن.⭐این مرحله ممکن داده های و متاهای محصولات و کاربران را تصادفی بهم ریز یا پاک کند که در اینده ممکن بفهمید! خلاصه حرکت ریسکی!🔥

  • داخل wp-option دنبال تنظیمات ووکامرس بگردید
  • اگر به اشتباه ووکامرس را نصب کرده اید یا دیگر لازم ندارید. جتما تمام جداول مرتبط WC حذف کنید✅
  • مدیریت لاگ‌های ووکامرس: ووکامرس لاگ‌های زیادی برای ردیابی خطاها و عملیات‌ها تولید می‌کند. این لاگ‌ها را به صورت دوره‌ای از مسیر ووکامرس > وضعیت > لاگ‌ها بررسی و حذف کنید.
    بهینه‌سازی متاهای محصولات: اگر تعداد زیادی محصول متغیر دارید، جدول wp_postmeta شما بسیار شلوغ می‌شود. افزونه‌های تخصصی مانند Advanced Database Cleaner می‌توانند متاهای یتیم (Orphaned Meta) را شناسایی و حذف کنند

بهینه‌سازی دیتابیس با افزونه WP Rocket

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

مراحل بهینه‌سازی با WP Rocket:

نصب افزونه: WP Rocket سایت رسمیش نصب و فعال کنید.

ورود به تنظیمات: توی پیشخوان وردپرس، به منوی WP Rocket برید.

پاکسازی دیتابیس: توی تب “پایگاه داده“، گزینه‌هایی مثل پاک کردن بازبینی‌ها، پیش‌نویس‌های خودکار و دیدگاه‌های زباله رو می‌بینید. هر کدوم که لازم بود تیک بزنید.

شروع بهینه‌سازی: روی “ذخیره تغییرات” کلیک کنید تا WP Rocket کارش رو انجام بده.

بهینه‌سازی دیتابیس با افزونه WP Rocket

بهترین افزونه بهینه ساز WP Optimize

اگه دنبال بهینه سازی دیتابیس وردپرس بصورت حرفه‌ای‌تر هستید، WP Optimize بهترین انتخابه. این افزونه امکانات بیشتری داره و می‌تونه دیتابیس رو حسابی تمیز کنه.رایگان

مراحل بهینه‌سازی با WP Optimize:

  1. نصب افزونه: WP Optimize رو از مخزن وردپرس نصب و فعال کنید.

  2. ورود به تنظیمات: توی پیشخوان، به منوی WP Optimize برید.

  3. پاکسازی و بهینه‌سازی: توی تب “بهینه‌سازی”، گزینه‌هایی مثل پاک کردن بازبینی‌ها، بهنه‌سازی جداول و حذف داده‌های اضافی رو تیک بزنید.(همه گزینه ها)

  4. اجرای عملیات: روی “اجرای تمام بهینه‌سازی‌ها” کلیک کنید تا افزونه کارش رو شروع کنه.

  5. بررسی جداول قدیمی: توی تب “جداول”، می‌تونید جداول افزونه‌های غیرفغال رو ببینید و اگه لازم نیست، حذفشون کنید.

مقاله مرتبط:  18 نکته سئو تصاویر و بهینه سازی عکس -ویدیو💕

 

زمان مناسب برای پاکسازی دیتابیس

بهینه سازی دیتابیس وردپرس فقط یه بار انجام دادنش کافی نیست؛ باید بهش عادت کنید! 

  • برنامه منظم: ماهیانه یا ۲ ماهی یکبار دیتابیستون رو چک و بهینه کنید.

  • افزونه‌های اضافی رو حذف کنید: هر افزونه‌ای که لازم ندارید رو پاک کنید تا دیتابیس پر از جدول نشه.

مقاله افزایش سرعت المنتور

نکته طلایی بهینه کردن پایگاه داده

  • حتما بکاپ بگیرید قبل شروع کار !!!!!
  • اگر سایت‌تان بزرگ است یا منابع محدودی دارید، می‌توانید این فرایند را در زمان‌های خلوت سرور (شب یا ساعات کم‌ترافیک) اجرا کنید.

  • همیشه از آخرین نسخه افزونه‌ها و PHP استفاده کنید؛ نسخه‌های جدید غالباً بهینه‌تر هستند.

  • پس از بهینه‌سازی، سرعت بارگذاری سایت را با ابزارهایی مثل GTmetrix یا Google PageSpeed بررسی کنید.
خدمات پشتیبانی سایت وردپرسی
بعد از تکمیل فرم وبررسی اولیه باشما تماس می گیرم

امنیت دیتابیس

پیشگیری بهتر از درمان است-بهینه‌سازی سرعت مهم است، اما امنیت دیتابیس حیاتی است. یک دیتابیس هک شده، تمام زحمات شما را به باد می‌دهد.

تغییر پیشوند جداول (Table Prefix)

پیشوند پیش‌فرض وردپرس wp_ است. هکرها این را می‌دانند. تغییر این پیشوند به یک چیز تصادفی (مثلاً wps_a3b_)، حملات خودکار SQL Injection را بسیار دشوارتر می‌کند.
روش: از افزونه‌هایی مانند iThemes Security یا Sucuri Security برای تغییر امن پیشوند استفاده کنید. تغییر دستی در phpMyAdmin بسیار ریسکی است.

استفاده از رمزهای عبور قوی و احراز هویت دو مرحله‌ای (2FA)

این ساده‌ترین و مهم‌ترین گام است. رمز عبور قوی برای دیتابیس (که در wp-config.php ذخیره می‌شود) و همچنین برای تمام کاربران مدیریتی وردپرس ضروری است. همیشه از احراز هویت دو مرحله‌ای برای ورود به پنل وردپرس و کنترل پنل هاست استفاده کنید.
 

بهینه سازی پایگاه داده با افزونه لایت اسپید

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

قابلیت‌های بهینه‌سازی دیتابیس در لایت اسپید کش:

  1. پاکسازی بازبینی‌ها (Revisions): حذف نسخه‌های قدیمی و غیرضروری پست‌ها.
  2. پاکسازی پیش‌نویس‌های خودکار (Auto Drafts): حذف پیش‌نویس‌هایی که هرگز منتشر نشده‌اند.
  3. پاکسازی دیدگاه‌های اسپم و زباله (Spam/Trash Comments): حذف دیدگاه‌های ناخواسته.
  4. پاکسازی داده‌های موقت (Transients): حذف داده‌های کش شده منقضی شده.
مقاله مرتبط:  بهترین افزونه‌های وردپرسی

بهینه سازی دستی دیتابیس (بدون افزونه)

بهینه سازی دستی دیتابیس کاری فنی و با دانش و تجربه است -شما انجام ندید بهتر است!🔥
phpMyAdmin دیتابیس مربوطه رو انتخاب کن.نحوه اجرا در phpMyAdmin- پس از ورود به phpMyAdmin و انتخاب دیتابیس، روی تب SQL کلیک کن.
یکی از بلوک‌های کد زیر رو در کادر وارد کن

بهینه سازی دستی دیتابیس

حذف رونوشت‌های نوشته (Post Revisions)

DELETE FROM `wp_posts`
WHERE `post_type` = ‘revision’;

محدود کردن تعداد رونوشت‌های ذخیره شده

تنظیم در فایل wp-config.php
در دایرکت‌ادمین به File Manager برو.
پوشهٔ public_html (یا ریشهٔ وردپرس) رو باز کن.
فایل wp-config.php رو ادیت کن و بالاتر از خط /* That’s all, stop editing! Happy blogging. */ این رو اضافه کن:
// محدود کردن رونوشت‌ها به ۳ نسخه

define( ‘WP_POST_REVISIONS’, 3 );

پاکسازی برچسب‌های بدون استفاده (تگ‌های با تعداد صفر)

DELETE t
FROM `wp_terms` AS t
INNER JOIN `wp_term_taxonomy` AS tt ON t.term_id = tt.term_id
WHERE tt.taxonomy = ‘post_tag’ AND tt.count = 0;

حذف متاداده‌های خالی یا Null نوشته‌ها (Post Meta)

DELETE pm
FROM `wp_postmeta` AS pm
LEFT JOIN `wp_posts` AS p ON pm.post_id = p.ID
WHERE p.ID IS NULL
OR pm.meta_value IS NULL
OR pm.meta_value = ”;

حذف پست‌تایپ‌های سفارشی قدیمی و بدون استفاده

مثلاً حذف کوپن‌های ووکامرس

DELETE FROM `wp_posts`
WHERE `post_type` = ‘shop_coupon’;

 

بهینه‌سازی دیدگاه‌ها (Comments) و محتوای مرتبط

پاکسازی دیدگاه‌های اسپم (Spam Comments)

DELETE FROM `wp_comments`
WHERE `comment_approved` = ‘spam’;

غیرفعال کردن و حذف Pingback و Trackbackها

توی داشبورد وردپرس به تنظیمات → گفتگو برو.
تیک “اجازه پینگ‌بک‌ها و ترک‌بک‌ها” رو بردار و ذخیره کن.
در phpMyAdmin برای حذف‌های قبلی اجرا کن:

DELETE FROM `wp_comments`
WHERE `comment_type` IN (‘pingback’,’trackback’);

حذف متاداده‌های خالی یا Null دیدگاه‌ها (Comment Meta)

DELETE cm
FROM `wp_commentmeta` AS cm
LEFT JOIN `wp_comments` AS c ON cm.comment_id = c.comment_ID
WHERE c.comment_ID IS NULL;
حذف یادداشت‌های سفارش قدیمی ووکامرس (WooCommerce Order Notes)
DELETE FROM `wp_comments`
WHERE `comment_type` = ‘order_note’;

 

بهینه‌سازی عمومی و تنظیمات

تنظیم تخلیه خودکار سطل زباله (Trash)
وردپرس به طور پیش‌فرض پس از ۳۰ روز زباله‌ها رو خالی می‌کنه. برای تغییر این مدت، دوباره در wp-config.php اضافه کن:

// تخلیه خودکار سطل زباله پس از ۷ روز
define( ‘EMPTY_TRASH_DAYS’, 10 );

 

جی تی متریکس

آموزش های رایگان بیشتر : طراحی سایت شرکتی

۴/۵ - (۱۰ امتیاز)

2 پاسخ

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

13 + 20 =