MySQL实战:SQL优化及问题排查

这篇具有很好参考价值的文章主要介绍了MySQL实战:SQL优化及问题排查。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MySQL实战:SQL优化及问题排查,MySQL,mysql,sql,数据库

有更合适的索引不走,怎么办?

MySQL在选取索引时,会参考索引的基数,基数是MySQL估算的,反映这个字段有多少种取值,估算的策略为选取几个页算出取值的平均值,再乘以页数,即为基数

查看索引基数

show index from table_name

使用force index可以强制使用索引

重新统计索引信息,会重新计算索引的基数

analyze table

count 语句慢,如何解决?

count(非索引字段):无法使用覆盖索引,最慢
count(索引字段):可以使用覆盖索引但依然要取出数据判空
count(1):不需要取出数据,但需要判断1是否为null
count(*):经过专门优化,不需要判空,理论最快

获取不到数据库连接

查看超时释放

show variables where variable_name like '%timeout'

查看链接数

show processlist
show full processlist

查看最大连接数

show variables like '%max_connections%'

修改最大连接数文章来源地址https://www.toymoban.com/news/detail-838096.html

set GLOBAL max_connections = 200;

到了这里,关于MySQL实战:SQL优化及问题排查的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 玩转MySQL数据库之SQL优化之慢查询

    本系列为:MySQL数据库详解,为千锋资深教学老师独家创作,致力于为大家讲解清晰MySQL数据库相关知识点,含有丰富的代码案例及讲解。如果感觉对大家有帮助的话,可以【关注】持续追更~ 文末有本文重点总结,技术类问题,也欢迎大家和我们沟通交流! 从今天开始本系列

    2024年02月06日
    浏览(88)
  • MSQL系列(六) Mysql实战-SQL语句优化

    Mysql实战-SQL语句优化 前面我们讲解了索引的存储结构,B+Tree的索引结构,以及索引最左侧匹配原则,Explain的用法,可以看到是否使用了索引,今天我们讲解一下SQL语句的优化及如何优化 1.表结构 新建表结构 user, user_info id 主键id列 id_card 身份证id user_name 用户姓名 age 年龄

    2024年02月07日
    浏览(48)
  • 开源数据库MYSQL DBA运维实战 第二章 SQL

    1.1定义库 创建业务数据库         语法:CREATE  DATABASE   数据库名;         数据库命名要求:                 区分大小写                 唯一性                 不能使用如create  select                 不能单独使用数字和特殊符号如-                

    2024年02月20日
    浏览(82)
  • 【MySQL】探索MySQL存储过程的魔力,初学者的数据库编程秘笈(内含实战SQL脚本)

    🧑‍💻作者名称:DaenCode 🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。 😎人生感悟:尝尽人生百味,方知世间冷暖。 📖所属专栏:重温MySQL MySQL存储过程作为一种服务器端的 数据库编程方式 ,提供了高效、可重用的方法来执行相对复杂的数据库操

    2024年02月15日
    浏览(68)
  • SQL执行慢的问题排查和优化思路

    待补充 待补充 大多数情况下都正常,偶尔很慢。 3.1.1 主要考虑原因 数据库在刷新脏页,例如redo log写满了需要同步到磁盘。 或者执行的时候,遇到锁,如表锁、行锁。 此次执行的SQL语句存在问题,且真实业务数据量大,便会导致速度极慢的问题。 【补充】 脏页 :当内存

    2023年04月24日
    浏览(41)
  • [MySQL]SQL优化之sql语句优化

    🌈键盘敲烂,年薪30万🌈 目录 一、索引优化 回顾: 📕索引分类: 📕索引失效: 📕设计原则: 📕SQL性能分析 二、SQL优化 语句优化 📕 insert语句: 📕 主键优化: 📕 order by优化: 📕 group by优化: 📕 limit 优化 📕 count 优化 📕 update 优化  📕索引分类: 一般分类:主

    2024年02月04日
    浏览(40)
  • mysql 主从同步排查和处理 Slave_IO、Slave_SQL

    目录 查看主从是否同步 详解Slave_IO、Slave_SQL  判断主从完全同步 各个 Log_File 和 Log_Pos的关系 修复命令 Slave_IO_Running、Slave_SQL_Running,这两个值是Yes表示正常,No是异常 使用竖排显示: Slave_IO 线程负责把 主库 的bin日志( Master_Log )内容,抄写到 从库 的中继日志上( Relay_Log )。

    2024年02月15日
    浏览(51)
  • 【MySQL】sql如何优化?

    (1)通过SQL监控、请求、日志等找出耗时的SQL语句; (2)使用Explain方式查看SQL耗时的具体原因; (3)根据实际情况解决:索引、缓存、左右连接 select_type:简单查询or复杂查询?simple、primary、subquery、deriveer、union。 type:SQL关联类型, system const eq_ref ref range index All 。一般

    2024年02月07日
    浏览(53)
  • 【MySQL】SQL优化(九)

    🚗MySQL学习·第九站~ 🚩本文已收录至专栏:MySQL通关路 ❤️文末附全文思维导图,感谢各位点赞收藏支持~ ⭐学习汇总贴,超详细思维导图:【MySQL】学习汇总(完整思维导图) 如果我们需要一次性往数据库表中插入多条记录: 我们可以从以下三个方面进行优化~ (1.1) 批量插入数

    2024年02月15日
    浏览(45)
  • [MySQL--SQL优化]

    如果一次性需要 插入大批量数据 ,使用 insert语句插入性能较低 ,此时 可以使用MySQL数据库提供的load指令 进行插入。 操作如下: 针对于大数据量的情况下 分页查询时越往后就会变得越耗时。所以我们需要通过优化limit来提升效率 优化思路:自己计数。 比如:我们可以自己

    2024年02月07日
    浏览(91)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包