• 主页

  • 投资

  • IT

    🔥
  • 设计

  • 销售

  • 共99篇

    mysql数据库

关闭

返回栏目

关闭

返回mysql数据库栏目

99 - 调优 - 数据库连接 - 实时 - 用户、连接

作者:

贺及楼

成为作者

更新日期:2024-04-11 21:38:31

调优 - 数据库连接 - 实时 - 用户、连接

查询数据库当前连接数

  1. show status like 'Threads%';
释义
Threads_cached 线程缓存内的线程数量
Threads_connected 当前打开的连接数量, Threads_connected 跟show processlist结果相同
Threads_created 创建的线程数
Threads_running 正在运行的线程数(激活的连接数),这个数值一般远低于connected数值;准确的来说, Threads_running是代表当前并发数
  1. 一个是treads_cached这个是缓冲池中的线程个数。
  2. 一个是treads_connected这个是连接中的线程数。
  3. 第三个是Threads_created,它的含义是已经创建的线程数。
  4. 在并发数低的情况下,一般Threads_created参数是treads_cachedtreads_connected参数之和。
  5. 当并发数高的情况下,Threads_created就会暴增,这个时候就需要考虑thread_cache_size来设置缓冲池的大小了。
  1. thread_cache_size
  2. 当客户端断开之后,服务器处理此客户的线程将会缓存起来以响应下一个客户而不是销毁(前提是缓存数未达上限)
  3. thread_cache_size根据物理内存设置规则如下:
  4. 1G ---> 8
  5. 2G ---> 16
  6. 3G ---> 32
  7. >3G ---> 64

查询数据库当前连接信息

  1. # mysql内
  2. show full processlist
  3. # 查看MySQL连接的id会不会变动
  1. select * from information_schema.processlist;
  2. # 除了root,各自用户可以看见各自的连接情况
释义
Binlog Dump 主节点正在将二进制日志 ,同步到从节点
Change User 正在执行一个 change-user 的操作
Close Stmt 正在关闭一个Prepared Statement 对象
Connect 一个从节点连上了主节点
Connect Out 一个从节点正在连主节点
Create DB 正在执行一个create-database 的操作
Daemon 服务器内部线程,而不是来自客户端的链接
Debug 线程正在生成调试信息
Delayed Insert 该线程是一个延迟插入的处理程序
Drop DB 正在执行一个 drop-database 的操作
Execute 正在执行一个 Prepared Statement
Fetch 正在从Prepared Statement 中获取执行结果
Field List 正在获取表的列信息
Init DB 该线程正在选取一个默认的数据库
Kill 正在执行 kill 语句,杀死指定线程
Long Data 正在从Prepared Statement 中检索 long data
Ping 正在处理 server-ping 的请求
Prepare 该线程正在准备一个 Prepared Statement
ProcessList 该线程正在生成服务器线程相关信息
Query 该线程正在执行一个语句
Quit 该线程正在退出
Refresh 该线程正在刷表,日志或缓存;或者在重置状态变量,或者在复制服务器信息
Register Slave 正在注册从节点
Reset Stmt 正在重置 prepared statement
Set Option 正在设置或重置客户端的 statement-execution 选项
Shutdown 正在关闭服务器
Sleep 正在等待客户端向它发送执行语句
Statistics 该线程正在生成 server-status 信息
Table Dump 正在发送表的内容到从服务器
Time Unused