Home >Database >Mysql Tutorial > Discuz论坛之大坑!各位坛主请注意!

Discuz论坛之大坑!各位坛主请注意!

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 17:36:291024browse

今天论坛打开了这个会话功能,结果很荣幸踩坑里了,连接数直接给干到2000开外。好了,直接上图说下:showprocesslist,满屏显示这条SQL,情急之下,立即pt-kill

今天论坛打开了这个会话功能,结果很荣幸踩坑里了,连接数直接给干到2000开外。

好了,直接上图说下:

wKiom1MsY8-x9OKZAAnGTm-533s096.jpg

show processlist,满屏显示这条SQL,,情急之下,立即pt-kill,先让论坛活下来。顺便想问候下discuz开发,你们真的做了测试了吗,就直接发布了?

wKioL1MsZAzxA95XAAr_EJ44cEU098.jpg

表结构:

mysql> desc pre_common_session; +--------------+----------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+----------------------+------+-----+---------+-------+ | sid | char(6) | NO | PRI | | | | ip1 | tinyint(3) unsigned | NO | | 0 | | | ip2 | tinyint(3) unsigned | NO | | 0 | | | ip3 | tinyint(3) unsigned | NO | | 0 | | | ip4 | tinyint(3) unsigned | NO | | 0 | | | uid | int(11) unsigned | NO | MUL | 0 | | | username | char(50) | NO | | | | | groupid | smallint(6) unsigned | NO | | 0 | | | invisible | tinyint(1) | NO | | 0 | | | action | tinyint(1) unsigned | NO | | 0 | | | lastactivity | int(10) unsigned | NO | | 0 | | | lastolupdate | int(10) unsigned | NO | | 0 | | | fid | int(11) unsigned | NO | | 0 | | | tid | int(11) unsigned | NO | | 0 | | +--------------+----------------------+------+-----+---------+-------+ 14 rows in set (0.00 sec)


wKiom1MsZpPxqnIfAAKDLW5TAPA952.jpg

由于该SQL导致全表扫描,虽然表数据不多1万多行,但InnoDB引擎在没有使用到索引的情况下,会转为表级锁,并发一大,线程处理不完,连接不释放,连接数就会上升。

wKiom1MsZ0mjVOapAADjB8UDJV8038.jpg

最终让开发在后台关闭该功能,解决之。



本文出自 “贺春旸的技术专栏” 博客,请务必保留此出处

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn