温馨提示×

centos pgadmin怎么导出表

小樊
50
2026-09-24 10:27:18
栏目: 智能运维

在 CentOS 上使用 pgAdmin 导出 PostgreSQL 表,常见有两种方式:pgAdmin 图形界面导出 和 服务器命令行导出(psql / pg_dump)。下面分别说明。


一、使用 pgAdmin 图形界面导出(推荐新手)

1. 导出为 SQL 文件(结构与数据)

  1. 打开 pgAdmin
  2. 左侧树形结构展开:
    Servers → 你的服务器 → Databases → 你的数据库 → Schemas → public → Tables
    
  3. 右键点击要导出的表
  4. 选择 Backup…
  5. 在弹出窗口中:
    • Format:选择 Plain(生成 .sql)
    • Filename:选择保存路径
    • Sections / Options:
      • 勾选 Pre-data、Data、Post-data
  6. 点击 Backup
  7. 导出完成后会在指定路径生成 SQL 文件

✅ 适合:备份单表、迁移表结构+数据


2. 导出为 CSV 文件(仅数据)

  1. 右键表 → Query Tool
  2. 执行:
    SELECT * FROM 表名;
    
  3. 查询结果下方,点击 下载图标
  4. 选择 CSV
  5. 保存文件

✅ 适合:Excel / 数据分析使用


二、在 CentOS 命令行导出(pg_dump)

如果 pgAdmin 是在 CentOS 服务器上运行,也可直接用命令。

1. 导出单表为 SQL

pg_dump -h localhost -U 用户名 -d 数据库名 \
  -t 表名 > /tmp/表名.sql

示例:

pg_dump -h localhost -U postgres -d testdb -t users > /tmp/users.sql

2. 导出单表为 CSV

psql -h localhost -U 用户名 -d 数据库名 \
  -c "COPY 表名 TO STDOUT WITH CSV HEADER" > /tmp/表名.csv

示例:

psql -U postgres -d testdb -c "COPY users TO STDOUT WITH CSV HEADER" > /tmp/users.csv

三、常见问题

1. 权限不足

确保:

  • 当前系统是 postgres 用户或有权限
  • 或加 sudo -u postgres
sudo -u postgres pg_dump ...

2. pgAdmin 无法连接

检查:

  • PostgreSQL 服务是否运行
    systemctl status postgresql
    
  • 防火墙 / 监听地址(postgresql.conf)

如果你能告诉我:

  • pgAdmin 是 本地还是服务器上
  • 想导出成 SQL / CSV / 备份文件
  • PostgreSQL 版本

我可以给你更精确的步骤。

0 踩