【MySQL】优化(SQL和索引优化、应用层面优化、修改配置文件优化)

【MySQL】优化(SQL和索引优化、应用层面优化、修改配置文件优化),第1张

MySQL优化

SQL和索引优化

应用层面优化:除了优化SQL和索引,很多时候,在实际生产环境中,由于数据库服务器本身的性能局限,就必须要对上层的应用来进行一些优化,使得上层应用访问数据库的压力能够减到最小

  • 连接池:应用上一般访问数据库,都是先和MySQL Server创建连接,然后发送SQL语句,Server处理完成后,再把结果通过网络返回给应用,然后关闭和MySQL Server的连接,因此短时间大量的数据库访问,消耗的TCP三次握手和四次挥手所花费的时间就很大了,稍微大一点的项目,我们都会在应用访问数据库的那一层上,添加连接池模块,相当于应用和MySQL Server事先创建一组连接,当应用需要请求MySQL Server时,不需要再进行TCP连接和释放连接了,一般连接池都会维护以下资源:
    • 连接池里面保持固定数量的活跃TCP连接,供应用使用。
    • 如果应用瞬间访问MySQL的量比较大,那么连接池会实时创建更多的连接给应用使用
    • 当连接池里面的TCP连接一段时间内没有被用到,连接池会释放多余的连接资源,保留它设置的最大空闲连接量就可以了
  • **增加cache缓存:**业务上增加redis、memcache,一般用缓存把经常访问的数据缓存起来

MySQL Server优化:(通过修改配置文件来启用一些功能)

  • 开启MySQL 查询缓存
  • 索引和数据缓存
  • MySQL线程缓存
  • 设置并发连接数量和超时时间

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/876688.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存