آموزش نصب دیتابیس PostgreSQL در Ubuntu, Debian, AlmaLinux و ویندوز



پایگاه داده PostgreSQL که اغلب به سادگی “Postgres” نامیده می‌شود، یکی از قدرتمندترین، پیشرفته‌ترین و قابل اعتمادترین سیستم‌های مدیریت پایگاه داده شیء-رابطه‌ای (Object-Relational) متن‌باز در جهان است. Postgres به دلیل پایبندی شدید به استاندارد SQL، قابلیت‌های پیشرفته برای مدیریت داده‌های پیچیده، تراکنش‌های امن (ACID) و توسعه‌پذیری بالا، انتخابی محبوب برای پروژه‌های بزرگ، تحلیل داده و اپلیکیشن‌هایی است که به یکپارچگی داده اهمیت ویژه‌ای می‌دهند. برای راه‌اندازی یک سرور پایدار جهت میزبانی این دیتابیس، می‌توانید با خرید vps شروع کنید.

 

پیش‌نیازها

  • یک سرور یا کامپیوتر با یکی از سیستم‌عامل‌های Ubuntu, Debian, AlmaLinux یا Windows.
  • دسترسی به ترمینال (در لینوکس) یا دسترسی Administrator (در ویندوز).
  • اتصال اینترنت برای دانلود بسته‌های نرم‌افزاری.

 

نصب PostgreSQL در Ubuntu و Debian (روش رسمی)

بهترین روش، استفاده از مخزن رسمی PostgreSQL (APT repository) است تا همیشه آخرین نسخه پایدار را دریافت کنید.

 

گام ۱: افزودن مخزن رسمی PostgreSQL

ابتدا، کلید GPG مخزن را وارد کرده و فایل مخزن را به سیستم خود اضافه کنید.

# نصب پیش‌نیازها
sudo apt update
sudo apt install curl ca-certificates gnupg -y

# وارد کردن کلید GPG
curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/postgresql.gpg >/dev/null

# افزودن مخزن
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

 

گام ۲: نصب PostgreSQL

اکنون لیست بسته‌های خود را مجددا آپدیت کرده و آخرین نسخه PostgreSQL را نصب کنید.

sudo apt update
sudo apt install postgresql postgresql-client -y

 

گام ۳: بررسی وضعیت سرویس

سرویس PostgreSQL پس از نصب به صورت خودکار فعال و اجرا می‌شود. با دستور زیر می‌توانید از صحت عملکرد آن مطمئن شوید.

sudo systemctl status postgresql

 

نصب PostgreSQL در AlmaLinux (روش رسمی)

در توزیع‌های مبتنی بر RHEL مانند AlmaLinux، نیز بهترین روش استفاده از مخزن رسمی (YUM/DNF repository) است.

 

گام ۱: افزودن مخزن رسمی PostgreSQL

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

# غیرفعال کردن ماژول پیش‌فرض
sudo dnf -qy module disable postgresql

# نصب فایل مخزن رسمی
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm

 

گام ۲: نصب سرور PostgreSQL

اکنون می‌توانید آخرین نسخه سرور PostgreSQL را نصب کنید. (مثلا نسخه ۱۶).

sudo dnf install -y postgresql16-server

 

گام ۳: مقداردهی اولیه (Initialize) دیتابیس

قبل از اولین استفاده، کلاستر دیتابیس را به صورت دستی ایجاد کنید.

sudo /usr/pgsql-16/bin/postgresql-16-setup initdb

 

گام ۴: فعال‌سازی و اجرای سرویس

در نهایت، سرویس را اجرا و آن را برای اجرای خودکار در زمان بوت، فعال کنید.

sudo systemctl enable --now postgresql-16

 

نصب PostgreSQL در ویندوز (روش گرافیکی)

نصب PostgreSQL در ویندوز به لطف نصب‌کننده (Installer) گرافیکی که توسط EnterpriseDB (EDB) ارائه می‌شود، بسیار ساده است.

 

گام ۱: دانلود نصب‌کننده

به صفحه دانلود رسمی PostgreSQL بروید و روی لینک Windows کلیک کنید. از آنجا، نصب‌کننده مربوط به نسخه ویندوز خود را دانلود نمایید.

 

گام ۲: اجرای فرآیند نصب

فایل دانلود شده را با دسترسی Administrator اجرا کرده و مراحل ویزارد نصب را دنبال کنید:

  1. Installation Directory: مسیر نصب را انتخاب کنید (معمولا C:\Program Files\PostgreSQL\16).
  2. Select Components: اجزای مورد نیاز خود را انتخاب کنید. اکیدا توصیه می‌شود تمام گزینه‌ها را نگه دارید: PostgreSQL Server, pgAdmin 4, Stack Builder, و Command Line Tools.
  3. Data Directory: محل ذخیره‌سازی داده‌ها را مشخص کنید.
  4. Password: این مهم‌ترین مرحله است. یک رمز عبور بسیار قوی برای کاربر سوپرادمین (postgres) تنظیم کنید. این رمز را فراموش نکنید.
  5. Port: پورت پیش‌فرض 5432 را تایید کنید.
  6. Advanced Options: تنظیمات مربوط به زبان (Locale) را تایید کنید.
  7. پس از مرور خلاصه‌ای از تنظیمات، نصب را شروع کنید.

 

گام ۳: تایید نصب و اتصال

پس از اتمام نصب، سرویس PostgreSQL به صورت خودکار در ویندوز اجرا می‌شود. برای اتصال می‌توانید از دو راه استفاده کنید:

  • pgAdmin 4: این ابزار گرافیکی قدرتمند را از منوی استارت اجرا کنید. به صورت خودکار یک سرور محلی شناسایی می‌شود. روی آن کلیک کرده و رمزی را که در مرحله قبل تنظیم کردید وارد نمایید.
  • SQL Shell (psql): از منوی استارت، “SQL Shell (psql)” را اجرا کنید. با فشردن Enter برای مقادیر پیش‌فرض (localhost, postgres, 5432) و سپس وارد کردن رمز عبور خود، به خط فرمان Postgres متصل خواهید شد.

 

پیکربندی اولیه و دسترسی به PostgreSQL (در لینوکس)

در لینوکس، برای دسترسی به خط فرمان Postgres و ایجاد کاربران جدید این مراحل را دنبال کنید.

  1. ورود به حساب کاربری postgres:
    sudo -i -u postgres
  2. ورود به شل تعاملی psql:
    psql
  3. تنظیم رمز عبور برای کاربر postgres:
    \password postgres
  4. ایجاد کاربر و دیتابیس جدید برای اپلیکیشن:
    createuser --interactive --pwprompt
    createdb -O new_user_name new_database_name

 

سوالات متداول (FAQ)

pgAdmin 4 چیست؟
pgAdmin 4 رابط کاربری گرافیکی (GUI) رسمی و بسیار قدرتمند برای مدیریت PostgreSQL است. این ابزار به شما اجازه می‌دهد تا به صورت بصری دیتابیس‌ها را مدیریت کنید، کوئری بنویسید و اجرا کنید، کاربران و دسترسی‌ها را کنترل نمایید و عملکرد سرور را نظارت کنید. این ابزار به صورت پیش‌فرض همراه با نصب‌کننده ویندوز ارائه می‌شود.
تفاوت اصلی PostgreSQL با MySQL چیست؟
هر دو پایگاه داده‌های قدرتمندی هستند، اما با فلسفه‌های متفاوت. MySQL به طور سنتی بر روی سرعت و سهولت استفاده برای اپلیکیشن‌های وب تمرکز داشته است. در مقابل، PostgreSQL بر روی انطباق کامل با استانداردها، یکپارچگی داده (Data Integrity) و قابلیت‌های پیشرفته برای کوئری‌های پیچیده و انواع داده سفارشی تمرکز دارد.
چگونه اتصالات از راه دور (Remote Connections) را فعال کنم؟
باید دو فایل را در دایرکتوری داده خود ویرایش کنید:

۱. postgresql.conf: خط listen_addresses را پیدا کرده و مقدار آن را از 'localhost' به '*' تغییر دهید.

۲. pg_hba.conf: یک خط جدید برای اجازه دادن به IP مورد نظر خود با متد احراز هویت مناسب اضافه کنید.

فراموش نکنید که پس از تغییرات، سرویس PostgreSQL را ری‌استارت کرده و پورت `5432` را در فایروال باز کنید.

چرا بهتر است از مخزن رسمی PostgreSQL در لینوکس استفاده کنم؟
زیرا مخازن پیش‌فرض توزیع‌های لینوکس ممکن است چندین ماه یا حتی سال از آخرین نسخه پایدار PostgreSQL عقب باشند. با استفاده از مخزن رسمی، شما به محض انتشار، به آخرین بهبودهای عملکردی، ویژگی‌های جدید و مهم‌تر از همه، پچ‌های امنیتی دسترسی خواهید داشت.