PostgreSQL 是一个功能强大、开源、稳定的对象关系数据库系统,广泛用于后端开发、数据处理与分布式架构中。本指南将手把手教你如何在 Windows、macOS 以及主流 Linux 发行版 上安装 PostgreSQL,并附上安装验证命令与基础配置方法。
打开官网下载页面:https://www.postgresql.org/download/windows/
点击 “Download the installer”,跳转至 EnterpriseDB。
下载适用于你的版本(例如 PostgreSQL 16)的安装程序。
双击运行,按提示操作:
打开命令提示符(CMD)或 PowerShell,输入以下命令:
"C:\Program Files\PostgreSQL\16\bin\psql" --version
如果显示如下类似输出,则表示安装成功:
psql (PostgreSQL) 16.1
可选:将
C:\Program Files\PostgreSQL\16\bin
添加到系统环境变量PATH
,便可直接使用psql
命令。
brew update
brew install postgresql
psql --version
输出示例:
psql (PostgreSQL) 16.1
brew services start postgresql
/Applications/Postgres.app/Contents/Versions/latest/bin/psql --version
可将其加入 PATH:
echo 'export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/latest/bin' >> ~/.zshrc
source ~/.zshrc
之后可使用:
psql --version
以下为不同发行版的详细安装步骤,均包含启动服务及验证命令。
sudo apt update
sudo apt install postgresql postgresql-contrib
psql --version
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo dnf -qy module disable postgresql
sudo dnf install -y postgresql16-server postgresql16
sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
sudo systemctl enable --now postgresql-16
/usr/pgsql-16/bin/psql --version
可加入 PATH:
echo 'export PATH=$PATH:/usr/pgsql-16/bin' >> ~/.bashrc
source ~/.bashrc
sudo dnf install -y postgresql-server postgresql-contrib
sudo postgresql-setup --initdb
sudo systemctl enable --now postgresql
psql --version
sudo pacman -Syu postgresql
sudo -iu postgres
initdb --locale $LANG -D /var/lib/postgres/data
exit
sudo systemctl enable --now postgresql
psql --version
sudo zypper refresh
sudo zypper install postgresql16-server
sudo -u postgres initdb
sudo systemctl enable --now postgresql
psql --version
切换至 postgres
用户:
sudo -i -u postgres
psql
退出:
\q
CREATE USER myuser WITH PASSWORD 'mypassword';
CREATE DATABASE mydb OWNER myuser;
适用于服务器部署环境。
postgresql.conf
路径依据系统不同:
/etc/postgresql/16/main/postgresql.conf
/var/lib/pgsql/16/data/postgresql.conf
将:
# listen_addresses = 'localhost'
修改为:
listen_addresses = '*'
pg_hba.conf
添加以下内容以允许远程访问:
host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql
问题 | 解决方法 |
---|---|
psql: command not found |
检查是否将 PostgreSQL bin 路径添加至 PATH |
连接被拒绝 | 确保 PostgreSQL 已启动并监听地址正确 |
密码验证失败 | 检查 pg_hba.conf 中是否启用了 md5 认证模式 |
pgAdmin(官方推荐 GUI 工具)
https://www.pgadmin.org/download/
DBeaver(支持多数据库)
https://dbeaver.io/