PostgreSQL基础命令(持续更新)
·
常用命令说明
|
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);
更多推荐
所有评论(0)