在 CentOS 上“导入 PostgreSQL”通常有两种理解:① 安装并启动 PostgreSQL 服务;② 把数据(SQL / 备份文件)导入到 PostgreSQL 中。下面分别说明。
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
CentOS 7 用
EL-7,CentOS 8/Stream 用EL-8
sudo dnf install -y postgresql15-server postgresql15
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
sudo systemctl enable postgresql-15
sudo systemctl start postgresql-15
sudo -u postgres psql
# 切换到 postgres 用户
sudo -u postgres psql
# 在 psql 中
\i /path/to/file.sql
或命令行直接导入:
sudo -u postgres psql -d 数据库名 -f /path/to/file.sql
sudo -u postgres pg_restore -d 数据库名 /path/to/file.dump
COPY 表名 FROM '/path/to/file.csv' WITH (FORMAT csv, HEADER true);
编辑:
/var/lib/pgsql/15/data/postgresql.conf
listen_addresses = '*'
/var/lib/pgsql/15/data/pg_hba.conf
host all all 0.0.0.0/0 md5
重启服务:
sudo systemctl restart postgresql-15
sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
如果你指的是 “从 MySQL / Oracle 导入” 或 “Docker 方式部署”,可以告诉我具体场景,我可以给你更针对性的步骤。