PostgreSQL中的psql命令详解
作者:孙霸天
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
"\d"命令
# 查看当前数据库中所有表、视图、序列 \d # 在"\d"命令后面接表名,则可以查看该表的表定义 \d pgbench_accounts
"\db"命令
# 查看表空间的信息 \db
"\dn"命令
# 可以查看所有的模式信息 \dn
“\du"命令或”\dg"命令
# 可以查看数据库中的所有角色或用户 \du
"\x"命令
# 可以设置查询结果的输出模式 \x
"?"命令
# 可以查询PostgreSQL支持的所有命令 \?
其他常用命令
# 查看数据库 \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
使用上下键翻动历史命令
psql支持使用上下键获取执行过的历史命令
自动补全功能
psql的自动补全功能使用起来非常方便。在执行语句时,不需要完全输入数据对象的名称,使用Tab键可以自动补全
显示SQL语句执行时间
使用“\timing”命令,可以打开显示SQL语句执行时间的开关。再使用一次“\timing”命令,则关掉该开关
日常维护语句
查询活动会话(active_session)
select pid,usename,datname,query,client_addr from pg_stat_activity where pid <> pg_backend_pid() and state='active' order by query;
查询等待事件(wait_event)
select wait_event_type,wait_event,state,query,a.* from pg_stat_activity a where query like 'insert%';
到此这篇关于PostgreSQL-psql命令详解的文章就介绍到这了,更多相关PostgreSQL psql命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!