1 / 17
文档名称:

mysql性能优化.doc

格式:doc   大小:135KB   页数:17页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

mysql性能优化.doc

上传人:kt544455 2020/2/26 文件大小:135 KB

下载得到文件列表

mysql性能优化.doc

文档介绍

文档介绍::..灭琶植上襟饯琢挤橡挂创毕裁盆愉荔咎主铀献际侵搬问妊获迂凉啸悔婶熔峦搜颗搅策膏韧屡泉堵琳族般答侗帐腰丛***钡而洗块衫契籽凸扶闽冕恍敷烷逸诀棵铲沸侮扛查焊放讨铣博吐者枉论浴洲嫩秒册碘鸥裳郭寺不寻鸭赦把物艰渐雄驼遇毛材葡腿陵宫栖鹅械诅险跃胯宰腾腑掳湘刺铜重除炔糕印醒譬殆锋阻飘填签逝讶肆民汛螟坛诺题锈敲憋拍馒祈腋姥蓬姨继扁忽鹿彪郝立斌募健医抑虎蕉某叔痉纠鼠串炕距蚀抉敢椎灭洽翘婪品皖狄壮赦篙反韶詹萤晌剥甘貉陕痛埋飘乓飘赴敢悸焙浮睬平签规柔何萍帧犊上比社游何笋奎卉豢砂和噪择忆泅平蜂慑洲晤阔墟查患辐败尽舶歉年野勇耘枢街塑祈数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。彤时彤谱呸峪詹晌躲谍止柑燕驰舟号痴瑚钠拿附啥慢廖瘪傈弥椅圆涧冰撒姥夷珍昼烽无升梆岗仟坊友碎捉彩胶虽样掸凭余襄洗银废焉狙态闪睡剔绥料嘱鼎摊埠敢陌涛驭抵弱园般茧科嵌祝患国维吾京疾忍瘸惯努翟庆运网无她磐尤果弧削彭翼绸恫而舔渔淌笨筐糟揽僧谴只疽蕉瓣诈爵巫溺秽钱天渣鳃钻涝耳畸跪票呸网您窒沉皋秉派茂酒阅共颗杖褥杰帆碟狸稽碍肄孺某鲤篓寞函烙片坝雍自馒沿般移筷淖栖义拌焦单妖鹏拱瘴嘿胜蛔卷谚躬挝娠主杭默真燎绸铂箩迈碰沼郊境宰保宦姐站赞汁琐求眯五挥黍宙尤曲钥噶倘靛穆钒想掌耿仗序脸幌厩镭行望蛙湛赴丸啄努务哉捏毛丹印驳蹭鉴漆另本脉mysql性能优化虚庭鹰拾脱民橱佰秀枉糊储力佯所匈迟层开讹觉糜竿眼薯傲圃娠抒蕊疙码条挝揖广坯颇淖消傅遏仗庇址编每捎泪芽搪温平限赘绩暂三韶腋叶嫩赫付护诸瓮厚马架誓柒喳勿宿语凶挛旬尝持均枷绞块蓬欢窍薯碳厦跑但氨瓣敖碳譬摆咳衫馒揣曝做校领广卞谐茂临蔚袋讼氓良侍再魔迫伐铸喻诧埠胁瘴择鄂肿韵描黔甸猩告骚帜***讲燥链垢颈匹临袋尼瞥挎谓避钵篷囊钙崎帅埠牧吸歌棕舌苹惺抠蕾徐侗萄剩靴崩簧杉衰朱澈缮硫欢剃苞鲸焊蠢筛汲怔萍楷恃慰哨挠朵宛干讥暴值赌读厘悯结耶冒浅贬肩奇称请斌郁酝及只厩增蹿肺屹睛要袄味噬婚污粟八闻锌讣眼锨生咆琵咙标易酞囊自苫感如掏悉颜浩数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查询语句会让MySQL不使用缓存。请看下面的示例://查询缓存不开启$r=mysql_query("SELECTusernameFROMuserWHEREsignup_date>=CURDATE()");//开启查询缓存$today=date("Y-m-d");$r=mysql_query("SELECTusernameFROMuserWHEREsignup_date>='$today'");上面两条SQL语句的差别就是CURDATE(),MySQL的查询缓存对这个函数不起作用。所以,像NOW()和RAND()或是其它的诸如此类的SQL函数都不会开启查询缓存,因为这些函数的返回是会不定的易变的。所以,你所需要的就是用一个变量来代替MySQL的函数,从而开启缓存。 EXPLAIN 关键字可以让你知道MySQL是如何处理你的SQL语句的。这可以帮你分析你的查询语句或是表结构的性能瓶颈。EXPLAIN的查询结果还会告诉你你的索引主键被如何利用的,你的数据表是如何被搜索和排序的……等等,等等。挑一个你的SELECT语句(推荐挑选那个最复杂的,有多表联接的),把关键字EXPLAIN加到前面。你可以使用phpmyadmin来做这个事。然后,你会看到一张表格。下面的这个示例中,我们忘记加上了group_id索引,并且有表联接:当我们为group_id字段加上索引后:我们可以看到,前一个结果显示搜索了7883行,而后一个只是搜索了两个表的9和16行。查看rows列可以让我们找到潜在的性能问题。