Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Ò»·Ý³¬ÏêϸµÄMySQL¸ßÐÔÄÜÓÅ»¯ÊµÕ½×ܽá
 
  1773  次浏览      27
 2019-1-25
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚ51cto,±¾ÎÄÖ÷Òª½éÉܵÄÊÇ MySQL µÄ²éѯ¹ý³Ì£¬ºÜ¶àµÄ²éѯÓÅ»¯¹¤×÷ʵ¼ÊÉϾÍÊÇ×ñѭһЩԭÔòÈà MySQL µÄÓÅ»¯Æ÷Äܹ»°´ÕÕÔ¤ÏëµÄºÏÀí·½Ê½ÔËÐС£

MySQL ¶ÔÓںܶà Linux ´ÓÒµÕß¶øÑÔ£¬ÊÇÒ»¸ö·Ç³£¼¬ÊÖµÄÎÊÌ⣬¶àÊýÇé¿ö¶¼ÊÇÒòΪ¶ÔÊý¾Ý¿â³öÏÖÎÊÌâµÄÇé¿öºÍ´¦Àí˼·²»ÇåÎú¡£

MySQL ²éѯ¹ý³Ì

ÓÅ»¯µÄÕÜѧ

×¢£ºÓÅ»¯ÓзçÏÕ£¬ÐÞ¸ÄÐè½÷É÷¡£

ÓÅ»¯¿ÉÄÜ´øÀ´µÄÎÊÌ⣺

1.ÓÅ»¯²»×ÜÊǶÔÒ»¸öµ¥´¿µÄ»·¾³½øÐУ¬»¹ºÜ¿ÉÄÜÊÇÒ»¸ö¸´ÔÓµÄÒÑͶ²úµÄϵͳ¡£

2.ÓÅ»¯Êֶα¾À´¾ÍÓкܴóµÄ·çÏÕ£¬Ö»²»¹ýÄãûÄÜÁ¦Òâʶµ½ºÍÔ¤¼ûµ½¡£

3.Èκεļ¼Êõ¿ÉÒÔ½â¾öÒ»¸öÎÊÌ⣬µ«±ØÈ»´æÔÚ´øÀ´Ò»¸öÎÊÌâµÄ·çÏÕ¡£

4.¶ÔÓÚÓÅ»¯À´Ëµ½â¾öÎÊÌâ¶ø´øÀ´µÄÎÊÌ⣬¿ØÖÆÔڿɽÓÊܵķ¶Î§ÄÚ²ÅÊÇÓгɹû¡£

5.±£³ÖÏÖ×´»ò³öÏÖ¸ü²îµÄÇé¿ö¶¼ÊÇʧ°Ü¡£

ÓÅ»¯µÄÐèÇó£º

1.Îȶ¨ÐÔºÍÒµÎñ¿É³ÖÐøÐÔ£¬Í¨³£±ÈÐÔÄܸüÖØÒª¡£

2.ÓÅ»¯²»¿É±ÜÃâÉæ¼°µ½±ä¸ü£¬±ä¸ü¾ÍÓзçÏÕ¡£

3.ÓÅ»¯Ê¹ÐÔÄܱäºÃ£¬Î¬³ÖºÍ±ä²îÊǵȸÅÂÊʼþ¡£

4.ÇмÇÓÅ»¯£¬Ó¦¸ÃÊǸ÷²¿ÃÅЭͬ£¬¹²Í¬²ÎÓëµÄ¹¤×÷£¬Èκε¥Ò»²¿ÃŶ¼²»ÄܶÔÊý¾Ý¿â½øÐÐÓÅ»¯¡£

ËùÒÔÓÅ»¯¹¤×÷£¬ÊÇÓÉÒµÎñÐèÇóÇýʹµÄ!

ÓÅ»¯ÓÉË­²ÎÓë?ÔÚ½øÐÐÊý¾Ý¿âÓÅ»¯Ê±£¬Ó¦ÓÉÊý¾Ý¿â¹ÜÀíÔ±¡¢ÒµÎñ²¿ÃÅ´ú±í¡¢Ó¦ÓóÌÐò¼Ü¹¹Ê¦¡¢Ó¦ÓóÌÐòÉè¼ÆÈËÔ±¡¢Ó¦ÓóÌÐò¿ª·¢ÈËÔ±¡¢Ó²¼þ¼°ÏµÍ³¹ÜÀíÔ±¡¢´æ´¢¹ÜÀíÔ±µÈ£¬ÒµÎñÏà¹ØÈËÔ±¹²Í¬²ÎÓë¡£

ÓÅ»¯Ë¼Â·

ÓÅ»¯Ê²Ã´

ÔÚÊý¾Ý¿âÓÅ»¯ÉÏÓÐÁ½¸öÖ÷Òª·½Ã棺

1.°²È«£ºÊý¾Ý¿É³ÖÐøÐÔ¡£

2.ÐÔÄÜ£ºÊý¾ÝµÄ¸ßÐÔÄÜ·ÃÎÊ¡£

ÓÅ»¯µÄ·¶Î§ÓÐÄÄЩ

´æ´¢¡¢Ö÷»úºÍ²Ù×÷ϵͳ·½Ã棺

1.Ö÷»ú¼Ü¹¹Îȶ¨ÐÔ

2.I/O ¹æ»®¼°ÅäÖÃ

3.Swap ½»»»·ÖÇø

4.OS Äں˲ÎÊýºÍÍøÂçÎÊÌâ

Ó¦ÓóÌÐò·½Ã棺

1.Ó¦ÓóÌÐòÎȶ¨ÐÔ

2.SQL Óï¾äÐÔÄÜ

3.´®ÐзÃÎÊ×ÊÔ´

4.ÐÔÄÜÇ·¼Ñ»á»°¹ÜÀí

5.Õâ¸öÓ¦ÓÃÊʲ»ÊʺÏÓà MySQL

Êý¾Ý¿âÓÅ»¯·½Ã棺

1.ÄÚ´æ

2.Êý¾Ý¿â½á¹¹(ÎïÀí&Âß¼­)

3.ʵÀýÅäÖÃ

˵Ã÷£º²»¹ÜÊÇÉè¼ÆÏµÍ³¡¢¶¨Î»ÎÊÌ⻹ÊÇÓÅ»¯£¬¶¼¿ÉÒÔ°´ÕÕÕâ¸ö˳ÐòÖ´ÐС£

ÓÅ»¯Î¬¶È

Êý¾Ý¿âÓÅ»¯Î¬¶ÈÓÐÈçÏÂËĸö£º

1.Ó²¼þ

2.ϵͳÅäÖÃ

3.Êý¾Ý¿â±í½á¹¹

4.SQL ¼°Ë÷Òý

ÓÅ»¯Ñ¡Ôñ£º

1.ÓÅ»¯³É±¾£ºÓ²¼þ>ϵͳÅäÖÃ>Êý¾Ý¿â±í½á¹¹>SQL ¼°Ë÷Òý¡£

2.ÓÅ»¯Ð§¹û£ºÓ²¼þ<ϵͳÅäÖÃ<Êý¾Ý¿â±í½á¹¹

ÓÅ»¯¹¤¾ßÓÐɶ

Êý¾Ý¿â²ãÃæ

¼ì²éÎÊÌâ³£ÓÃµÄ 12 ¸ö¹¤¾ß£º

1.MySQL

2.mysqladmin£ºMySQL ¿Í»§¶Ë£¬¿É½øÐйÜÀí²Ù×÷

3.mysqlshow£º¹¦ÄÜÇ¿´óµÄ²é¿´ shell ÃüÁî

4.SHOW [SESSION | GLOBAL] variables£º²é¿´Êý¾Ý¿â²ÎÊýÐÅÏ¢

5.SHOW [SESSION | GLOBAL] STATUS£º²é¿´Êý¾Ý¿âµÄ״̬ÐÅÏ¢

6.information_schema£º»ñȡԪÊý¾ÝµÄ·½·¨

7.SHOW ENGINE INNODB STATUS£ºInnodb ÒýÇæµÄËùÓÐ״̬

8.SHOW PROCESSLIST£º²é¿´µ±Ç°ËùÓÐÁ¬½ÓµÄ session ״̬

9.explain£º»ñÈ¡²éѯÓï¾äµÄÖ´Ðмƻ®

10.show index£º²é¿´±íµÄË÷ÒýÐÅÏ¢

11.slow-log£º¼Ç¼Âý²éѯÓï¾ä

12.mysqldumpslow£º·ÖÎö slowlog ÎļþµÄ¹¤¾ß

²»³£Óõ«ºÃÓÃµÄ 7 ¸ö¹¤¾ß£º

1.Zabbix£º¼à¿ØÖ÷»ú¡¢ÏµÍ³¡¢Êý¾Ý¿â(²¿Êð Zabbix ¼à¿ØÆ½Ì¨)

2.pt-query-digest£º·ÖÎöÂýÈÕÖ¾

3.MySQL slap£º·ÖÎöÂýÈÕÖ¾

4.sysbench£ºÑ¹Á¦²âÊÔ¹¤¾ß

5.MySQL profiling£ºÍ³¼ÆÊý¾Ý¿âÕûÌå״̬¹¤¾ß

6.Performance Schema£ºMySQL ÐÔÄÜ״̬ͳ¼ÆµÄÊý¾Ý

7.workbench£º¹ÜÀí¡¢±¸·Ý¡¢¼à¿Ø¡¢·ÖÎö¡¢ÓÅ»¯¹¤¾ß(±È½Ï·Ñ×ÊÔ´)

Êý¾Ý¿â²ãÃæÎÊÌâ½â¾ö˼·

Ò»°ãÓ¦¼±µ÷ÓŵÄ˼·£ºÕë¶ÔͻȻµÄÒµÎñ°ìÀí¿¨¶Ù£¬ÎÞ·¨½øÐÐÕý³£µÄÒµÎñ´¦Àí£¬ÐèÒªÂíÉϽâ¾öµÄ³¡¾°¡£

show processlist
explain select id ,name from stu where name='clsn'; # ALL id name age sex
select id,name from stu where id=2-1 º¯Êý ½á¹û¼¯>30;
¡¡ show index from table;
ͨ¹ýÖ´Ðмƻ®Åжϣ¬Ë÷ÒýÎÊÌ⣨ÓÐûÓС¢ºÏ²»ºÏÀí£©»òÕßÓï¾ä±¾ÉíÎÊÌâ
show status like '%lock%'; # ²éÑ¯Ëø×´Ì¬
kill SESSION_ID; # ɱµôÓÐÎÊÌâµÄsession

³£¹æµ÷ÓÅ˼·£ºÕë¶ÔÒµÎñÖÜÆÚÐԵĿ¨¶Ù£¬ÀýÈçÔÚÿÌì 10-11 µãÒµÎñÌØ±ðÂý£¬µ«ÊÇ»¹Äܹ»Ê¹Ó㬹ýÁËÕâ¶Îʱ¼ä¾ÍºÃÁË¡£

1.²é¿´slowlog£¬·ÖÎöslowlog£¬·ÖÎö³ö²éѯÂýµÄÓï¾ä£»

2.°´ÕÕÒ»¶¨ÓÅÏȼ¶£¬Ò»¸öÒ»¸öÅŲéËùÓÐÂýÓï¾ä£»

3.·ÖÎötop SQL£¬½øÐÐexplainµ÷ÊÔ£¬²é¿´Óï¾äÖ´ÐÐʱ¼ä£»

4.µ÷ÕûË÷Òý»òÓï¾ä±¾Éí¡£

ϵͳ²ãÃæ

CPU·½Ã棺vmstat¡¢sar top¡¢htop¡¢nmon¡¢mpstat¡£

Äڴ棺free¡¢ps-aux¡£

IO É豸(´ÅÅÌ¡¢ÍøÂç)£ºiostat¡¢ss¡¢netstat¡¢iptraf¡¢iftop¡¢lsof¡£

vmstat ÃüÁî˵Ã÷£º

Procs£ºr ÏÔʾÓжàÉÙ½ø³ÌÕýÔڵȴý CPU ʱ¼ä¡£b ÏÔʾ´¦ÓÚ²»¿ÉÖжϵÄÐÝÃߵĽø³ÌÊýÁ¿¡£Ôڵȴý I/O¡£

Memory£ºswpd ÏÔʾ±»½»»»µ½´ÅÅ̵ÄÊý¾Ý¿éµÄÊýÁ¿¡£Î´±»Ê¹ÓõÄÊý¾Ý¿é£¬Óû§»º³åÊý¾Ý¿é£¬ÓÃÓÚ²Ù×÷ϵͳµÄÊý¾Ý¿éµÄÊýÁ¿¡£

Swap£º²Ù×÷ϵͳÿÃë´Ó´ÅÅÌÉϽ»»»µ½ÄÚ´æºÍ´ÓÄÚ´æ½»»»µ½´ÅÅ̵ÄÊý¾Ý¿éµÄÊýÁ¿¡£s1 ºÍ s0 ×îºÃÊÇ 0¡£

IO£ºÃ¿Ãë´ÓÉ豸ÖжÁÈë b1 µÄдÈëµ½É豸 b0 µÄÊý¾Ý¿éµÄÊýÁ¿¡£·´Ó³ÁË´ÅÅÌ I/O¡£

System£ºÏÔʾÁËÿÃë·¢ÉúÖжϵÄÊýÁ¿(in)ºÍÉÏÏÂÎĽ»»»(cs)µÄÊýÁ¿¡£

CPU£ºÏÔʾÓÃÓÚÔËÐÐÓû§´úÂ룬ϵͳ´úÂ룬¿ÕÏУ¬µÈ´ý I/O µÄ CPU ʱ¼ä¡£

iostat ÃüÁî˵Ã÷£º

ʵÀýÃüÁiostat -dk 1 5;iostat -d -k -x 5 (²é¿´É豸ʹÓÃÂÊ(%util)ºÍÏìӦʱ¼ä(await))¡£

TPS£º¸ÃÉ豸ÿÃëµÄ´«Êä´ÎÊý¡£¡°Ò»´Î´«Ê䡱Òâ˼ÊÇ¡°Ò»´Î I/O ÇëÇ󡱡£¶à¸öÂß¼­ÇëÇó¿ÉÄܻᱻºÏ²¢Îª¡°Ò»´Î I/O ÇëÇ󡱡£

iops £ºÓ²¼þ³ö³§µÄʱºò£¬³§¼Ò¶¨ÒåµÄÒ»¸öÿÃë×î´óµÄ IO ´ÎÊý¡£

"Ò»´Î´«Êä"ÇëÇóµÄ´óСÊÇδ֪µÄ¡£

KB_read/s£ºÃ¿Ãë´ÓÉ豸(drive expressed)¶ÁÈ¡µÄÊý¾ÝÁ¿¡£

KB_wrtn/s£ºÃ¿ÃëÏòÉ豸(drive expressed)дÈëµÄÊý¾ÝÁ¿¡£

KB_read£º¶ÁÈ¡µÄ×ÜÊý¾ÝÁ¿¡£

KB_wrtn£ºÐ´ÈëµÄ×ÜÊýÁ¿Êý¾ÝÁ¿;ÕâЩµ¥Î»¶¼Îª Kilobytes¡£

ϵͳ²ãÃæÎÊÌâ½â¾ö°ì·¨

ÄãÈÏΪµ½µ×¸ºÔظߺ㬻¹ÊǵͺÃÄØ?ÔÚʵ¼ÊµÄÉú²úÖУ¬Ò»°ãÈÏΪ CPU Ö»Òª²»³¬¹ý 90% ¶¼Ã»Ê²Ã´ÎÊÌâ¡£µ±È»²»ÅųýÏÂÃæÕâÐ©ÌØÊâÇé¿ö¡£

CPU ¸ºÔظߣ¬IO ¸ºÔصͣº

1.ÄÚ´æ²»¹»

2.´ÅÅÌÐÔÄܲî

3.SQL ÎÊÌ⣺ȥÊý¾Ý¿â²ã£¬½øÒ»²½ÅŲé SQL ÎÊÌâ

4.IO ³öÎÊÌâÁË(´ÅÅ̵½ÁÙ½çÁË¡¢raid Éè¼Æ²»ºÃ¡¢raid ½µ¼¶¡¢Ëø¡¢ÔÚµ¥Î»Ê±¼äÄÚ TPS ¹ý¸ß)

5.TPS ¹ý¸ß£º´óÁ¿µÄСÊý¾Ý IO¡¢´óÁ¿µÄÈ«±íɨÃè

IO ¸ºÔظߣ¬CPU ¸ºÔصͣº

1.´óÁ¿Ð¡µÄ IO д²Ù×÷

2.autocommit£¬²úÉú´óÁ¿Ð¡ IO;IO/PS£¬´ÅÅ̵ÄÒ»¸ö¶¨Öµ£¬Ó²¼þ³ö³§µÄʱºò£¬³§¼Ò¶¨ÒåµÄÒ»¸öÿÃë×î´óµÄ IO ´ÎÊý¡£

3.´óÁ¿´óµÄ IO д²Ù×÷£ºSQL ÎÊÌâµÄ¼¸ÂʱȽϴó

IOºÍ CPU ¸ºÔض¼ºÜ¸ß£º

Ó²¼þ²»¹»ÁË»ò SQL ´æÔÚÎÊÌâ

»ù´¡ÓÅ»¯

ÓÅ»¯Ë¼Â·

¶¨Î»ÎÊÌâµã˱Îü£ºÓ²¼þ>ϵͳ>Ó¦ÓÃ>Êý¾Ý¿â>¼Ü¹¹(¸ß¿ÉÓᢶÁд·ÖÀë¡¢·Ö¿â·Ö±í)¡£

´¦Àí·½Ïò£ºÃ÷È·ÓÅ»¯Ä¿±ê¡¢ÐÔÄܺͰ²È«µÄÕÛÖС¢·À»¼Î´È»¡£

Ó²¼þÓÅ»¯

¢ÙÖ÷»ú·½Ãæ

¸ù¾ÝÊý¾Ý¿âÀàÐÍ£¬Ö÷»ú CPU Ñ¡Ôñ¡¢ÄÚ´æÈÝÁ¿Ñ¡Ôñ¡¢´ÅÅÌÑ¡Ôñ£º

1.ƽºâÄÚ´æºÍ´ÅÅÌ×ÊÔ´

2.Ëæ»úµÄ I/O ºÍ˳ÐòµÄ I/O

3.Ö÷»ú RAID ¿¨µÄ BBU(Battery Backup Unit)¹Ø±Õ

¢ÚCPU µÄÑ¡Ôñ

CPU µÄÁ½¸ö¹Ø¼üÒòËØ£ººËÊý¡¢Ö÷Ƶ¡£¸ù¾Ý²»Í¬µÄÒµÎñÀàÐͽøÐÐÑ¡Ôñ£º

1.CPU Ãܼ¯ÐÍ£º¼ÆËã±È½Ï¶à£¬OLTP Ö÷ƵºÜ¸ßµÄ CPU¡¢ºËÊý»¹Òª¶à¡£

2.IO Ãܼ¯ÐÍ£º²éѯ±È½Ï£¬OLAP ºËÊýÒª¶à£¬Ö÷Ƶ²»Ò»¶¨¸ßµÄ¡£

¢ÛÄÚ´æµÄÑ¡Ôñ

OLAP ÀàÐÍÊý¾Ý¿â£¬ÐèÒª¸ü¶àÄڴ棬ºÍÊý¾Ý»ñÈ¡Á¿¼¶Óйء£OLTP ÀàÐÍÊý¾ÝÒ»°ãÄÚ´æÊÇ CPU ºËÐÄÊýÁ¿µÄ 2 ±¶µ½ 4 ±¶£¬Ã»ÓÐ×î¼Ñʵ¼ù¡£

¢Ü´æ´¢·½Ãæ

¸ù¾Ý´æ´¢Êý¾ÝÖÖÀàµÄ²»Í¬£¬Ñ¡Ôñ²»Í¬µÄ´æ´¢É豸£¬ÅäÖúÏÀíµÄ RAID ¼¶±ð(raid5¡¢raid10¡¢Èȱ¸ÅÌ)¡£

¶ÔÓÚ²Ù×÷ϵͳÀ´½²£¬²»ÐèÒªÌ«ÌØÊâµÄÑ¡Ôñ£¬×îºÃ×öºÃÈßÓà(raid1)(ssd¡¢sas¡¢sata)¡£

Ö÷»ú raid ¿¨Ñ¡Ôñ£º

1.ʵÏÖ²Ù×÷ϵͳ´ÅÅ̵ÄÈßÓà(raid1)

2.ƽºâÄÚ´æºÍ´ÅÅÌ×ÊÔ´

3.Ëæ»úµÄ I/O ºÍ˳ÐòµÄ I/O

4.Ö÷»ú raid ¿¨µÄ BBU(Battery Backup Unit)Òª¹Ø±Õ

¢ÝÍøÂçÉ豸·½Ãæ

ʹÓÃÁ÷Á¿Ö§³Ö¸ü¸ßµÄÍøÂçÉ豸(½»»»»ú¡¢Â·ÓÉÆ÷¡¢ÍøÏß¡¢Íø¿¨¡¢HBA ¿¨)¡£×¢Ò⣺ÒÔÉÏÕâЩ¹æ»®Ó¦¸ÃÔÚ³õʼÉè¼ÆÏµÍ³Ê±¾ÍÓ¦¸Ã¿¼ÂǺá£

·þÎñÆ÷Ó²¼þÓÅ»¯

·þÎñÆ÷Ó²¼þÓÅ»¯¹Ø¼üµã£º

1.ÎïÀí״̬µÆ

2.×Ô´ø¹ÜÀíÉ豸£ºÔ¶³Ì¿ØÖÆ¿¨(FENCEÉ豸£ºipmi ilo idarc)¡¢¿ª¹Ø»ú¡¢Ó²¼þ¼à¿Ø¡£

3.µÚÈý·½µÄ¼à¿ØÈí¼þ¡¢É豸(snmp¡¢agent)¶ÔÎïÀíÉèÊ©½øÐÐ¼à¿Ø¡£

4.´æ´¢É豸£º×Ô´øµÄ¼à¿ØÆ½Ì¨¡£EMC2(HP ÊÕ¹ºÁË)¡¢ ÈÕÁ¢(HDS)¡¢IBM µÍ¶Ë OEM HDS¡¢¸ß¶Ë´æ´¢ÊÇ×Ô¼º¼¼Êõ£¬»ªÎª´æ´¢¡£

ϵͳÓÅ»¯

CPU£º»ù±¾²»ÐèÒªµ÷Õû£¬ÔÚÓ²¼þÑ¡Ôñ·½ÃæÏ¹¦·ò¼´¿É¡£

Äڴ棺»ù±¾²»ÐèÒªµ÷Õû£¬ÔÚÓ²¼þÑ¡Ôñ·½ÃæÏ¹¦·ò¼´¿É¡£

SWAP£ºMySQL ¾¡Á¿±ÜÃâʹÓà Swap¡£°¢ÀïÔÆµÄ·þÎñÆ÷ÖÐĬÈÏ swap Ϊ 0¡£

IO £ºraid¡¢no lvm¡¢ext4 »ò xfs¡¢ssd¡¢IO µ÷¶È²ßÂÔ¡£

Swap µ÷Õû(²»Ê¹Óà swap ·ÖÇø)£º

/proc/sys/vm/swappinessµÄÄÚÈݸijÉ0(ÁÙʱ)£¬/etc/sysctl. confÉÏÌí¼Óvm.swappiness=0(ÓÀ¾Ã)

Õâ¸ö²ÎÊý¾ö¶¨ÁË Linux ÊÇÇãÏòÓÚʹÓà Swap£¬»¹ÊÇÇãÏòÓÚÊÍ·ÅÎļþϵͳ Cache¡£ÔÚÄÚ´æ½ôÕŵÄÇé¿öÏ£¬ÊýÖµÔ½µÍÔ½ÇãÏòÓÚÊÍ·ÅÎļþϵͳ Cache¡£

µ±È»£¬Õâ¸ö²ÎÊýÖ»ÄܼõÉÙʹÓà Swap µÄ¸ÅÂÊ£¬²¢²»ÄܱÜÃâ Linux ʹÓà Swap¡£

ÐÞ¸Ä MySQL µÄÅäÖòÎÊý innodb_flush_ method£¬¿ªÆô O_DIRECT ģʽ¡£

ÕâÖÖÇé¿öÏ£¬InnoDB µÄ buffer pool »áÖ±½ÓÈÆ¹ýÎļþϵͳ Cache À´·ÃÎÊ´ÅÅÌ£¬µ«ÊÇ redo log ÒÀ¾É»áʹÓÃÎļþϵͳ Cache¡£

ÖµµÃ×¢ÒâµÄÊÇ£¬Redo log ÊǸ²Ð´Ä£Ê½µÄ£¬¼´Ê¹Ê¹ÓÃÁËÎļþϵͳµÄ Cache£¬Ò²²»»áÕ¼ÓÃÌ«¶à¡£

IO µ÷¶È²ßÂÔ£º

#echo deadline>/sys/block/sda/queue/scheduler ÁÙʱÐÞ¸ÄΪdeadline

ÓÀ¾ÃÐ޸ģº

vi /boot/grub/grub.conf
¸ü¸Äµ½ÈçÏÂÄÚÈÝ:
kernel /boot/vmlinuz-2.6.18-8.el5 ro root=LABEL=/ elevator=deadline rhgb quiet

ϵͳ²ÎÊýµ÷Õû

Linux ϵͳÄں˲ÎÊýÓÅ»¯£º

vim/etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65535£º# Óû§¶Ë¿Ú·¶Î§
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_fin_timeout = 30
fs.file-max=65535£º# ϵͳ×î´óÎļþ¾ä±ú£¬¿ØÖƵÄÊÇÄÜ´ò¿ªÎļþ×î´óÊýÁ¿

Óû§ÏÞÖÆ²ÎÊý(MySQL ¿ÉÒÔ²»ÉèÖÃÒÔÏÂÅäÖÃ)£º

vim/etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535

Ó¦ÓÃÓÅ»¯

ÒµÎñÓ¦ÓúÍÊý¾Ý¿âÓ¦ÓöÀÁ¢¡£

·À»ðǽ£ºiptables¡¢selinux µÈÆäËûÎÞÓ÷þÎñ(¹Ø±Õ)£º

chkconfig --level 23456 acpid off
chkconfig --level 23456 anacron off
chkconfig --level 23456 autofs off
chkconfig --level 23456 avahi-daemon off
chkconfig --level 23456 bluetooth off
chkconfig --level 23456 cups off
chkconfig --level 23456 firstboot off
chkconfig --level 23456 haldaemon off
chkconfig --level 23456 hplip off
chkconfig --level 23456 ip6tables off
chkconfig --level 23456 iptables off
chkconfig --level 23456 isdn off
chkconfig --level 23456 pcscd off
chkconfig --level 23456 sendmail off
chkconfig --level 23456 yum-updatesd off

°²×°Í¼ÐνçÃæµÄ·þÎñÆ÷²»ÒªÆô¶¯Í¼ÐνçÃæ runlevel 3¡£

ÁíÍ⣬˼¿¼½«À´ÎÒÃǵÄÒµÎñÊÇ·ñÕæµÄÐèÒª MySQL£¬»¹ÊÇʹÓÃÆäËûÖÖÀàµÄÊý¾Ý¿â¡£ÓÃÊý¾Ý¿âµÄ×î¸ß¾³½ç¾ÍÊDz»ÓÃÊý¾Ý¿â¡£

Êý¾Ý¿âÓÅ»¯

SQL ÓÅ»¯·½Ïò£º

1.Ö´Ðмƻ®

2.Ë÷Òý

3.SQL ¸Äд

¼Ü¹¹ÓÅ»¯·½Ïò£º

1.¸ß¿ÉÓüܹ¹

2.¸ßÐÔÄܼܹ¹

3.·Ö¿â·Ö±í

Êý¾Ý¿â²ÎÊýÓÅ»¯

¢Ùµ÷Õû

ʵÀýÕûÌå(¸ß¼¶ÓÅ»¯£¬À©Õ¹)£º

thread_concurrency£º# ²¢·¢Ïß³ÌÊýÁ¿¸öÊý
sort_buffer_size£º# ÅÅÐò»º´æ
read_buffer_size£º# ˳Ðò¶ÁÈ¡»º´æ
read_rnd_buffer_size£º# Ëæ»ú¶ÁÈ¡»º´æ
key_buffer_size£º# Ë÷Òý»º´æ
thread_cache_size£º# (1G¡ª>8, 2G¡ª>16, 3G¡ª>32, >3G¡ª>64)

¢ÚÁ¬½Ó²ã(»ù´¡ÓÅ»¯)

ÉèÖúÏÀíµÄÁ¬½Ó¿Í»§ºÍÁ¬½Ó·½Ê½£º

max_connections # ×î´óÁ¬½ÓÊý£¬¿´½»Ò×±ÊÊýÉèÖÃ
max_connect_errors # ×î´ó´íÎóÁ¬½ÓÊý£¬ÄÜ´óÔò´ó
connect_timeout # Á¬½Ó³¬Ê±
max_user_connections # ×î´óÓû§Á¬½ÓÊý
skip-name-resolve # Ìø¹ýÓòÃû½âÎö
wait_timeout # µÈ´ý³¬Ê±
back_log # ¿ÉÒÔÔÚ¶ÑÕ»ÖеÄÁ¬½ÓÊýÁ¿

¢ÛSQL ²ã(»ù´¡ÓÅ»¯)

query_cache_size£º ²éѯ»º´æ >>> OLAP ÀàÐÍÊý¾Ý¿â£¬ÐèÒªÖØµã¼Ó´ó´ËÄڴ滺´æ£¬µ«ÊÇÒ»°ã²»»á³¬¹ý GB¡£

¶ÔÓÚ¾­³£±»Ð޸ĵÄÊý¾Ý£¬»º´æ»áÂíÉÏʧЧ¡£ÎÒÃÇ¿ÉÒÔʹÓÃÄÚ´æÊý¾Ý¿â(redis¡¢memecache)£¬Ìæ´úËüµÄ¹¦ÄÜ¡£

´æ´¢ÒýÇæ²ãÓÅ»¯

innodb »ù´¡ÓÅ»¯²ÎÊý£º

default-storage-engine
innodb_buffer_pool_size # ûÓй̶¨´óС£¬50%²âÊÔÖµ£¬¿´¿´Çé¿öÔÙ΢µ÷¡£µ«ÊǾ¡Á¿ÉèÖò»Òª³¬¹ýÎïÀíÄÚ´æ70%
innodb_file_per_table=(1,0)
innodb_flush_log_at_trx_commit=(0,1,2) # 1ÊÇ×ȫµÄ£¬0ÊÇÐÔÄÜ×î¸ß£¬2ÕÛÖÐ
binlog_sync
Innodb_flush_method=(O_DIRECT, fdatasync)
innodb_log_buffer_size # 100MÒÔÏÂ
innodb_log_file_size # 100M ÒÔÏÂ
innodb_log_files_in_group # 5¸ö³ÉÔ±ÒÔÏÂ,Ò»°ã2-3¸ö¹»Óã¨iblogfile0-N£©
innodb_max_dirty_pages_pct # ´ïµ½°Ù·ÖÖ®75µÄʱºòˢд ÄÚ´æÔàÒ³µ½´ÅÅÌ¡£
log_bin
max_binlog_cache_size # ¿ÉÒÔ²»ÉèÖÃ
max_binlog_size # ¿ÉÒÔ²»ÉèÖÃ
innodb_additional_mem_pool_size #СÓÚ2GÄÚ´æµÄ»úÆ÷£¬ÍƼöÖµÊÇ20M¡£32GÄÚ´æÒÔÉÏ100M

Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ
   
1773 ´Îä¯ÀÀ       27