نصب PostgreSQL در سیستمعاملهای مختلف و راهاندازی ابزارهای کلاینت PostgreSQL شامل مراحلی است. این راهنما به صورت مختصر به نصب PostgreSQL (نصبکننده ویندوز، Docker)، راهاندازی pgAdmin (از طریق نصب کننده ویندوز پستگرس، وب Docker)، و ابزارهای کلاینت و IDEهای مختلف PostgreSQL می پردازد.
۱. دانلود نصبکننده: نصبکننده ویندوز را از صفحه دانلود ویندوز PostgreSQL برای نسخه مورد نظر PostgreSQL دانلود کنید.
۲. اجرای نصبکننده: فایل نصبکننده دانلود شده را باز کنید. اگر هشدار امنیتی ظاهر شد، روی ‘Yes’ کلیک کنید تا اجازه اجرای نصبکننده داده شود.
۳. ویزارد نصب: مراحل ویزارد نصب را دنبال کنید و اطمینان حاصل کنید که کامپوننتهای زیر را انتخاب کردهاید:
PSQL)
۴. رمز عبور: رمز عبور را برای کاربر سوپر یوزر پیشفرض PostgreSQL (postgres) تنظیم کنید.
۵. پیکربندی پورت: پورت پیشفرض ۵۴۳۲ است. در صورت نیاز تغییر دهید (اطمینان حاصل کنید که پورت جدید توسط سرویسهای دیگر استفاده نشده باشد).
۶. تنظیمات Locale:هنگام نصب، Locale مورد استفاده PostgreSQL را انتخاب کنید. این تعیین میکند که دادههایی مانند تاریخ، زمان، اعداد و ارز چگونه فرمتبندی و تفسیر میشوند. تنظیم Locale بر ترتیب مرتبسازی و نحوه مقایسه کاراکترها تأثیر میگذارد. برای فارسی می توانید از مقدار fa_IR.UTF-8 استفاده کنید.
۷. نصب: روی ‘Next’ کلیک کنید تا نصب شروع شود.
۸. تکمیل نصب: پس از تکمیل نصب، PostgreSQL Server روی ماشین ویندوز شما اجرا خواهد شد.
نکته: اگر در خط فرمان، با زدن psql یا سایر ابزارهای خط فرمان استاندارد پستگرس، خطایی مبنی بر ناشناخته بودن این دستور دریافت میکنید، پوشه bin موجود در پوشه اصلی پستگرس روی سیستم خودتان را به متغیر محیطی path در ویندوز اضافه کنید و ترمینال را بسته و مجددا دستورات مد نظر خودتان را وارد کنید.
postgres را به خاطر بسپارید، زیرا برای وظایف مدیریتی ضروری است.postgresql-x64-18) در ابزار سرویسهای ویندوز.bin پستگرس را به خاطر نمیآورید، کافی است از مسیر pgadmin-> tools-> psql-> مسیر آنرا دریافت کنید -> آن را به متغیر محیطی Path اضافه کنید معمولا آدرسی شبیه به این خواهد بود. C:\Program Files\PostgreSQL\18\bin postgresql.conf / pg_hba.conf در دایرکتوری C:\Program Files\PostgreSQL\18\data که پوشه اصلی دیتای پستگرس است قرار دارند. نصب PostgreSQL روی Windows Subsystem for Linux (WSL) شامل فعالسازی WSL، نصب توزیع Linux (مانند Ubuntu)، و سپس نصب PostgreSQL در محیط Linux است. در اینجا راهنمای گامبهگام آورده شده است:
۱. باز کردن PowerShell به عنوان Administrator: روی دکمه Start راستکلیک کنید و “Windows PowerShell (Admin)” را انتخاب کنید.
۲. فعالسازی WSL: دستور زیر را برای فعالسازی Windows Subsystem for Linux اجرا کنید:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
۳. فعالسازی ویژگی Virtual Machine (برای WSL 2 لازم است): دستور زیر را اجرا کنید:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
۴. راهاندازی مجدد کامپیوتر خود را برای تکمیل نصب WSL و بهروزرسانی به WSL 2.
۵. دانلود و نصب بسته بهروزرسانی Linux Kernel (برای WSL 2): آخرین بسته را از وبسایت Microsoft دانلود و نصب کنید. البته اگر با زدن wsl --version نسخه نمایش داده شده، بزرگتر از ۲ است (مثلا ۲.۶) نیاز به این قسمت و گزینه بعدی ندارید.
۶. تنظیم WSL 2 به عنوان نسخه پیشفرض: این دستور را در PowerShell اجرا کنید:
wsl --set-default-version 2
۱. لیست توزیعهای Linux موجود: پس از فعالسازی WSL در Windows Features، دستور زیر را برای مشاهده توزیعهای Linux موجود اجرا کنید:
wsl --list --online
این لیست توزیعهایی که میتوان نصب کرد را نشان میدهد.
۲. نصب Ubuntu 24.04: برای نصب Ubuntu 24.04 با نام سفارشی، از دستور زیر استفاده کنید:
wsl --install -d Ubuntu-24.04 --name sepahram
این دستور Ubuntu 24.04 LTS را با نام “sepahram” دانلود و نصب خواهد کرد. در حین نصب، نیاز به وارد کردن نام کاربر اصلی سیستم و پسورد آن خواهید داشت.
۳. راهاندازی Ubuntu: پس از نصب، با استفاده از دستور زیر وارد محیط Linux شوید:
wsl -d sepahram
۴. نصب PostgreSQL: پس از ورود به محیط Ubuntu، دستورالعملهای رسمی نصب Ubuntu/Debian برای PostgreSQL را که در بخش Ubuntu Linux در ادامه توضیح داده شده، دنبال کنید.
۱. بهروزرسانی لیست بستهها: Ubuntu روی WSL خود را باز کنید و با بهروزرسانی لیست بستهها شروع کنید:
sudo apt update
sudo apt install gnupg2 wget nano
۲. اضافه کردن مخزن PostgreSQL 18 و کلید امضای آن :
# ایمپورت کلید امضای مخزن:
sudo apt install curl ca-certificates
sudo install -d /usr/share/postgresql-common/pgdg
sudo curl -o /usr/share/postgresql-common/pgdg/apt.postgresql.org.asc --fail https://www.postgresql.org/media/keys/ACCC4CF8.asc
# ایجاد فایل پیکربندی مخزن:
. /etc/os-release
sudo sh -c "echo 'deb [signed-by=/usr/share/postgresql-common/pgdg/apt.postgresql.org.asc] https://apt.postgresql.org/pub/repos/apt $VERSION_CODENAME-pgdg main' > /etc/apt/sources.list.d/pgdg.list"
لیست بستهها را بهروزرسانی کنید:
sudo apt update
۳. نصب PostgreSQL: پستگرس را همراه با بسته ‘contrib’ که برخی ابزارهای اضافی و قابلیتها را اضافه میکند، نصب کنید:
sudo apt install postgresql-18 postgresql-contrib-18
۴. تأیید نصب: چک کنید که PostgreSQL در حال اجرا است:
sudo service postgresql status
یا
sudo /etc/init.d/postgresql status
۵. شروع PostgreSQL: اگر در حال اجرا نیست، PostgreSQL را با دستور زیر شروع کنید:
sudo service postgresql start
۶. تغییر پورت/پیکربندی
sudo nano /etc/postgresql/18/main/postgresql.conf
listen_addresses = '*'
port=5432
۷. تنظیم رمز عبور
در اینجا نحوه تنظیم رمز عبور برای کاربر postgres توضیح داده شده است. فرض میکنیم با یوزر اصلی اوبونتو لاگین کردهاید و در خط فرمان WSl قرار دارید:
۱. تغییر به کاربر postgres:
ابتدا به کاربر postgres که حساب سوپر یوزر پیشفرض ایجاد شده در طول نصب PostgreSQL است، تغییر دهید:
sudo -i -u postgres
۲. باز کردن خط فرمان PostgreSQL:
سپس ترمینال تعاملی PostgreSQL را باز کنید تا با حالت local و از طریق سوکت پستگرس به آن متصل شود و نیاز به وارد کردن پستگرس نباشد:
psql
۳. تنظیم رمز عبور:
داخل خط فرمان psql از دستور زیر برای تنظیم رمز عبور جدید استفاده کنید (یا با استفاده از کامند \password):
ALTER USER postgres WITH PASSWORD 'postgres123';
۴. خروج از PostgreSQL Shell:
اکنون میتوانید با تایپ دستور زیر از PostgreSQL shell خارج شوید:
\q
۵. بازگشت به کاربر معمولی خود:
پس از تنظیم رمز عبور، به حساب کاربری معمولی خود برگردید (از session کاربر postgres خارج شوید):
exit
۶. بهروزرسانی pg_hba.conf (در صورت نیاز):
اگر PostgreSQL شما برای اتصالات محلی از احراز هویت peer استفاده میکند، ممکن است نیاز به تغییر فایل pg_hba.conf داشته باشید برای اجازه احراز هویت رمز عبور برای کاربر postgres در صورتی که بخواهید با روش Host متصل شوید.
sudo sed -i '/^host/s/ident/md5/' /etc/postgresql/18/main/pg_hba.conf
sudo sed -i '/^local/s/peer/trust/' /etc/postgresql/18/main/pg_hba.conf
echo "host all all 0.0.0.0/0 scram-sha-256" | sudo tee -a /etc/postgresql/18/main/pg_hba.conf
sudo service postgresql restart
۷. اتصال با استفاده از رمز عبور جدید:
اکنون هنگام اتصال به PostgreSQL، از رمز عبور جدید تنظیم شده استفاده کنید. اگر از psql استفاده میکنید، دستور شبیه به این خواهد بود:
psql -U postgres -h localhost
در صورت درخواست، رمز عبوری که قبلاً تنظیم کردهاید را وارد کنید.
با تنظیم رمز عبور برای کاربر postgres و پیکربندی PostgreSQL برای استفاده از احراز هویت رمز عبور، باید بتوانید بدون مواجه شدن با خطای احراز هویت SCRAM متصل شوید. به یاد داشته باشید که رمز عبور باید ایمن نگه داشته شود و فقط با کاربران مجاز به اشتراک گذاشته شود.
پس از نصب PostgreSQL، نیاز به ابزارهایی برای مدیریت، توسعه و کار با دیتابیس دارید. این بخش بهترین ابزارها برای کار با PostgreSQL را معرفی میکند که هر کدام برای کاربردهای خاصی مناسب هستند.
psql ابزار رسمی خط فرمان PostgreSQL است که به صورت پیشفرض با PostgreSQL نصب میشود. این ابزار برای مدیران دیتابیس، قدرتمندترین و سریعترین راه برای کار با PostgreSQL است.
# اتصال به دیتابیس
psql -h localhost -U username -d database_name
# اجرای کوئری
psql -c "SELECT * FROM users LIMIT 5;"
# اجرای فایل SQL
psql -f script.sql
pgAdmin محبوبترین رابط گرافیکی رایگان برای PostgreSQL است که توسط تیم PostgreSQL توسعه داده میشود. این ابزار برای مدیریت کامل دیتابیس طراحی شده است.

البته pgAdmin معمولا در بسته نصبی ویندوز پستگرس موجود است و می توانید هنگام نصب پستگرس، این ابزار کاربردی را هم انتخاب کنید تا به راحتی روی سیستم شما نصب شود.
pgcli جایگزین مدرن psql است که قابلیتهای پیشرفته مانند syntax highlighting، autocomplete هوشمند و فرمتبندی بهتر خروجی را ارائه میدهد.
# نصب با pip
pip install pgcli
# یا با conda
conda install -c conda-forge pgcli
DBeaver ابزاری رایگان و متنباز برای کار با انواع دیتابیسها است که از PostgreSQL پشتیبانی کامل دارد. این ابزار برای توسعهدهندگانی که با چندین نوع دیتابیس کار میکنند، ایدهآل است.

PostgreSQL افزونه رسمی مایکروسافت برای Visual Studio Code است که امکان کار کامل با PostgreSQL را در محبوبترین محیط ویرایشگر کد فراهم میکند. این افزونه از قابلیتهای پیشرفته مانند اتصال به Azure Database و یکپارچگی با GitHub Copilot پشتیبانی میکند.

در VS Code:
DataGrip محصولی از شرکت JetBrains (سازندگان IntelliJ IDEA) است که یک IDE تخصصی برای کار با دیتابیسها است. اخیراً برای استفاده شخصی رایگان شده است.

| ابزار | رابط کاربری | قیمت | بهترین برای | پیچیدگی یادگیری |
|---|---|---|---|---|
| psql | خط فرمان | رایگان | DBA حرفهای | بالا |
| pgAdmin | گرافیکی | رایگان | مدیریت دیتابیس | متوسط |
| pgcli | CLI پیشرفته | رایگان | توسعهدهندگان | متوسط |
| DBeaver | گرافیکی | رایگان | کار چند دیتابیس | کم |
| افزونه VS Code | ویرایشگر کد | رایگان | توسعه در VS Code | کم |
| DataGrip | IDE پیشرفته | رایگان برای استفاده شخصی | توسعه حرفهای | متوسط |
انتخاب ابزار به نیازها و تجربه شما بستگی دارد. برای مبتدیان، پیشنهاد میکنیم با pgAdmin یا DBeaver شروع کنید و با کسب تجربه، از ابزارهای پیشرفتهتری مانند DataGrip استفاده کنید. هر کدام از این ابزارها نقاط قوت خاص خود را دارند و میتوانید آنها را بر اساس نیاز پروژه خود، به صورت ترکیبی استفاده کنید.
آموزش نصب PostgreSQL با استفاده از Docker راهی عالی برای ارائه محیطی ثابت و ایزوله در سیستمهای مختلف است. قبل از ادامه، اطمینان حاصل کنید که کاربران Docker را روی ماشینهای خود نصب دارند. Docker Desktop برای ویندوز و macOS استفاده میشود، در حالی که Docker Engine برای سیستمهای Linux استفاده میشود.

۱. ایجاد فایل Docker-Compose: فایلی با نام docker-compose.yml در دایرکتوری مورد نظر خود ایجاد کنید.
۲. پیکربندی PostgreSQL در Docker-Compose:
version: '3.4'
services:
postgres:
container_name: postgres
hostname: postgres_server
image: docker.arvancloud.ir/postgres:18
volumes:
# TUTORIAL CONFIG: PostgreSQL 18+ uses versioned subdirectories
# Mount /var/lib/postgresql - PostgreSQL creates /var/lib/postgresql/18/docker
# Files accessible at ./postgres-data/18/docker/ on host
- ./postgres-data:/var/lib/postgresql # Bind mount for easy file exploration
- ./postgres-init:/docker-entrypoint-initdb.d # Mounting the init script
#- ./dump:/dump
environment:
- POSTGRES_PASSWORD=123
- POSTGRES_USER=postgres
- POSTGRES_DB=dblab
- POSTGRES_HOST_AUTH_METHOD=trust
command:
# TUTORIAL CONFIG: PostgreSQL with replication-ready settings for future tutorials
- postgres
- -c
- wal_level=replica # Enable replication (writes more WAL)
- -c
- max_wal_senders=10 # Allow up to 10 replication connections
- -c
- max_replication_slots=10 # Allow up to 10 replication slots
networks:
- services
ports:
- ۵۴۳۴:۵۴۳۲
restart: always
pgadmin:
# https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html
container_name: pgadmin4
hostname: pgadmin4
image: dpage/pgadmin4
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: admin@admin.com
PGADMIN_DEFAULT_PASSWORD: pgadmin123
volumes:
#- ./pgadmin_data:/data
- pgadmin_data:/var/lib/pgadmin
ports:
- "۸۰۸۰:۸۰"
networks:
- services
volumes:
# db_data: # Commented out - using bind mount instead for tutorial
pgadmin_data:
networks:
services:
name: ${APP_NAME:-sepahram}_network
۳. توضیح:
image: postgres:18 استفاده از تصویر رسمی PostgreSQL، نسخه ۱۸ را مشخص میکند.environment برای تنظیم متغیرهای محیطی داخل container استفاده میشود، مانند دیتابیس پیشفرض، کاربر و رمز عبور.volumes برای ماندگاری دادههای دیتابیس استفاده میشود. PostgreSQL 18+ زیردایرکتوریهای نسخهدار ایجاد میکند (مثل /var/lib/postgresql/18/docker) که در ./data/18/docker/ روی ماشین host شما قابل دسترسی خواهند بود.ports پورت پیشفرض PostgreSQL (5432) را داخل container به هاست map میکند.۱. پیمایش به دایرکتوری: ترمینالی را باز کنید و به دایرکتوری حاوی فایل docker-compose.yml خود وارد شوید.
۲. شروع سرویس PostgreSQL:
docker-compose up -d
این دستور container PostgreSQL را در حالت detached (در حال اجرا در پسزمینه) شروع میکند.
localhost:5432 متصل شوید.اگر میخواهید از رابط وب pgAdmin استفاده کنید، میتوانید از سرویس pgAdmin در فایل docker-compose.yml بالا استفاده کنید.
۲. شروع سرویسها:
docker-compose up -d
۳. دسترسی به pgAdmin وب: مرورگر خود را باز کنید و به http://localhost:8080 بروید
۴. اتصال به PostgreSQL: در رابط وب pgAdmin، روی “Servers” راستکلیک کنید → “Create” → “Server” و وارد کنید:
docker-compose.yml شما با نصب Docker Compose شما سازگار است../data روی ماشین host شما ایجاد خواهد شد تا ماندگاری داده را تضمین کند. در مورد پشتیبانگیری و امنیت آن مراقب باشید.این راهاندازی نصب PostgreSQL پایهای را ارائه میدهد که برای توسعه و تست مناسب است. برای محیطهای production، پیکربندیهای اضافی برای امنیت، عملکرد و مانیتورینگ توصیه میشود.
مراحل مختلف نصب و راهاندازی پستگرس در ویندوز و WSL و همچنین به کمک داکر در فیلم آموزشی زیر با جزییات مناسب آموزش داده شده است. همچنین نصب و راه اندازی اولیه pgAdmin و همچنین DBeaver هم توضیح داده شده است.
نکته : اگر احیانا فیلم آموزشی را در قسمت زیر مشاهده نمیکنید، ابتدا اطمینان حاصل کنید که با آی پی ایران در حال مشاهده آن هستید و اگر مشکل حل نشد، یک اینترنت پروایدر دیگر را امتحان کنید.