MYSQL占用CPU100%?优化帝国CMS结合项中的模糊like查询参数方法,做数字型完全匹配

MYSQL占用CPU100%?优化帝国CMS结合项中的模糊like查询参数方法,做数字型完全匹配

浏览次数:
作者: 墨鱼
信息来源: 本站原创
更新日期: 2024-04-09 18:32:37
文章简介

MYSQL CPU占用高?优化帝国CMS模糊like查询,转为数字型完全匹配,减少CPU负担,提升性能。精确匹配,快速定位,避免资源浪费,确保系统稳定运行。

  • 正文开始
  • 相关阅读
  • 推荐作品

墨鱼最近几天发现服务器的MYSQL的CPU使用率会偶尔飙升到100%,于是开启MYSQL得慢查询发现是结合项查询导致的:

MYSQL占用CPU100%?优化帝国CMS结合项中的模糊like查询参数方法,做数字型完全匹配

一般来说对于小数据量的数据大家可以不用管的,奈何墨鱼网站业务中这个模型里面的数据太多,于是到了不的不优化的地步了。

墨鱼结合项使用的是单选模式,那么我们先把结合项字段设置为:TINYINT,长度1,比如:(注意:这个修改不会改变字段里面的内容,但是会导致后台对应字段数据不能重新对应。如果有需要一定要先做转换,不会的可以联系墨鱼制作对应的转换代码。

1==红色

2==橙色

3==黄色

4==绿色

然后打开/e/action/ListInfo.php文件找到:

$listandf.=$doandor.$andr[$i]." LIKE '%".$andval."%'";

改成:

if (false !== strstr($emod_r[$mid]['checkboxf'], ','.$andr[$i].',')) {
        $listandf.=$doandor.$andr[$i]." LIKE '%".$andval."%'";
}else{
        $listandf .= $doandor.$andr[$i] . (is_numeric($andval) ? "=".$andval : "='".$andval."'");
}

然后结合项里记得改成对应的:

##红色,1##橙色,2##黄色,3##绿色,4

这样就可以了。转换后,没有再出现过MYSQL帝国CMS结合项查询过慢的问题。

帝国CMS会员消息提醒功能增加弹窗提示效果
« 上一篇 2024年04月06日
帝国cms判断目录是否存在,如果不存在则创建目录
下一篇 » 2024年05月04日
  • 微软bing IndexNow的推送和管理-帝国CMS插件
    23阅读0条评论0个赞
    微软Bing IndexNow推送管理插件,专为帝国CMS打造。本教程指导您如何高效利用该插件,实现网站内容快速被Bing搜索引擎收录。通过简单配置,即可自动化推送新发布或更新的页面至Bing,加速索引过程,提升网站SEO效果。轻松管理推送历史,监控索引状态,确保网站内容及时展现给目标用户。优化网站可见性,从掌握Bing IndexNow推送管理开始。
  • 帝国CMS8.0测试版搜索结果页只显示第1页的解决方法
    50阅读0条评论0个赞
    对于刚安装帝国CMS8.0测试版尝鲜的小伙伴们可能发现,使用高级搜索的时候结果页只显示第1页,虽然帝国CMS开发者说正式版会解决此问题,但是临时使用还是要先解决这个问题的。所以今天墨鱼就说下临时的解决方法。
  • 【优化分享】帝国CMS大数据量筛选性能瓶颈突破实践
    243阅读0条评论5个赞
    突破帝国CMS大数据筛选性能瓶颈实战教程:掌握高效技巧,轻松应对海量数据处理挑战。本教程详解性能优化策略,助力快速筛选,提升系统响应速度。无论你是开发者还是管理员,都能从中获益,实现数据筛选效率飞跃,让帝国CMS在大数据环境下依然流畅运行。立即学习,解锁大数据处理新技能!
  • 帝国CMS统计多个数据表今日更新总数代码
    166阅读0条评论4个赞
    帝国CMS统计多表今日更新总数代码教程:通过SQL查询结合帝国CMS函数,汇总多个数据表中今日更新的记录总数。步骤包括编写SQL联合查询语句,利用`DATE()`函数筛选今日数据,结合帝国CMS的数据库操作函数执行查询,并输出结果。此教程教你高效获取多表今日更新概况,优化管理效率。
  • 帝国cms7.5无刷新 Ajax 点击加载更多列表信息源代码
    825阅读2条评论13个赞
    帝国CMS 7.5 Ajax无刷新加载,高效实现点击加载更多列表信息,精简源码仅展示核心功能,优化用户体验,提升网页加载效率。

如本文对您有帮助,就请墨鱼抽根烟吧!