[ת]mysql ÓÅ»¯ÐĵÃÒ»µãµã
×î½üÍøÕ¾Êý¾ÝÁ¿½Ú½ÚÅÊÉý£¬¾ÝBD·½ÃæÍ¨±¨¶ÌÆÚÄÚUV»¹ÒªÉÏÉý30%-50%¡£µ±Ç°×îÍ»³öµÄÎÊÌâÊǺǫ́ÄÚÈÝÉóºËϵͳѹÁ¦Ì«´ó£¬ÒѾÖð½¥Á¦²»´ÓÐÄ¡£¾¡¹Ü¼ÓÁËһЩӲ¼þµ«Ð§¹û²¢²»ÊÇÌ«ÀíÏ룬Ö÷Òª»¹ÊÇǰһ¶Îʱ¼ä°Ñ¹¤×÷ÖØµã¶¼·ÅÔÚǰ¶ËÄ£¿éÉÏÁË¡£ÄÚÈݹÜÀíÆ½Ì¨µÄ²¿·Ö´úÂëûÓÐ×ÐϸÕå×᣽ÓÏÂÀ´Ò»¶Îʱ¼ä¼¯Öо«Á¦ÓÅ»¯ºǫ́¡£
Ê×ÏȽ«¶à±íÁ¬²éµÄSQLÄóöÀ´£¬²ð·Ö³Éµ¥±í²éѯ¡£½«²éѯ³öÀ´µÄÊý¾Ý·µ»Øµ½Ò³ÃæÉÏÔÙÓÃajaxµÃµ½¸½±íÖеÄÊý¾Ý¡£ÕâÑùËäÈ»Ôö¼ÓÁËÇëÇó´ÎÊý£¬µ«Êý¾Ý¿âµÄslow query²»¼ûÁË¡£
ʹÓà EXPLAIN ÃüÁîÖðÌõ¼ì²éSQLÓï¾ä¡£·¢ÏÖÁ˺ܶà using sortfile ¡£ËµÃ÷ÕâЩµØ·½ÊÇÐèÒªÖØµãÓÅ»¯µÄ¡£¼ì²éwhere Ìõ¼þºóÃæµÄ×ֶΣ¬½¨Á¢ÁªºÏË÷Òý¡£Ê¹Óà use index(`index_name`) ¸æËßmysqlʹÓÃÄĸöË÷Òý½øÐмìË÷
order by / group by ×Ó¾äÊDzúÉúslow query µÄ¶à·¢Çø¡£Ò»¶¨Òª¼ì²é ÅÅÐò×Ö¶ÎÊÇ·ñ½¨Á¢ÁËË÷Òý£¬²¢ÇÒҪʹÓà use index(`index_name`) Ç¿ÖÆÊ¹ÓÃÕâ¸öË÷Òý¡£
ÖÕÓÚ´ïµ½ÁËÀíÏëµÄЧ¹û¡£ÒÔǰһ¸ö·ÖÒ³²éѯҪִÐÐ8Ã룬ÏÖÔÚ²»µ½0.1Ãë¡£µ«ÊÇmysqlÖÐÎĹؼü×Ö²éѯһֱÊÇÓÅ»¯¹¤×÷µÄ×îºó°í½Åʯ¡£
ºǫ́ÄÚÈÝÉóºË¹¤×÷±È½ÏÌØÊ⣬ËûÒªÇóÊý¾Ý²»ÄÜ»º´æ£¬¼ìË÷Ìõ¼þ½Ï¶à£¬²¢ÇÒÐèÒª¾«×¼Æ¥Å䣬Òò´ËʹÓÃLucene×÷ºǫ́¼ìË÷ÊÇÔç¾Í±»·ñ¶¨µÄ·½°¸¡£¶ømysql¹Ù·½°æ±¾ÓÖ²»Ö§³Ö ÖÐÎÄÈ«ÎļìË÷£¨Ö÷ÒªÊÇûÓнâ¾öÖÐÎÄ·Ö´ÊÎÊÌ⣩¡£Ò»µ©Åöµ½±êÌâ»òÄÚÈݹؼü×Ö¼ìË÷¾ÍҪʹÓÃlike '%xxxx%' £¬ÕâÖÖ·½Ê½Êý¾ÝÁ¿Ð¡µÄʱºò»¹¿ÉÒÔ½ÓÊÜ£¬µ«ÉÏÁ˼¸Ê®ÍòÊý¾Ýºó¾ÍÃ÷ÏÔÌåÁ¦²»Ö§ÁË¡£
×îºóÈ·¶¨ÁËÁ½Ì׿ÉÐеķ½°¸´ýÑ¡¡£
1¡¢ÔÚÐèÒªÖÐÎĹؼü×ִʼìË÷µÄ±íÖУ¬¸ù¾ÝÒª¼ìË÷µÄ×Ö¶ÎÔÙÔö¼ÓÒ»¸ö×ִʲð·Ö×ֶβ¢ÔÚÕâ¸ö×Ö¶ÎÉϽ¨Á¢ FULLTEXT ÀàÐÍË÷Òý¡£ÔÚÊý¾ÝдÈëµÄʱºò£¬Ê¹ÓÃÒ»¸ö·Ö´ÊËã·¨½«ÄÚÈݲð·Ö³É´Ê²¢Óÿոñ·Ö¿ª£¬´æÈëÐÂÔöµÄ²ð·Ö×ֶΡ£¼ìË÷µÄʱºò ʹÓà match against ¶ÔÕâ¸öFULLTEXT×öÈ«ÎļìË÷¡£
2¡¢Ê¹Óú£Á¿¿Æ¼¼Ñз¢µÄmysql chinese plus ¡£Êµ¼ÊÉÏÕâ¸ö¶«¶«ÊÇÔÚº£Á¿ÖÐÎķִʼ¼ÊõµÄ»ù´¡ÉÏΪmysqlÔö¼ÓÁËÖÐÎÄ×ִʵÄÈ«ÎļìË÷¡£ÊÔÓðæÐ§¹ûºÜ²»´í¡£ºÜÊʺÏ×öºǫ́ÖÐÎļìË÷¹¤×÷¡£µ«ÊǼ۸ñÒ²²»µÍ¡£
×ܽáÈçÏ£º
1¡¢Òª°Ñ½¨Á¢Ë÷Òýµ±³ÉÒ»ÖÖϰ¹ß¡£
2¡¢ÉÆÓÃEXPLAINÃüÁî ·ÖÎöSQLÓï¾ä£¬ ¼ì²éÎÒÃǽ¨Á¢µÄË÷ÒýÊÇ·ñÃüÖУ¬ExtroÁÐÖÐÊÇ·ñ»¹´æÔÚ "using sortfile" Èç¹ûÓеĻ°Ò»¶¨ÒªÍ¨¹ýµ÷ÕûË÷Òý»òÐÞ¸ÄSQLÉõÖÁÐÞ¸ÄÂß¼µÈ·½·¨°ÑËûÏûÃð¡£·ñÔòËæ×ÅÊý¾ÝÁ¿ÅÊÉýmysqlÔçÍí»áſϡ£
3¡¢ÒªÆÀ¹Àij×Ö¶ÎȡֵÔÚËùÓмǼÖеÄÊýÁ¿¡£±ÈÈçÒ»¸ö×Ö¶ÎA ÀàÐÍΪENUM('yes','no')£¬±íÖеÄ100ÍòÌõ¼Ç¼ÓÐ99ÍòÌõ¼Ç
Ïà¹ØÎĵµ£º
×î½üÓöµ½Ò»¸öÐèÇóÒªÔÚlinuxÏÂÓÃjava µ÷ÓÃmysql¿Í»§¶ËÔ¶³ÌµÇ½mysql·þÎñÆ÷£¬´Ó¿Í»§¶Ë»úÆ÷µ¼Èëmysql½Å±¾£¬´Ómysql·þÎñÆ÷¶Ëµ¼³ö±íÖеÄÊý¾Ý¡£ÒÔÏÂÊÇÓõ½µÄÖ÷Òª·½·¨£º
Java ´úÂë
/**
* µ¼ÈëÊý¾Ý
* @param ½Å±¾µÄµØÖ·ºÍÃû³Æ
* @return ÊÇ·ñ³ ......
ÕªÒª£ºMySQLÊÇÒ»¸ö¸ßËÙ¶È¡¢¸ßÐÔÄÜ¡¢¶àÏ̵߳ĹØÏµÐÍÊý¾Ý¿â¹ÜÀíϵͳ£¬ÊÊÓÃÆ½Ì¨¶à£¬¿ÉÀ©Õ¹ÐÔÇ¿¡£ÔÚʵ¼ÊÉú²ú»·¾³ÖУ¬²¿ÊðºÍʵÏÖ¾ßÓÐÒ»¶¨¸ºÔؾùºâ¹¦ÄܵÄMySQL·þÎñÆ÷
¼¯Èº£¬¶ÔÓÚÌá¸ßÓû§Êý¾Ý¿âÓ¦ÓÃϵͳµÄÐÔÄÜ¡¢ËٶȺÍÎȶ¨ÐÔ¾ßÓÐÃ÷ÏÔµÄ×÷Óᣱ¾ÎļòÒª½éÉÜÁËÔÚFreeBSD
7.0-ReleaseϵͳÉϲ¿ÊðʵÏÖMySQL·þÎñÆ÷
¼¯ÈºµÄ·½°¸£¬²¢¶Ô¿É ......
InnoDBºÍMyISAMÊÇÔÚʹÓÃMySQL×î³£ÓõÄÁ½¸ö±íÀàÐÍ£¬¸÷ÓÐÓÅȱµã£¬ÊÓ¾ßÌåÓ¦Óöø¶¨¡£ÏÂÃæÊÇÒÑÖªµÄÁ½ÕßÖ®¼äµÄ²î±ð£¬½ö¹©²Î¿¼¡£
innodb
InnoDB ¸ø MySQL ÌṩÁ˾ßÓÐÊÂÎñ(commit)¡¢»Ø¹ö(rollback)ºÍ±ÀÀ£ÐÞ¸´ÄÜÁ¦(crash recovery capabilities)µÄÊÂÎñ°²È«(transaction-safe (ACID complian ......
µÇ½ÒÔºóÔËÐÐÒÔÏÂÃüÁ¸øÓèÔ¶³Ì·ÃÎʿͻ§¶ËȨÏÞ..
grant all on *.* to 'remote'@'172.16.21.39' identified by 'password';
remote±íʾÓû§Ãû.
'172.16.21.39' Ô¶³ÌipµØÖ·
password±íʾԶ³ÌµÇ½ÃÜÂë.
ĬÈÏ×´¿öÏ£¬³öÓÚ°²È«¿¼ÂÇ£¬mysqlÊý¾Ý¿âÆÁ±ÎÁËÔ¶³Ì·ÃÎʹ¦ÄÜ¡£ È»¶øÔÚÐí¶à×´¿öÏ£¬ÄãÐèÒªÔÚ¼Ò
»òÕß´Óweb³ÌÐòÈ¥·ÃÎÊ ......
Hibernate ÅäÖÃͨ¹ýc3p0Á¬½ÓMYSQL
** ÐèÒªµÄ°ü: c3p0_versionxx.jar
** hibernate.cfg.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
&n ......