مدیریت دیتابیس وردپرس از طریق phpMyAdmin
در این پست می خواهیم با نحوه مدیریت دیتابیس وردپرس از طریق پایگاه داده یا بانک اطلاعاتی PHP MyAdmin آشنا شویم.همانطور که میدانید وردپرس با زبان PHP نوشته شده و از MySQL برای ذخیره ی داده هایش استفاده میکند. درست است که محیط مدیریت وردپرس کاملا ساده و گویاست و شما برای استفاده از آن نیازی به دانش PHP و MySQL ندارید اما بدیهی است که داشتن اطلاعات کافی در باره ی این دو میتواند کمک شایان توجهی به شما برای حل مشکلات احتمالی و یا اعمال برخی تنظیمات که از طریق ناحیه ی مدیریت در اختیار شما قرار نمیگیرند، بکند.داشتن درک درستی از PHP و MySQL باعث خواهد شد که نحوه ی کار وردپرس را نیز به خوبی درک کرده و با آنچه در پشت پرده ی این CMS(سیستم مدیریت محتوا) قدرتمند میگذرد، آشنایی پیدا کنند.
چگونه وردپرس از دیتابیس استفاده میکند؟
وردپرس برای نوشتن اطلاعات در دیتابیس و یا خواندن اطلاعات از آن، از زبان برنامه نویسی PHP استفاده میکند. این اطلاعات میتواند شامل نوشته ها، برگه ها، نظرات، دسته بندی ها، برچسب ها، زمینه های دلخواه، اطلاعات کاربران و تنظیمات سایت مثل پیوند ها و … باشد. به این مسائل در ادامه ی این مقاله، وقتی از جداول وردپرس حرف میزنیم، رسیدگی خواهیم کرد.
در ابتدای کار، وقتی تازه میخواهید وردپرس را بر روی هاست خود نصب کنید، وردپرس از شما درخواست میکند که اطلاعات دیتابیس خود را ، شامل آدرس هاست، نام کاربری، نام دیتابیس و رمز عبور دیتابیستان را وارد کنید. این اطلاعات بعدا در فایل wp-config.php ذخیره شده و توسط وردپرس برای دسترسی به دیتابیس و نوشتن و خواندن اطلاعات مورد استفاده قرار میگیرند.
در زمان نصب، همین اطلاعات برای پر کردن جداول دیتابیس شما و ذخیره سازی اطلاعات پیش فرض در دیتابیس به کار میروند. بدیهی است که این مسئله باعث داینامیک بودن وردپرس میشود یعنی شما برای ساخت هر نوشته یا صفحه ی جدید لازم نیست که خودتان به صورت دستی یک صفحه ی html بسازید و محتوای دلخواهتان را وارد آن کنید. چرا که وردپرس این کار را بدون مشکل برای شما انجام خواهد داد.
آشنایی با جداول دیتابیس وردپرس
هر نصب وردپرس، به صورت پیشفرض دارای 11 جدول در دیتابیس خواهد بود. هر یک از این جداول اطلاعاتی را در بر میگیرند که ممکن است مربوط به یک ناحیه، امکان یا تابعی در وردپرس باشد. با نگاهی ساده به ساختار این جداول به سادگی میتوانید متوجه شوید که هر قسمت از اطلاعات وبسایت شما در کجا ذخیره شده. در زیر به شرح این جداول میپردازیم :
wp_commentmeta :این جدول در بر گیرنده اطلاعات متای نظرات وبسایت شماست. این جدول شامل چهار فیلد با عنوان meta_id, comment_id, meta_key و meta_value میباشد. همچنین فیلد meta_id در این جدول با فیلد comment_id در ارتباط است. اگر نمیدانید منظورمان از متا چیست، یک مثال خوب میتواند وضعیت یک نظر باشد. مثلا اینکه آیا نظر تایید شده، در انتظار بررسی است، یا اینکه به زباله دان منتقل شده و …
wp_comments :همانطور که از نام این جدول مشخص است، این جدول نظرات وبسایت شما را در خود نگه میدارد و شامل اطلاعاتی از قبیل نویسنده نظر، آدرس وبسایت، ایمیل، محتوای نظر و … میباشد.
wp_links :این جدول اطلاعات لینک هایی که در ورژن های قبلی وردپرس از طریق ناحیه مدیریت پیوند ها به وردپرس اضافه میشدند و در ورژن های جدیدتر برای اضافه کردن آنها از Link Manager استفاده میکنیم، را در بر میگیرد.
wp_options :یکی از پر محتوا جداول وردپرس است،که اکثر تنظیمات وبسایت وردپرسی شما را در بر میگیرد. از آنجایی که این جدول توسط بسیاری از پلاگین ها نیز جهت ذخیره ی داده مورد استفاده قرار میگیرد، میتواند شامل اطلاعات بسیار وسیع و گوناگونی باشد ولی به طور پیش فرض میتوانید انتظار داشته باشید که تنظیمات آدرس سایت، ایمیل ادمین، دسته بندی پیش فرض، تعداد ارسال ها در هر صفحه، فرمت زمان و تاریخ و در واقع کلیه تنظیمات عمومی سایتتان را در اینجا پیدا کنید.
دوره های آموزشی برنامه نویسی،طراحی و کسب و کار اینترنتی کدفرند
wp_postmeta :این جدول اطلاعات متای نوشته ها، برگه ها و انواع نوشته های سفارشی (custom post types) را در بر میگیرد. در اینجا مثالی از اطلاعات متا میتواند این باشد که مثلا شما کدام تمپلیت را برای نمایش یک صفحه ی خاص در نظر گرفته اید و یا چه زمینه های دلخواهی برای نوشته تان تعریف کرده اید. البته به این نکته هم توجه داشته باشید که این جدول نیز به صورت انحصاری توسط وردپرس استفاده نمیشود و ممکن است برخی از پلاگین ها از آن برای ذخیره اطلاعاتی همچون تنظیمات سئو و … نیز استفاده نمایند.
wp_posts :همانطور که نامش هم کاملا گویا است، این جدول، نوشته های شما را در بر میگیرد. در واقع هر گونه محتوایی که داشته باشید جایش اینجاست. حالا این محتوا میتواند در قالب یک نوشته، برگه، نوع نوشته سفارشی و حتی revision باشد.
wp_terms :اجازه بدهید اول ببینیم taxonomy چیست. taxonomy در واقع شیوه ای برای دسته بندی چیز ها در گروه های مختلف است. به آیتم های taxonomy عبارت term را نصبت میدیهم. (فکر میکنم الان میتوانید حدس بزنید این جدول چه چیزی را در بر میگیرد.) taxonomy ها به صورت پیش فرض در وردپرس شامل دسته بندی ها، تگ ها و دسته بندی های لینک هستند. این جدول هم دقیقا همین اطلاعات، یعنی اطلاعات دسته بندی ها و تگ ها شما را در خود نگهداری میکند.
wp_term_relationships :کار این جدول این است که اطلاعات ارتباط نوشته ها و دسته بندی ها و برچسب های شما را در خود نگهداری کند. مثلا این جدول میتواند مشخص کند که نوشته X در دسته بندی Y قرار دارد و …
wp_term_taxonomy :با اجازه این قضیه را زیاد پیچیده نکنیم! در قالب یک جمله ی کوتاه میتوانیم بگوییم این جدول تعیین میکند که کدام یک از عبارات ذخیره شده در wp_terms برچسب است و کدام دسته بندی است
wp_usermeta :اطلاعات متای کاربران وبسایت شما را در بر میگیرد.
wp_users :اطلاعات کاربران، همچون نام کاربری، رمز عبور، ایمیل و … را شامل میشود.
مدیریت دیتابیس وردپرس با استفاده از phpMyAdmin
احتمالا همه ی شما phpMyAdmin میشناسید. phpMyAdmin یک نرم افزار اپن سورس است که به کاربران یک اینترفیس تحت وب برای مدیریت دیتابیس هایشان ارائه میدهد. تقریبا ممکن نیست که سرویس هاستینگ لینوکس داشته باشید ولی در پنلتان phpMyAdmin وجود نداشته باشد.بر اساس کنترل پنلی که استفاده میکنید، ممکن است شیوه ی دسترسی به phpMyAdmin نیز برای شما متفاوت باشد.
در این صفحه با کلیک بر روی تب Databases میتوانید لیستی از دیتابیس هایی که ساخته اید و به آنها دسترسی دارید را مشاهده کنید. وقتی روی دیتابیستان کلیک کنید، لیستی از جداول آن برای شما به شکل زیر پدیدار خواهند شد :
از طریق phpMyAdmin شما قادر هستید عملیات متنوعی را بر روی دیتابیس وردپرس خود انجام دهید. مثلا ممکن است دیتابیس خود را به دنبال عبارت خاصی در نوشته هایتان جستجو کرده و عبارت را جایگزین نمایید یا اینکه دیتابیستان را تعمیر نموده یا بهینه سازی کنید، به وردپرستان کاربران جدید اضافه کنید، کلیه ی پلاگین هایتان را غیر فعال کرده و حتی رمز عبور ورود به وردپرستان را تغییر دهید..
آموزش تهیه بکاپ از دیتابیس وردپرس توسط phpMyAdmin
برای تهیه یک نسخه ی پشتیبانی از دیتابیس وردپرستان، پس از اینکه وارد این دیتابیس شدید، به تب Export بروید.
در اینجا شما این انتخاب دارید که از دو روش برای خروجی گرفتن از دیتابیستان انتخاب کنید. یکی شیوه ی Quick یا سریع و دیگری Custom. در صورتی که شیوه ی Quick را انتخاب کنید، دیتابیس شما در قالب یک فایل .sql برون ریزی شده و قابل ذخیره خواهد بود. اما در صورتی که شیوه ی Custom را انتخاب کنید، تنظیمات بیشتری در اختیار شما قرار خواهد گرفت. در این حالت شما میتوانید حالت های دیگری همچون ذخیره به عنوان فایل zip یا gzip را نیز انتخاب نمایید. همچنین در این حالت میتوانید تعیین کنید که به خروجی کدام یک از جداول دیتابیس نیاز دارید. مثلا فرض کنید اگر شما یک پلاگین داشته باشید که تنظیماتش را در جدولی مخصوص به خود ذخیره کرده باشد، شما این امکان را دارید که آن جدول را از لیست جداولی که قرار است برون ریزی شوند حذف کنید. توصیه میشود که برای ذخیره سازی فرمت zip را برگزینید.
فایلی که در این مرحله تهیه کرده اید را میتوانید بعدا در همین دیتابیس یا هر دیتابیس دیگری import کنید. البته الزامی نیست که حتما برای تهیه بکاپ از دیتابیس وردپرستان به این شیوه عمل کنید. بلکه میتوانید برای این کار از پلاگین هایی که دقیقا به همین منظور ساخته شده اند استفاده کنید. اما به هر حال دانستن روشهای اصلی خیلی خوب است.
بهینه سازی دیتابیس وردپرس با استفاده از phpMyAdmin
یکی از مسائلی که ممکن است تا امروز در سایت وردپرسی خود با آن مواجه شده باشید، بالا رفتن بیش از حد و گاهی غیر قابل کنترل اندازه ی دیتابیس سایت وردپرس است. دلیل اتفاق افتادن این مسئله در واقع اصلا پیچیده نیست و با کمی مدیریت صحیح به سادگی میتوان از اتفاق افتادن آن جلوگیری کرد این مسئله باعث میشود که سرعت اجرای کوئری ها نیز کند تر شود و شما دیگر نتوانید با کیفیت گذشته از دیتابیستان استفاده کنید. برای حل کردن این مشکل کافی است پس از مراجعه به phpMyAdmin، همه ی جداولتان را با کلیک بر روی لینک Check All انتخاب کنید و سپس در پایین صفحه از منوی باز شونده ای که عنوان With Selected دارد، گزینه ی Optimize table را انتخاب نمایید.در
انجام این کار باعث بهینه سازی جداول دیتابیس وردپرس شما خواهد شد و همچنین باعث میشود که کوئری های شما اندکی سریعتر اجرا شوند. در مورد اهمیت انجام این کار اینطور برایتان بگویم که یک وبسایتی داشتیم که دیتابیس آن حدود 150 مگابایت حجم داشت و این دیتابیس حدود 1 سال بهینه سازی نشده بود، پس از بهینه سازی، حجم این دیتابیس بیش از 60 مگابایت کاهش یافت! تصور کنید در دیتابیس های بزرگتر چه اتفاقی ممکن است بیافتد.
در آخر به این نکته اشاره میکنم که همیشه سعی کنید یک نام کاربری و رمز عبور درست و حسابی برای دیتابیس وردپرس انتخاب کنید و از همه مهم تر اینکه در هنگام نصب وردپرس، پیشوند جداولتان را نیز تغییر دهید و اجازه ندهید که از همان مقدار پیش فرض یعنی wp_ استفاده شود.