常用命令说明

1

列出所有数据库

\l

2

列出数据库中所有的表

\d

3

显示指定表的结构

\d table_name

4

列出所有的帮助命令

\?

5

列出数据库中所有的索引

\di

6

列出数据库中所有的view

\dv

7

sql命令帮助

\h

8

退出连接

\q

9

切换到指定的数据库

\c [database_name]

10

显示当前数据库和用户

\c

11

显示客户端的连接信息

\conninfo

12

显示所有用户

\du

13

显示数据库中的schema

\dn

14

显示字符集

\encoding

15

执行sql文件

\i mydb.sql

16

扩展展示信息,相当于MySQL中的\G

\x

17

将下一条sql执行结果导入文件中

\o /opt/test.txt

18

列出当前数据库已启用的插件/扩展

\dx

19

查看public下有哪些表

\dt public

20

列出当前search_path下所有用户可见函数

\df

登陆

psql -h 172.16.0.2 -p 5432 -U postgres -d 数据库名 -W
  • -h #数据库所在的IP地址
  • -p #(默认5432)数据库的监听端口
  • -U #用户名
  • -d #数据库名称
  • -W#指示 psql 命令在连接数据库时强制提示输入密码

复制相关

#查看复制状态,master执行
select *from pg_stat_replication;

#查看延迟,slave执行
select pg_last_wal_receive_lsn(), pg_last_wal_replay_lsn();

#判断主备节点-- true  = 备库(物理复制中的热备,天然只读)-- false = 主库
select pg_is_in_recovery();

wal日志相关

#查看当前使用的wal日志
select pg_walfile_name(pg_current_wal_lsn());

#查看有多少个wal日志
select count(*) from pg_ls_waldir();

#手动切换wal日志
select pg_switch_wal(); 

PG状态管理

#postgres用户
pg_ctl start/status/stop

#超级用户例如:root
systemctl start/status/stop postgresql-16

插件管理

#查看可用插件列表
select * FROM pg_available_extensions;

#查看已启用的插件
 select * from pg_extension;

#创建/启用插件
create extension if not exists postgis;/create extension postgis;

#基础删除插件
drop extension "uuid-ossp";

#联级删除插件(会同时删除所有依赖 PostGIS 的表、列、函数等)
drop extension "uuid-ossp" cascade;

会话管理

#查看会话列表
select * from pg_stat_activity;

#强制断开单个会话
select pg_terminate_backend(pid);

#取消单个慢查询,只中断sql
select pg_cancel_backend(pid);
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐