知识大全 mysql性能的检查和调优方法[6]
Posted 数据库
篇首语:忘掉失败,不过要牢记失败中的教训。。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 mysql性能的检查和调优方法[6]相关的知识,希望对你有一定的参考价值。
机器实在负荷不了
如果做了以上调整 服务器还是不能承受 那就只能通过架构级调整来优化了
mysql同步
通过mysql同步功能将数据同步到数台从数据库 由主数据库写入 从数据库提供读取 我个人不是那么乐意使用mysql同步 因为这个办法会增加程序的复杂性 并常常会引起数据方面的错误 在高负荷的服务中 死机了还可以快速重启 但数据错误的话要恢复就比较麻烦
加入缓存
加入缓存之后 就可以解决并发的问题 效果很明显 如果是实时系统 可以考虑用刷新缓存方式使缓存保持最新 在前端加入squid的架构比较提倡使用 在命中率比较高的应用中 基本上可以解决问题 如果是在程序逻辑层里面进行缓存 会增加很多复杂性 问题会比较多而且难解决 不建议在这一层面进行调整
程序架构调整 支持同时连接多个数据库
如果web加入缓存后问题还是比较严重 只能通过程序架构调整 把应用拆散 用多台的机器同时提供服务 如果拆散的话 对业务是有少许影响 如果业务当中有部分功能必须使用所有的数据 可以用一个完整库+n个分散库这样的架构 每次修改都在完整库和分散库各操作一次 或定期整理完整库 当然 还有一种最笨的 把数据库整个完完整整的做拷贝 然后程序每次都把完整的sql在这些库执行一遍 访问时轮询访问 我认为这样要比mysql同步的方式安全
使用 mysql proxy 代理
mysql proxy 可以通过代理把数据库中的各个表分散到数台服务器 但是它的问题是没有能解决热门表的问题 如果热门内容散在多个表中 用这个办法是比较轻松就能解决问题 我没有用过这个软件也没有认真查过 不过我对它的功能有一点点怀疑 就是它怎么实现多个表之间的联合查询?如果能实现 那么效率如何呢?
使用memcachedb
数据库换用支持mysql的memcachedb 是可以一试的想法 从memcachedb的实现方式和层面来看对数据没有什么影响 不会对用户有什么困扰 为我现在因为数据库方面问题不多 没有试验过这个玩意 不过 只要它支持mysql的大部分主要的语法 而且本身稳定 可用性是无需置疑的
cha138/Article/program/MySQL/201311/29770相关参考
我一直是使用mysql这个数据库软件它工作比较稳定效率也很高在遇到严重性能问题时一般都有这么几种可能 索引没有建好 sql写法过于复杂 配置错误 机器实在负荷不了 索引没有建好 如果看
我一直是使用mysql这个数据库软件它工作比较稳定效率也很高在遇到严重性能问题时一般都有这么几种可能 索引没有建好 &n
这时可以看到结果集还是条但是Extra中的filesort不见了这时mysql使用userid_clicks这个索引去查询这不但能快速查询到userid=admin
嗯这时可以看到mysql使用了userid这个索引搜索了用userid索引一次搜索后结果集有条然后虽然使用了filesort一条一条排序但是因为结果集只有区区条效率
rowinset(sec) 注意keyrows和Extra这三项这条语句返回的结果说明了该sql会使用PRIMARY主键索引来查询
MySQL性能调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  
Java的垃圾回收机制详解和调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! JVM的gc概述
MySQL数据库性能优化的实际操作方案[6] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
Hibernate性能调优 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! inverse=?
Hibernate性能调优[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Hibernat