查看mysql和pgsql当前实时连接数

 mysql查看当前实时连接数

 转载:https://www.cnblogs.com/jimmyshan-study/p/11013662.html
 

静态查看:

    SHOW PROCESSLIST;  
    SHOW FULL PROCESSLIST;  
    SHOW VARIABLES LIKE '%max_connections%';  
    SHOW STATUS LIKE '%Connection%';  

 

实时查看:

复制代码
    mysql> show status like 'Threads%';  
    +-------------------+-------+  
    | Variable_name     | Value |  
    +-------------------+-------+  
    | Threads_cached    | 58    |  
    | Threads_connected | 57    |   ###这个数值指的是打开的连接数  
    | Threads_created   | 3676  |  
    | Threads_running   | 4     |   ###这个数值指的是激活的连接数,这个数值一般远低于connected数值  
    +-------------------+-------+  
       
    Threads_connected 跟show processlist结果相同,表示当前连接数。准确的来说,Threads_running是代表当前并发数  
       
    这是是查询数据库当前设置的最大连接数  
    mysql> show variables like '%max_connections%';  
    +-----------------+-------+  
    | Variable_name   | Value |  
    +-----------------+-------+  
    | max_connections | 100  |  
    +-----------------+-------+  
       
    可以在/etc/my.cnf里面设置数据库的最大连接数  
    max_connections = 1000  
复制代码

 

查看Postgresql数据库连接数

1、通过操作系统层的shell命令查看

ps -ef |grep postgres |wc -l

该命令只是一个大概进程数查询,这其中包含了很多数据库自身进程(例如archive进程等),如果想要精确连接数请考虑下面两种方式。

2、通过登录数据库后查看后台连接进程

SELECT count(*) FROM pg_stat_activity;

3、与2同理,但是此条SQL不包含当前查询进程

SELECT count(*) FROM pg_stat_activity WHERE NOT pid=pg_backend_pid();

4.重置pg表的序列号

select setval('表名_id_seq',(select max(id) from 表名));

posted @ 2021-09-09 16:21  曹丽是我女朋友。  阅读(545)  评论(0编辑  收藏  举报