MySQL 客户端连接

标签 mysql

我有一个关于 MySQL Workbench Client Connections 窗口的非常基本的问题。在该窗口中显示了 Command 列和 Time 列。如果 Command 列值为 Sleep 并且 Time 列值非常大(比如 1500),那么这意味着客户端连接对象已经有一段时间没有被使用了?另外,“连接的线程”、“运行的线程”、“总连接数”等含义是什么?

最佳答案

客户端连接实时的 MySQL Workbench 示例屏幕截图如下所示:

enter image description here

它基本上利用 SHOW PROCESSLIST 的输出命令。

  • 命令列:它基本上暗示了特定连接线程中发生的操作类型。在示例屏幕截图中: sleep 表示线程已连接,但目前尚未触发任何查询。 查询表示正在执行查询。这就是为什么我们有更多的连接的线程,但正在运行的线程(正在运行的查询命令)数量较少。某些线程正在连接过程中。查看更多详情here .
  • 时间列:线程处于当前状态的时间(以秒为单位)。
  • 已连接线程:当前向服务器打开的 MySQL 客户端连接数。因此,例如,在我们的应用程序代码中,当我们执行 mysqli_connect 时,它会打开与服务器的连接。在这种特殊情况下,它基本上还意味着 15 个客户端 session (其中大部分源自应用程序代码)正在同时执行。
  • 正在运行的线程:在这 15 个连接中,有 4 个实际上正在执行查询。
  • 总连接数:迄今为止与服务器建立的总连接数(我认为是自上次服务器重新启动以来)。
  • 连接限制:可以同时建立的最大连接数。 Default该值是151。在我们的例子中,由于服务器容量可用,我们已将其增加到 512 个。

关于MySQL 客户端连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52733420/

相关文章:

mysql - celeryworker 24小时空闲时数据库连接错误

mysql - 从mysql执行系统命令

php - 复杂的 PHP 查询

mysql - 优化mysql镜像数量和随机数

php - Netbeans 8 支持 php mysql 命令

php - 与 2 个不同的表通信 (MySQL)

Python MySQL 语法错误 - 重复 key 更新

Php 将更多数组保存到 MySQL 中

java - 连接MySql数据库时BIRT报错

java - 当 JDialog 可见时执行 SQL 语句?