PG数据库管理-PostgreSQL 常用命令行元命令汇总

PostgreSQL 常用命令行元命令汇总

PostgreSQL 的 psql 命令行工具提供了大量元命令(以反斜杠 \ 开头的命令),用于管理数据库、查询元数据和调整输出格式等。以下分类总结常用命令:

信息查询与元数据
  • \l\list

    列出所有数据库,包含名称、所有者、编码和访问权限。

  • \d

    显示当前数据库中的表、视图、序列等对象列表。
    \d+ 显示更详细的描述信息。

  • \d table_name

    查看指定表的结构(列名、类型、约束等)。
    \d+ table_name 包含额外信息如存储参数和注释。

  • \dn

    列出所有模式(schema)。

  • \df

    列出函数。可搭配 \df+ function_name 查看函数定义。

  • \du\dg

    列出角色和用户权限。

格式控制
  • \x\expanded

    切换输出格式为垂直展开模式(适合宽表数据),再次执行切回水平模式。

  • \pset format unaligned

    设置输出为无对齐格式(适合导出数据到文件)。

  • \pset border 0|1|2

    控制表格边框显示(0无边框,1内部分隔线,2完整边框)。

  • \H\html

    切换输出为 HTML 格式。

性能与统计
  • \timing

    切换 SQL 执行时间显示,开启后会显示每条语句的执行耗时。

  • \watch [interval]

    重复执行当前查询(如 **\watch 5 每 5 秒执行一次**)。

连接与操作
  • \c dbname\connect dbname

    切换到指定数据库。

  • \q

    退出 psql 会话。

  • \! command

    在 shell 中执行外部命令(如 \! ls 列出当前目录)。

文件操作
  • \i filename

    执行指定 SQL 文件中的命令。

  • \o filename

    将后续查询结果重定向到文件,\o 取消重定向。

其他实用命令
  • \e

    打开默认编辑器编辑当前查询缓冲区,保存后执行。

  • \cd directory

    更改当前工作目录。

  • \prompt [text] variable

    提示用户输入并保存到变量(如 \prompt 'Enter name:' name)。

  • \set [name [value]]

    设置或显示变量(如 \set AUTOCOMMIT off)。

示例组合用法
  1. 查看表结构并统计查询时间:

    sql 复制代码
    \timing
    \d users
  2. 导出查询结果到文件:

    sql 复制代码
    \o output.csv
    SELECT * FROM orders;
    \o
  3. 监控动态数据:

    sql 复制代码
    SELECT COUNT(*) FROM logs WHERE created_at > NOW() - INTERVAL '1 hour';
    \watch 60

这些命令能显著提升 PostgreSQL 命令行操作效率,建议结合 \? 查看完整帮助文档。

相关推荐
qq_46097840几秒前
实现 Svelte 中基于数组索引的 details 元素单开单关交互
jvm·数据库·python
这个DBA有点耶26 分钟前
3步抓出慢SQL,别等半夜被叫醒😴
数据库·代码规范
dfdfadffa31 分钟前
SQL窗口函数如何优化嵌套子查询_提升执行效率
jvm·数据库·python
m0_588758481 小时前
如何查看集群版本_crsctl query crs activeversion当前版本
jvm·数据库·python
摇滚侠1 小时前
Oracle19c 导出 Oracle11g 导入,Oracle19c 导出导入,Oracle11g 导出导入
java·数据库·oracle
zh1570231 小时前
CSS如何让元素出现时带抖动_利用关键帧定义抖动动画
jvm·数据库·python
Irene19911 小时前
(课堂笔记)Oracle:场景判断(CASE WHEN)、集合运算、EXISTS、行列转换
oracle
薛定谔的悦2 小时前
共享数据总线(DPR)设计模式——嵌入式系统的“内存数据库”
jvm·数据库·设计模式
程序猿online2 小时前
本地mysql密码重置
数据库·mysql
四维迁跃2 小时前
如何排查SQL存储过程死锁_分析死锁日志与索引优化
jvm·数据库·python