PostgreSQL中的psql命令详解

 更新时间:2023年07月27日 11:13:24   作者:孙霸天  
psql是PostgreSQL的一个命令行交互式客户端工具,它具有非常丰富的功能,类似于Oracle的命令行工具sqlplus,这篇文章主要介绍了PostgreSQL-psql命令详解,需要的朋友可以参考下

psql命令

psql是PostgreSQL的一个命令行交互式客户端工具,它具有非常丰富的功能,类似于Oracle的命令行工具sqlplus。

元命令

连接数据库

连接指定服务器上的数据库

psql -h 192.168.1.210 -p 5432 -U hr -d hr_db
  • -h后面的IP地址(192.168.1.210)是数据库所在的IP地址
  • -p后面的端口(5432)是数据库的监听端口
  • -U后面的参数(hr)是创建的用户名
  • -d后面的参数(hr_db)是创建的数据库名称

断开psql客户端

# 按Ctrl+D组合键
\q

常用命令

"\c"命令

# 查看所有数据库
\l
# 切换数据库
\c gis

image-20220519145705362

"\d"命令

# 查看当前数据库中所有表、视图、序列
\d
# 在"\d"命令后面接表名,则可以查看该表的表定义
\d pgbench_accounts

image-20220519145735955

"\db"命令

# 查看表空间的信息
\db

image-20220519144957193

"\dn"命令

# 可以查看所有的模式信息
\dn

image-20220519145431618

“\du"命令或”\dg"命令

# 可以查看数据库中的所有角色或用户
\du

image-20220519145954157

"\x"命令

# 可以设置查询结果的输出模式
\x

image-20220519150755522

"?"命令

# 可以查询PostgreSQL支持的所有命令
\?

image-20220519150928575

其他常用命令

# 查看数据库
\l 
# 查看表定义
\d tablename
# 查看表大小
\dt+ tablename
# 查看索引大小
\di+ tablename
# 查看函数代码 \sf random_range
\sf functionName
\sf functionName(integer,integer)
# 查看SQL命令语法
\h 
\h create database
# 显示SQL语句执行时间,(再执行一次关闭)
\timing

使用技巧

获取元命令对应的SQL代码

psql执行元命令,实质上是转换成对应的SQL语句来执行的。如果要获取这些SQL语句,则需要在psql连接数据库时增加“-E”选项

psql -h 127.0.0.1 -p 5432 -U postgres -d postgres -E 

image-20220519152214339

使用上下键翻动历史命令

psql支持使用上下键获取执行过的历史命令

自动补全功能

psql的自动补全功能使用起来非常方便。在执行语句时,不需要完全输入数据对象的名称,使用Tab键可以自动补全

显示SQL语句执行时间

使用“\timing”命令,可以打开显示SQL语句执行时间的开关。再使用一次“\timing”命令,则关掉该开关

image-20220519152749781

日常维护语句

查询活动会话(active_session)

select pid,usename,datname,query,client_addr from pg_stat_activity where pid <> pg_backend_pid() and state='active' order by query;

image-20220519152857575

查询等待事件(wait_event)

select wait_event_type,wait_event,state,query,a.* from pg_stat_activity a where query like 'insert%';

image-20220519153320862

到此这篇关于PostgreSQL-psql命令详解的文章就介绍到这了,更多相关PostgreSQL psql命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • PostgreSQL 慢查询SQL跟踪操作

    PostgreSQL 慢查询SQL跟踪操作

    这篇文章主要介绍了PostgreSQL 慢查询SQL跟踪操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL慢SQL的定位排查方法

    PostgreSQL慢SQL的定位排查方法

    所谓慢SQL 是指在数据库中执行时间超过指定阈值的语句,慢查询太多,对于业务而言,是有很大风险的,可能随时都会因为某种原因而被触发,本篇文章将介绍 PostgreSQL 慢 SQL 如何定位排查,需要的朋友可以参考下
    2024-07-07
  • postgresql多选功能实现代码

    postgresql多选功能实现代码

    这篇文章主要介绍了postgresql多选功能实现代码,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-03-03
  • PostgreSQL教程(五):函数和操作符详解(1)

    PostgreSQL教程(五):函数和操作符详解(1)

    这篇文章主要介绍了PostgreSQL教程(五):函数和操作符详解(1),本文讲解了逻辑操作符、比较操作符、数学函数和操作符、三角函数列表、字符串函数和操作符等内容,需要的朋友可以参考下
    2015-05-05
  • springboot 没法扫描到repository的解决

    springboot 没法扫描到repository的解决

    这篇文章主要介绍了springboot 没法扫描到repository的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • postgresql 实现更新序列的起始值

    postgresql 实现更新序列的起始值

    这篇文章主要介绍了postgresql 实现更新序列的起始值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • postgresql 利用fdw来实现不同数据库之间数据互通(推荐)

    postgresql 利用fdw来实现不同数据库之间数据互通(推荐)

    这篇文章主要介绍了postgresql 利用fdw来实现不同数据库之间数据互通,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-02-02
  • PGSQL查询最近N天的数据及SQL语句实现替换字段内容

    PGSQL查询最近N天的数据及SQL语句实现替换字段内容

    PostgreSQL提供了WITH语句,允许你构造用于查询的辅助语句,下面这篇文章主要给大家介绍了关于PGSQL查询最近N天的数据及SQL语句实现替换字段内容的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • PostgreSQL 实现定时job执行(pgAgent)

    PostgreSQL 实现定时job执行(pgAgent)

    这篇文章主要介绍了PostgreSQL 实现定时job执行(pgAgent),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • PostgreSQL教程(一):数据表详解

    PostgreSQL教程(一):数据表详解

    这篇文章主要介绍了PostgreSQL教程(一):数据表详解表的定义、系统字段、表的修改、表的权限等4大部份内容,内容种包括表的创建、删除、修改、字段的修改、删除、主键和外键、约束添加修改删除等,本文讲解了,需要的朋友可以参考下
    2015-05-05

最新评论