رفتن به محتوای اصلی
iServer24 | ارائه‌کننده سرورهای ابری و اختصاصی
راهنمای راه‌اندازی پایگاه داده از راه دور برای بهینه‌سازی عملکرد سایت با MySQL روی Ubuntu

راهنمای راه‌اندازی پایگاه داده از راه دور برای بهینه‌سازی عملکرد سایت با MySQL روی Ubuntu

در این آموزش، راه‌اندازی وردپرس با پایگاه داده MySQL روی یک سرور راه دور توضیح داده شده است. مراحل شامل پیکربندی MySQL برای اتصال امن از راه دور، ایجاد کاربران، و آماده‌سازی وب‌سرور با PHP و Nginx است. با این روش، عملکرد، امنیت و مقیاس‌پذیری سایت شما افزایش یافته و مدیریت سرور راحت‌تر می‌شود.

با رشد سایت یا برنامه شما، ممکن است سرور فعلی دیگر توان پاسخ‌گویی به درخواست‌های زیاد کاربران را نداشته باشد. اگر وب‌سرور و پایگاه داده روی یک سرور باشند، همه بار روی یک ماشین است و عملکرد کاهش می‌یابد. جدا کردن پایگاه داده و وب‌سرور روی دو سرور جداگانه باعث افزایش سرعت و امنیت می‌شود. در این راهنما، نحوه راه‌اندازی یک سرور MySQL از راه دور را به شما آموزش می‌دهیم. مثال ما وردپرس است، ولی این روش برای هر برنامه‌ای که از MySQL استفاده می‌کند کاربرد دارد.


پیش‌نیازها

قبل از شروع باید موارد زیر آماده باشند:

در صورتی که هنوز سرور اوبونتوی خود را راه‌اندازی نکرده‌اید، ابتدا راهنمای کامل نصب Ubuntu 24 را ببینید.

  1. دو سرور Ubuntu (مثلاً 20.04 یا 22.04) با یک کاربر غیرریشه و دسترسی sudo و فایروال UFW فعال.

    • یکی برای پایگاه داده (Database Server)

    • دیگری برای وب‌سرور (Web Server)

  2. نصب MySQL روی سرور پایگاه داده.

  3. نصب Nginx و PHP روی وب‌سرور.

  4. پیشنهاد می‌شود گواهی TLS/SSL رایگان از Let’s Encrypt روی وب‌سرور نصب شود تا اتصال‌ها رمزگذاری شوند.


مرحله ۱ — پیکربندی MySQL برای اتصال از راه دور

  1. فایل تنظیمات MySQL را باز کنید:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • بخش [mysqld] را پیدا کرده و مقدار bind-address را به IP سرور پایگاه داده تغییر دهید تا اتصال از راه دور امکان‌پذیر شود.

  • bind-address = db_server_ip
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • برای امنیت، اتصال‌ها را با SSL رمزگذاری کنید:

  • require_secure_transport = on
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • کلیدها و گواهی‌های SSL را ایجاد کنید:

  • sudo mysql_ssl_rsa_setup --uid=mysql
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • سرور MySQL را ریستارت کنید تا تغییرات اعمال شوند:

  • sudo systemctl restart mysql
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • پورت MySQL (3306) را در فایروال باز کنید:

  • sudo ufw allow mysql
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

    مرحله ۲ — ایجاد پایگاه داده و کاربران

    1. وارد MySQL شوید:

    sudo mysql -u root -p
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • یک پایگاه داده برای وردپرس بسازید:

  • CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • ایجاد کاربر محلی (فقط اتصال از سرور پایگاه داده) و دادن دسترسی:

  • 2 خط
    CREATE USER 'local_db_user'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON wordpress.* TO 'local_db_user'@'localhost';
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • ایجاد کاربر از راه دور (اتصال از سرور وب):

  • 3 خط
    CREATE USER 'remote_user'@'web_server_ip' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON wordpress.* TO 'remote_user'@'web_server_ip';
    FLUSH PRIVILEGES;
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • بررسی کنید اتصال‌ها از سرور وب موفق باشد و سایر سرورها که اجازه ندارند، نتوانند متصل شوند.

  • برای مهاجرت داده‌های موجود به این پایگاه داده جدید، آموزش ایمپورت و اکسپورت دیتابیس در MySQL نیز کاربردی است.


    مرحله ۳ — آماده‌سازی وب‌سرور برای وردپرس

    1. نصب اکستنشن‌های PHP مورد نیاز وردپرس:

    sudo apt install php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • ریستارت PHP-FPM:

  • sudo systemctl restart php7.4-fpm
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • پیکربندی Nginx برای مدیریت فایل‌های استاتیک و هدایت درخواست‌ها به index.php. نمونه بخش مهم فایل:

  • 7 خط
    location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
        expires max;
        log_not_found off;
    }
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
    }
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • بررسی صحت فایل‌های پیکربندی:

  • 2 خط
    sudo nginx -t
    sudo systemctl reload nginx
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

    مرحله ۴ — نصب وردپرس

    1. دانلود آخرین نسخه وردپرس:

    3 خط
    cd /tmp
    curl -LO https://wordpress.org/latest.tar.gz
    tar xzvf latest.tar.gz
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • کپی فایل نمونه پیکربندی:

  • cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید
  • انتقال فایل‌ها به روت وب‌سرور:

  • 2 خط
    sudo cp -a /tmp/wordpress/. /var/www/your_domain
    sudo chown -R www-data:www-data /var/www/your_domain
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

    مرحله ۵ — تنظیمات فایل پیکربندی وردپرس

    1. کلیدهای امنیتی را از WordPress Secret Key Generator دریافت و جایگزین کنید.

    2. اطلاعات اتصال به پایگاه داده را وارد کنید:

    5 خط
    define('DB_NAME', 'wordpress');
    define('DB_USER', 'remote_user');
    define('DB_PASSWORD', 'remote_user_password');
    define('DB_HOST', 'db_server_ip');
    define('MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL);
    برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

    مرحله ۶ — راه‌اندازی وردپرس از طریق مرورگر

    1. به آدرس http://your_domain.com/wp-admin بروید.

    2. زبان سایت، نام سایت، نام کاربری و رمز عبور را تنظیم کنید.

    3. وارد داشبورد شوید و سایت خود را شخصی‌سازی کنید.

    زیرساخت ابری برای اجرای همین آموزش

    سرور ابری ساعتی را برای Docker، Ubuntu و DevOps راه‌اندازی کنید — پرداخت به میزان مصرف یا ماهانه.

    ادامه یادگیری:Docker·Ubuntu·VPS