楼主: pipihappy8888

【话题讨论】开源数据库MySQL性能优化:破解谜团!(已公布获奖)

[复制链接]
论坛徽章:
7
优秀写手
日期:2013-12-18 09:29:102009架构师大会纪念徽章
日期:2014-08-11 17:52:242010系统架构师大会纪念
日期:2014-08-11 17:52:242011系统架构师大会纪念章
日期:2014-08-11 17:52:242012系统架构师大会纪念章
日期:2014-08-11 17:52:242013系统架构师大会纪念章
日期:2014-08-11 17:52:242014系统架构师大会纪念章
日期:2014-08-11 17:52:24
21#
发表于 2014-7-9 16:36 | 只看该作者
支持下,问下现在的电商网站用oracle还是mysql,我们选择了oracle。
想看看为什么那么多电商网站选择mysql,原因是什么?

使用道具 举报

回复
求职 : 数据库管理员
论坛徽章:
45
祖国60周年纪念徽章
日期:2015-05-19 13:02:04itpub13周年纪念徽章
日期:2014-12-30 09:02:122010数据库技术大会纪念徽章
日期:2015-04-23 10:33:192011数据库大会纪念章
日期:2015-04-23 10:33:192012数据库大会纪念章
日期:2015-04-23 10:33:192013数据库大会纪念章
日期:2015-04-23 10:33:192014数据库大会纪念章
日期:2015-04-23 10:33:192015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24暖羊羊
日期:2015-05-13 18:24:182015年新春福章
日期:2015-05-30 17:02:05
22#
发表于 2014-7-9 23:27 | 只看该作者
太落后了。。。我现在看来要学下MySQL了

使用道具 举报

回复
论坛徽章:
4
福特
日期:2013-10-07 14:40:27问答徽章
日期:2013-11-16 02:56:512014年新春福章
日期:2014-02-18 16:44:08马上有对象
日期:2014-02-18 16:44:08
23#
发表于 2014-7-14 05:10 | 只看该作者

支持一下

使用道具 举报

回复
论坛徽章:
8
ITPUB社区12周年站庆徽章
日期:2013-09-18 15:36:43ITPUB社区12周年站庆徽章
日期:2013-10-08 14:58:21福特
日期:2013-10-31 15:09:48问答徽章
日期:2013-11-05 10:55:11Jeep
日期:2013-11-13 14:13:49优秀写手
日期:2014-03-25 05:59:512014年世界杯参赛球队: 俄罗斯
日期:2014-07-24 16:18:03Jeep
日期:2014-08-13 14:52:33
24#
发表于 2014-7-15 17:30 | 只看该作者
1:首先开启slow 获取慢查询
2:分析慢查询,一般 数据库压力大的重复的sql会很多,通知slow 分析工具 稍微处理下, 我一般用mysqldumpslow 基本能满足我的需要
3:先分析 产生次数最多耗费时间最长语句
4:拿出语句  我是先看 执行计划 查询 是否 走到了 需要的索引,这个很重要 ,如果看下觉得索引  没走到需要 ,这个时候可能需要重建索引
5:如果sql 与多个条件 建议 建立组合索引
6:如果觉得你新建了索引,但是 mysql 走的却不是你想要的索引,可以 强行走你的索引,比对下执行计划
7:尽量让group by order by 走到索引
8:在有些情况下子查询 可以提升性能,这个深有体会,我的心得什么时候使用子查询
如下情况:当你的在多表连接的时候 或者单表查询的 ,如果需求数据通过多条件组合 取数据  这个时候 你就要想下 是否可以 先取 某个条件  或者 2到3个条件组合的数据,这里的思路是  先取出最少的数据,再通过特定的条件连接  这样通过子查询 来减少一次性获取数据量 来提高查询效率
9:在啰嗦下  最先调整的 应该是 你的系统 参数 ,但是一般  在运行的mysql 都是先调整好了的 到后期 一般是微调
10:最后 实在是重构不去来,该索引也不行的,现在市场上 好像有io卡 这个提升速度灰常明显,有钱人买个吧,
11:再不行 大家 建个群 一起哭吧!
12 :楼主 我就是来 要徽章的  给个吧 ,我写这么多 不容易呀!

使用道具 举报

回复
求职 : 数据库管理员
招聘 : Java研发
论坛徽章:
6402
娜美
日期:2021-10-12 20:11:36技术图书徽章
日期:2021-09-30 12:11:1120周年集字徽章-年	
日期:2021-09-30 12:12:5820周年集字徽章-20	
日期:2021-09-30 12:43:0619周年集字徽章-周
日期:2021-09-30 13:18:3120周年集字徽章-20	
日期:2021-09-30 16:44:1219周年集字徽章-周
日期:2021-09-30 17:01:04技术图书徽章
日期:2021-09-30 17:59:14技术图书徽章
日期:2021-10-06 10:36:4019周年集字徽章-19
日期:2021-10-06 14:43:24
25#
发表于 2014-7-22 11:43 | 只看该作者
1、我们可以通过哪些方式来定位执行效率较低的SQL语句呢?请结合您的经验分享下您的心得。
方法多多,都是跟谷哥学的:
① 开启mysql的慢查询,设置如下两个参数:
        log-slow-queries = E:/DB/mysql/MySQL-5.1.50/TB_DEV.log
        long_query_time = **
        log-slow-queries表示日志册存储位置,long_query_time表示执行时间单位是秒,
                这样设置后重启MySQL服务器,查询超过**秒的sql语句将会记录到日志中
② 就是常用的看执行计划了,这个关系型数据库基本都能做到

2.  索引可以帮助用户解决大多数的SQL性能问题,它是在MySQL的存储引擎层中实现的。
    这些存储引擎各有特点,实际应用中我们应该怎样来选择?
        我觉得,根据引擎的特点结合实际的环境来选择引擎,
        进一步来说,要发挥引擎的最佳性能就要看他需要什么,例如:InnoDB来说,索引是极其重要的。
        一般来说引擎的不同会导致数据库性能、事务、并发控制、参照完整性、缓存、 故障恢复,备份及回存各有特点
        关于Mysql引擎,兄弟们看看《High Performance MySQL》,关于细节的介绍的比较深入。
       
3.  对于最常见的三种引擎MyISAM、InnoDB、Memory,它们支持的索引类型有哪些?
        划分索引的类型要从两个角度来说,《MySQL 5权威指南》中对这个介绍了一种划分方法。
        另一种应该是从计算机技术角度来说吧,这里不做进一步说明
       
4. 在什么情况下使用中间表可以提高查询速度?请结合实际应用场景说说使用中间表的好处。
   是将关联,统计之类的结果存放在了中间表中,后面的查询直接取结果。
   用途不光如此,还有数据复制等...

使用道具 举报

回复
求职 : 数据库管理员
招聘 : Java研发
论坛徽章:
6402
娜美
日期:2021-10-12 20:11:36技术图书徽章
日期:2021-09-30 12:11:1120周年集字徽章-年	
日期:2021-09-30 12:12:5820周年集字徽章-20	
日期:2021-09-30 12:43:0619周年集字徽章-周
日期:2021-09-30 13:18:3120周年集字徽章-20	
日期:2021-09-30 16:44:1219周年集字徽章-周
日期:2021-09-30 17:01:04技术图书徽章
日期:2021-09-30 17:59:14技术图书徽章
日期:2021-10-06 10:36:4019周年集字徽章-19
日期:2021-10-06 14:43:24
26#
发表于 2014-7-22 15:39 | 只看该作者
liuhuoxingkong 发表于 2014-7-6 18:36
刚开始学Mysql,了解还停留在基本sql阶段。。。学习

那个搜狗用mysql???

使用道具 举报

回复
求职 : 数据库管理员
招聘 : Java研发
论坛徽章:
6402
娜美
日期:2021-10-12 20:11:36技术图书徽章
日期:2021-09-30 12:11:1120周年集字徽章-年	
日期:2021-09-30 12:12:5820周年集字徽章-20	
日期:2021-09-30 12:43:0619周年集字徽章-周
日期:2021-09-30 13:18:3120周年集字徽章-20	
日期:2021-09-30 16:44:1219周年集字徽章-周
日期:2021-09-30 17:01:04技术图书徽章
日期:2021-09-30 17:59:14技术图书徽章
日期:2021-10-06 10:36:4019周年集字徽章-19
日期:2021-10-06 14:43:24
27#
发表于 2014-7-22 15:40 | 只看该作者
yi_yin 发表于 2014-7-15 17:30
1:首先开启slow 获取慢查询
2:分析慢查询,一般 数据库压力大的重复的sql会很多,通知slow 分析工具 稍微 ...

哥,你太逗了~

使用道具 举报

回复
论坛徽章:
4
2016猴年福章
日期:2016-02-23 09:58:34猴赛雷
日期:2016-02-23 10:00:05
28#
发表于 2014-7-22 16:09 | 只看该作者
iongxiao 发表于 2014-7-3 16:23
1、我们可以通过哪些方式来定位执行效率较低的SQL语句呢?请结合您的经验分享下您的心得。
1)通过慢查询日 ...

看来这个方法比较常用。
都是用这个直接抓sql 的啊哈

使用道具 举报

回复
论坛徽章:
4
2016猴年福章
日期:2016-02-23 09:58:34猴赛雷
日期:2016-02-23 10:00:05
29#
发表于 2014-7-22 16:11 | 只看该作者
陌路巨额投入 发表于 2014-7-3 21:11
1、我们可以通过哪些方式来定位执行效率较低的SQL语句呢?请结合您的经验分享下您的心得。

     方法1:通 ...

回答的不少,但是仍然采取复制粘贴路线。
后面的例子连个字母都没变,good,job
~

使用道具 举报

回复
论坛徽章:
4
2016猴年福章
日期:2016-02-23 09:58:34猴赛雷
日期:2016-02-23 10:00:05
30#
发表于 2014-7-22 16:13 | 只看该作者
lanyishamo 发表于 2014-7-9 16:36
支持下,问下现在的电商网站用oracle还是mysql,我们选择了oracle。
想看看为什么那么多电商网站选择mysql ...

核心系统还是o 的比较多...

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表