نصب چند وردپرس در یک دیتابیس موضوعی مهم برای مدیران وبسایت و طراحانی است که از هاستهای اشتراکی با منابع محدود استفاده میکنند. بهصورت پیشفرض، هر سایت وردپرسی در یک دیتابیس مجزا نصب میشود؛ اما در برخی پلنهای هاست اشتراکی، امکان ساخت تنها یک دیتابیس وجود دارد.
در چنین شرایطی این سؤال مطرح میشود که آیا میتوان چند سایت وردپرسی را روی یک دیتابیس مشترک نصب کرد یا خیر؟
پاسخ کوتاه این است: بله، این کار امکانپذیر است.
در این مقاله، نحوه نصب چند وردپرس در یک دیتابیس، روش عملکرد آن، مزایا، معایب و نکات مهمی که قبل از استفاده از این روش باید بدانید را بررسی میکنیم.

نحوه عملکرد وردپرس و پیشوند جداول
تمام اطلاعات یک سایت وردپرسی شامل نوشتهها، برگهها، کاربران، تنظیمات و افزونهها در یک پایگاه داده از نوع MySQL یا MariaDB ذخیره میشود.
وردپرس از طریق فایل مهمی به نام wp-config.php به دیتابیس متصل میشود. در این فایل، اطلاعات زیر تعریف میشوند:
- نام دیتابیس
- نام کاربری دیتابیس
- رمز عبور دیتابیس
- هاست دیتابیس
- پیشوند جداول (Table Prefix)
در زمان نصب وردپرس، اگر بخش پیشوند جداول تغییر داده نشود، وردپرس بهصورت پیشفرض از پیشوند wp_ استفاده میکند.

پیشوند جداول (Table Prefix) چیست؟
پیشوند جداول یا Table Prefix رشتهای است که در ابتدای نام تمام جداول وردپرس قرار میگیرد.
برای مثال، برخی از جداول اصلی وردپرس عبارتاند از:
- wp_posts
- wp_users
- wp_options
در این مثال، عبارت wp_ پیشوند جداول است. وردپرس هنگام فراخوانی اطلاعات، تنها به جداولی دسترسی دارد که پیشوند آنها در فایل wp-config.php تعریف شده باشد.
این ویژگی دقیقاً همان چیزی است که امکان نصب چند وردپرس در یک دیتابیس را فراهم میکند.
آموزش نصب چند وردپرس در یک دیتابیس
در خصوص نصب چند سایت وردپرسی روی یک دیتابیس کافیست، اجازه دهید سایت اول با همان پیشوند معمول یعنی _wp نصب شود. اما هنگام نصب سایت های بعدی باید بخش پیشوند را دستکاری کرده و پیشوندهای دلخواه به جای _wp قرار دهید.

با این کار، هر مجموعه از جداول مربوط به هر وبسایت، با وجود اینکه در یک دیتابیس واحد قرار دارند، به دلیل پیشوندهای متفاوت، کاملاً از هم مجزا و مستقل هستند. و وردپرس هنگام فراخوانی دادهها، از پیشوند تعریف شده در فایل wp-config.php خود برای شناسایی و دسترسی به جداول مخصوص به همان سایت استفاده می کند. مثلا قرارگیری کد زیر در این فایل تعیین کننده پیشوند _wp برای جداول می باشد:
$table_prefix = ‘wp_’;

مثال عملی از ساختار دیتابیس
فرض کنید دو سایت وردپرسی در یک دیتابیس نصب شدهاند:
سایت اول:
- wp_posts
- wp_users
- wp_options
سایت دوم:
- site2_posts
- site2_users
- site2_options
در این حالت، هر سایت بهصورت کاملاً مستقل عمل میکند؛ با این تفاوت که همه جداول داخل یک دیتابیس واحد قرار دارند.
مزایا و دلایل استفاده از یک دیتابیس مشترک
استفاده از این روش در برخی شرایط میتواند مفید باشد:
1. محدودیت هاست اشتراکی : بسیاری از هاستهای اقتصادی تنها اجازه ساخت یک دیتابیس را میدهند، در حالی که امکان ایجاد چند سابدامین یا اداندامین وجود دارد.
2. کاهش هزینهها : با استفاده از یک دیتابیس مشترک، نیازی به ارتقای هاست یا خرید سرویس جدید نخواهد بود.
3. مدیریت سادهتر بکاپ کلی : بکاپگیری از کل دیتابیس سادهتر انجام میشود، هرچند بازیابی تکسایت چالشهای خاص خود را دارد.
معایب و چالشهای نصب چند وردپرس در یک دیتابیس
با وجود امکانپذیر بودن این روش، باید بدانید که برای همه پروژهها توصیه نمیشود.
1. افزایش حجم دیتابیس : با افزایش تعداد سایتها و دادهها، حجم دیتابیس بیشتر میشود و در دیتابیسهای بزرگ، اجرای کوئریها ممکن است کندتر انجام شود.
2. کاهش سرعت وبسایتها : کند شدن کوئریها میتواند بهصورت غیرمستقیم روی سرعت لود سایتها تأثیر منفی بگذارد، بهخصوص در هاستهای ضعیف.
3. ریسک امنیتی : در صورتی که به هر دلیلی مشکلی در دیتابیس ایجاد شود، تمام سایتهای متصل به آن دیتابیس از دسترس خارج خواهند شد.
4. پیچیدگی در بازیابی اطلاعات : در زمان ریستور بکاپ، جدا کردن اطلاعات یک سایت خاص از میان چند سایت موجود در دیتابیس کار سادهای نیست.
جایگزین حرفهای WordPress Multisite
اگر قصد مدیریت چند سایت وردپرسی را دارید، پیشنهاد میشود قابلیت WordPress Multisite را نیز بررسی کنید.
در این روش، چند سایت در قالب یک شبکه وردپرسی مدیریت میشوند و ساختار دیتابیس بهصورت استاندارد و بهینهتری طراحی شده است.
البته Multisite نیز محدودیتهای خاص خود را دارد و برای همه پروژهها مناسب نیست.
جمعبندی نهایی
نصب چند وردپرس در یک دیتابیس با استفاده از تغییر پیشوند جداول (Table Prefix) در فایل wp-config.php امکانپذیر است و معمولاً در هاستهای اشتراکی با محدودیت دیتابیس مورد استفاده قرار میگیرد.
این روش میتواند به کاهش هزینهها کمک کند، اما در عین حال باعث وابستگی سایتها به یک دیتابیس مشترک، افزایش حجم دیتابیس و کاهش احتمالی سرعت وبسایتها میشود.
اگر پروژه شما کوچک و کمحجم است، این روش قابل استفاده است؛ اما برای سایتهای مهم، پرترافیک یا حرفهای، استفاده از دیتابیس مجزا یا راهکارهایی مانند WordPress Multisite انتخاب منطقیتری خواهد بود.



