开发者社区> 问答> 正文

如何降低mysql占用CPU使用率

我司服务器运行了一套转换系统
环境为:upupw_np5.5 集成环境

系统业务简单说明:mysql数据库中,A表是存着网站所有用户的记录,大概记录有40万,每个用户大概是2万条记录,都存于此A表中。B表存放着所有商品记录,A表每秒都会有用户相应 的ID来比对自己ID下的记录是否和B表的记录相匹配,如果没有匹配,则通过从B表读取相差的记录写入A表。现在每分每秒都需要对A表操作查询、写入,随着用户增加MYSQL 越来越显示占CPU过高,基本上可以达到50%以上。当然相应的我们也给这个表建立相应的索引了。
问题:
1、我们如何来降低mysql在CPU的使用率;
2、可否分表,例如每个用户一个表,但如何做到B表记录变化后,所有用户表都跟着变化呢,触发机制如何写;
3、数据库架构上,我们该如何应对以后百万级数据;
我们现在所做的工作:
1、开启了memcached;
2、开启了缓存查询;
3、增加tabel_temp 的大小。
4、mysql sleep 秒数减小。

展开
收起
张蔷 2017-02-22 13:52:00 3792 0
2 条回答
写回答
取消 提交回答
  • 1、开启了memcached;
    2、开启了缓存查询;
    3、增加tabel_temp 的大小。
    4、mysql sleep 秒数减小。

    2019-07-17 20:49:39
    赞同 展开评论 打赏
  • 之前我运维的时候,工程师给过一个文档,可以参考下:https://help.aliyun.com/knowledge_detail/41715.html 这个是他们帮助中心的文档

    2019-07-17 20:49:39
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
One Box: 解读事务与分析一体化数据库 HybridDB for MySQL 立即下载
One Box:解读事务与分析一体化数据库HybridDB for MySQL 立即下载
如何支撑HTAP场景-HybridDB for MySQL系统架构和技术演进 立即下载

相关镜像