postgre基本操作

1、连接数据库:

./pgsql -h 数据库IP地址 -p  端口 -U 用户名 -d 连接的库 

2、切换库

\CONNECT DBNAME
\c DBNAME

3、查看当前库下的表名:

\d

4、查询结果格式化:

默认情况下查询结果展示如下: 

在查询语句添加了:\g\x\g;之后,竖向展示查询结果,对比如下:
      

5、查询所有被锁的表,然后记下他的pid

select *
from pg_locks a
join pg_class b on a.relation = b.oid
where upper(b.relname) = 'TABLE_NAME';

再根据上面查出来的pid去表pg_stat_activity查询一下该锁对应的SQL语句:

select * from pg_stat_activity where procpid=17522;

杀掉进程,使用pg_terminate_backend()需要superuser权限,可以关闭所有的后台进程,向后台发送SIGTERM信号,用于关闭事务,此时session也会被关闭,并且事务回滚

select pg_terminate_backend(‘pid’)

 也可以使用pg_cancel_backend(),不过只能关闭当前用户下的后台进程,向后台发送SIGINT信号,用于关闭事务,此时session还在,并且事务回滚

6、查询当前所有连接的状态

select datname,pid,application_name,state from pg_stat_activity;

显示系统允许的最大连接数

show max_connections;

修改最大连接数

alter system set max_connections= 5000

pg库连接数释放

SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE state='idle';

7、查询pg库占用的大小

select pg_database.datname, pg_database_size(pg_database.datname)/1024/1024 AS size_M from pg_database order by 2 desc

8、查询pid(进程号),query_stay(命令执行了多少时间,单位s),query(正在执行什么命令 )

select pid, query_stay, replace(query, chr(10), ' ') as query ,datname, usename, client_addr, application_name, state, backend_start, xact_start, xact_stay, query_start from (select pgsa.pid,pgsa.datname as datname, pgsa.usename as usename, pgsa.client_addr client_addr, pgsa.application_name as application_name, pgsa.state as state, pgsa.backend_start as backend_start, pgsa.xact_start as xact_start, extract(epoch from (now() - pgsa.xact_start)) as xact_stay, pgsa.query_start as query_start, extract(epoch from (now() - pgsa.query_start)) as query_stay , pgsa.query as query from pg_stat_activity as pgsa where pgsa.state != 'idle' and pgsa.state != 'idle in transaction' and pgsa.state != 'idle in transaction (aborted)' ) idleconnections order by query_stay desc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值