»¶ÓÄú·ÃÎÊÎÒ°®IT¼¼ÊõÍø£¬½ñÌìС±àΪÄã·ÖÏíµÄ±à³Ì¼¼ÊõÊÇ£º¡¾MySQLÓÅ»¯Ö®Êý¾ÝÀàÐ͵ÄʹÓá¿£¬ÏÂÃæÊÇÏêϸµÄ·ÖÏí£¡
MySQLÓÅ»¯Ö®Êý¾ÝÀàÐ͵ÄʹÓÃ
ÓÐÖúÓÚЧÂʵÄÀàÐÍÑ¡Ôñ
1¡¢Ê¹ÄãµÄÊý¾Ý¾¡¿ÉÄÜС
×î»ù±¾µÄÓÅ»¯Ö®Ò»ÊÇʹÄãµÄÊý¾Ý(ºÍË÷Òý)ÔÚ´ÅÅÌÉÏ(²¢ÇÒÔÚÄÚ´æÖÐ)Õ¼¾ÝµÄ¿Õ¼ä¾¡¿ÉÄÜС¡£ÕâÄܸø³ö¾Þ´óµÄ¸Ä½ø£¬ÒòΪ´ÅÅ̶ÁÈë½Ï¿ì²¢ÇÒͨ³£Ò²ÓýÏÉÙµÄÖ÷´æ´¢Æ÷¡£Èç¹ûÔÚ¸üСµÄÁÐÉÏ×öË÷Òý£¬Ë÷ÒýÒ²Õ¼¾Ý½ÏÉÙµÄ×ÊÔ´¡£
ÄãÄÜÓÃÏÂÃæµÄ¼¼Êõʹ±íµÄÐÔÄܸüºÃ²¢ÇÒʹ´æ´¢¿Õ¼ä×îС£º
·¾¡¿ÉÄܵØÊ¹ÓÃ×îÓÐЧ(×îС)µÄÀàÐÍ¡£MySQLÓкܶà½ÚÊ¡´ÅÅ̿ռäºÍÄÚ´æµÄרҵ»¯ÀàÐÍ¡£
·Èç¹û¿ÉÄÜʹ±í¸üС£¬Ê¹ÓýÏСµÄÕûÊýÀàÐÍ¡£ÀýÈ磬MEDIUMINT¾³£±ÈINTºÃһЩ¡£
·Èç¹û¿ÉÄÜ£¬ÉùÃ÷ÁÐΪNOT NULL¡£ËüʹÈκÎÊÂÇé¸ü¿ì¶øÇÒÄãΪÿÁнÚʡһλ¡£×¢ÒâÈç¹ûÔÚÄãµÄÓ¦ÓóÌÐòÖÐÄãȷʵÐèÒªNULL£¬ÄãÓ¦¸ÃºÁÎÞÒÉÎÊʹÓÃËü£¬Ö»ÊDZÜÃâȱʡµØÔÚËùÓÐÁÐÉÏÓÐËü¡£
2¡¢Ê¹Óö¨³¤ÁУ¬²»Ê¹Óÿɱ䳤ÁÐ
ÕâÌõ×¼Ôò¶Ô±»¾³£Ð޸쬴ӶøÈÝÒײúÉúË鯬µÄ±íÀ´ËµÌرðÖØÒª¡£ÀýÈ磬Ӧ¸ÃÑ¡Ôñ CHAR Áжø²»Ñ¡Ôñ VARCHAR ÁС£ËùҪȨºâµÄÊÇʹÓö¨³¤ÁÐʱ£¬±íËùÕ¼ÓõĿռä¸ü¶à£¬µ«Èç¹ûÄܹ»³Ðµ£ÕâÖÖ¿Õ¼äµÄºÄ·Ñ£¬Ê¹Óö¨³¤Ðн«±ÈʹÓÿɱ䳤µÄÐд¦Àí¿ìµÃ¶à¡£
3¡¢½«Áж¨ÒåΪ NOT NULL
ÕâÑù´¦Àí¸ü¿ì£¬ËùÐè¿Õ¼ä¸üÉÙ¡£¶øÇÒÓÐʱ»¹Äܼò»¯²éѯ£¬ÒòΪ²»ÐèÒª¼ì²éÊÇ·ñ´æÔÚÌØÀý NULL¡£
4¡¢¿¼ÂÇʹÓà ENUM ÁÐ
Èç¹ûÓÐÒ»¸öÖ»º¬ÓÐÏÞÊýÄ¿µÄÌØ¶¨ÖµµÄÁУ¬ÄÇôӦ¸Ã¿¼Âǽ«Æäת»»Îª ENUM ÁС£ENUM ÁеÄÖµ¿ÉÒÔ¸ü¿ìµØ´¦Àí£¬ÒòΪËüÃÇÔÚÄÚ²¿ÊÇÒÔÊýÖµ±íʾµÄ¡£
ÓйØBLOBºÍTEXTÀàÐÍ
1¡¢Ê¹ÓÃBLOBºÍTEXTÀàÐ͵ÄÓŵã
Óà BLOB ´æ´¢Ó¦ÓóÌÐòÖаü×°»òδ°ü×°µÄÊý¾Ý£¬ÓпÉÄÜʹÔÀ´ÐèÒª¼¸¸ö¼ìË÷²Ù×÷²ÅÄÜÍê³ÉµÄÊý¾Ý¼ìË÷µÃÒÔÔÚµ¥¸ö¼ìË÷²Ù×÷ÖÐÍê³É¡£¶øÇÒ»¹¶Ô´æ´¢±ê×¼±í½á¹¹²»Ò×±íʾµÄÊý¾Ý»òËæÊ±¼ä±ä»¯µÄÊý¾ÝÓаïÖú¡£
2¡¢Ê¹ÓÃBLOBºÍTEXTÀàÐ͵ĿÉÄܱ׶Ë
ÁíÒ»·½Ã棬BLOB ÖµÒ²ÓÐ×Ô¼ºµÄ¹ÌÓÐÎÊÌâ£¬ÌØ±ðÊÇÔÚ½øÐдóÁ¿µÄ DELETE »ò UPDATE ²Ù×÷ʱ¸üÊÇÈç´Ë¡£É¾³ý BLOB »áÔÚ±íÖÐÁôÏÂÒ»¸ö´ó¿Õ°×£¬ÔÚÒÔºó½«ÐèÓÃÒ»¸ö¼Ç¼»ò¿ÉÄÜÊDz»Í¬´óСµÄ¶à¸ö¼Ç¼À´Ìî³ä¡£
³ý·ÇÓбØÒª£¬·ñÔòÓ¦±ÜÃâ¼ìË÷½Ï´óµÄ BLOB »ò TEXT Öµ¡£ÀýÈ磬³ý·Ç¿Ï¶¨WHERE ×Ó¾äÄܹ»½«½á¹ûÇ¡ºÃÏÞÖÆÔÚËùÏëÒªµÄÐÐÉÏ£¬·ñÔò SELECT * ²éѯ²»ÊÇÒ»¸öºÃ°ì·¨¡£ÕâÑù×ö¿ÉÄܻὫ·Ç³£´óµÄ BLOB ÖµÎÞÄ¿µÄµØ´ÓÍøÂçÉÏÍϹýÀ´¡£ÕâÊÇ´æ´¢ÔÚÁíÒ»ÁÐÖÐµÄ BLOB ±êʶÐÅÏ¢ºÜÓÐÓõÄÁíÒ»ÖÖÇéÐΡ£¿ÉÒÔËÑË÷¸ÃÁÐÒÔÈ·¶¨ÏëÒªµÄÐУ¬È»ºó´ÓÏÞ¶¨µÄÐÐÖмìË÷ BLOB Öµ¡£
3¡¢±ØÒªµÄ×¼Ôò
¶ÔÈÝÒײúÉúË鯬µÄ±íʹÓà OPTIMIZE TABLE
´óÁ¿½øÐÐÐÞ¸ÄµÄ±í£¬ÌØ±ðÊÇÄÇЩº¬Óпɱ䳤ÁÐµÄ±í£¬ÈÝÒײúÉúË鯬¡£Ë鯬²»ºÃ£¬ÒòΪËüÔÚ´æ´¢±íµÄ´ÅÅÌ¿éÖвúÉú²»Ê¹ÓÃµÄ¿Õ¼ä¡£Ëæ×Åʱ¼äµÄÔö³¤£¬±ØÐë¶ÁÈ¡¸ü¶àµÄ¿é²ÅÄÜÈ¡µ½ÓÐЧµÄÐУ¬´Ó¶ø½µµÍÁËÐÔÄÜ¡£ÈÎÒâ¾ßÓпɱ䳤ÐÐµÄ±í¶¼´æÔÚÕâ¸öÎÊÌ⣬µ«Õâ¸öÎÊÌâ¶Ô BLOB ÁиüΪͻ³ö£¬ÒòΪËüÃdzߴçµÄ±ä»¯·Ç³£´ó¡£¾³£Ê¹Óà OPTIMIZE TABLE ÓÐÖúÓÚ±£³ÖÐÔÄܲ»Ï½µ¡£
ʹÓöàÁÐË÷Òý
¶àÁÐË÷ÒýÁÐÓÐʱºÜÓÐÓá£Ò»ÖÖ¼¼ÊõÊǸù¾ÝÆäËûÁн¨Á¢Ò»¸öÉ¢ÁÐÖµ£¬²¢½«Æä´æ´¢ÔÚÒ»¸ö¶ÀÁ¢µÄÁÐÖУ¬È»ºó¿Éͨ¹ýËÑË÷É¢ÁÐÖµÕÒµ½ÐС£ÕâÖ»¶Ô¾«È·Æ¥ÅäµÄ²éѯÓÐЧ¡£(É¢ÁÐÖµ¶Ô¾ßÓÐÖîÈç“<”»ò“>=”ÕâÑùµÄ²Ù×÷·ûµÄ·¶Î§ËÑË÷ûÓÐÓô¦)¡£ÔÚMySQL 3.23°æ¼°ÒÔÉϰ汾ÖУ¬É¢ÁÐÖµ¿ÉÀûÓà MD5( ) º¯Êý²úÉú¡£É¢ÁÐË÷Òý¶Ô BLOB ÁÐÌØ±ðÓÐÓá£ÓÐÒ»ÊÂҪעÒ⣬ÔÚ MySQL 3.23.2 ÒÔǰµÄ°æ±¾ÖУ¬²»ÄÜË÷Òý BLOB ÀàÐÍ¡£ÉõÖÁÊÇÔÚ 3.23.2 »ò¸üеİ汾ÖУ¬ÀûÓÃÉ¢ÁÐÖµ×÷Ϊ±êʶֵÀ´²éÕÒ BLOB ÖµÒ²±ÈËÑË÷ BLOB Áб¾Éí¸ü¿ì¡£
½« BLOB Öµ¸ôÀëÔÚÒ»¸ö¶ÀÁ¢µÄ±íÖÐ
ÔÚijЩÇé¿öÏ£¬½« BLOB ÁдӱíÖÐÒÆ³ö·ÅÈëÁíÒ»¸ö¸±±í¿ÉÄܾßÓÐÒ»¶¨µÄÒâÒ壬Ìõ¼þÊÇÒÆ³ö BLOB Áкó¿É½«±íת»»Îª¶¨³¤Ðиñʽ¡£ÕâÑù»á¼õÉÙÖ÷±íÖеÄË鯬£¬¶øÇÒÄÜÀûÓö¨³¤ÐеÄÐÔÄÜÓÅÊÆ¡£
ʹÓÃANALYSE¹ý³Ì¼ì²é±íÁÐ
Èç¹ûʹÓõÄÊÇ MySQL 3.23 »ò¸üеİ汾£¬Ó¦¸ÃÖ´ÐÐ PROCEDURE ANALYSE( )£¬²é¿´ËüËùÌṩµÄ¹ØÓÚ±íÖÐÁеÄÐÅÏ¢
ANALYSE([max elements,[max memory]])
Ëü¼ìÑéÀ´×ÔÄãµÄ²éѯµÄ½á¹û²¢·µ»Ø½á¹ûµÄ·ÖÎö¡£
max elements(ȱʡ256)ÊÇanalyse½«×¢ÒâµÄÿÁв»Í¬ÖµµÄ×î´óÊýÁ¿¡£Õâ±»ANALYSEÓÃÀ´¼ì²é×î¼ÑµÄÁÐÀàÐÍÊÇ·ñÓ¦¸ÃÊÇENUMÀàÐÍ¡£
max memory(ȱʡ8192)ÊÇÔÚanalyse³¢ÊÔѰÕÒËùÓв»Í¬ÖµµÄʱºòÓ¦¸Ã·ÖÅä¸øÃ¿ÁеÄ×î´óÄÚ´æÁ¿¡£
SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max elements,[max memory]])
ÀýÈ磺
mysql>SELECT * FROM student PROCEDURE ANALYSE();
mysql>SELECT * FROM student PROCEDURE ANALYSE(16,256);
ÏàÓ¦Êä³öÖÐÓÐÒ»ÁÐÊǹØÓÚ±íÖÐÿÁеÄ×î¼ÑÁÐÀàÐ͵Ľ¨Òé¡£µÚ¶þ¸öÀý×ÓÒªÇó PROCEDURE ANALYSE( ) ²»Òª½¨Ò麬ÓжàÓÚ 16 ¸öÖµ»òÈ¡¶àÓÚ 256 ×Ö½ÚµÄ ENUM ÀàÐÍ(¿É¸ù¾ÝÐèÒª¸ü¸ÄÕâЩֵ)¡£Èç¹ûûÓÐÕâÑùµÄÏÞÖÆ£¬Êä³ö¿ÉÄÜ»áºÜ³¤;ENUM µÄ¶¨ÒåÒ²»áºÜÄÑÔĶÁ¡£
¸ù¾Ý PROCEDURE ANALYSE( ) µÄÊä³ö£¬»á·¢ÏÖ¿ÉÒÔ¶Ô±í½øÐиü¸ÄÒÔÀûÓøüÓÐЧµÄÀàÐÍ¡£Èç¹ûÏ£Íû¸ü¸ÄÖµÀàÐÍ£¬Ê¹Óà ALTER TABLE Óï¾ä¼´¿É¡£
ÒÔÉÏËù·ÖÏíµÄÊǹØÓÚMySQLÓÅ»¯Ö®Êý¾ÝÀàÐ͵ÄʹÓã¬ÏÂÃæÊDZà¼ÎªÄãÍÆ¼öµÄÓмÛÖµµÄÓû§»¥¶¯£º
¡¡¡¡Ïà¹ØÎÊÌ⣺MySQLÊý¾Ý¿â»ù±¾µÄÈý¸öÓÅ»¯·¨ÔòÊÇʲô?
¡¡¡¡´ð£º£¨1£©ÏµÍ³·þÎñÓÅ»¯£¬°ÑMySQLµÄkey_buffer¡¢cache_buffer¡¢query_cacheµÈÔö¼ÓÈÝÁ¿ £¨2£©¸øËùÓо³£²éѯµÄ×Ö¶ÎÔö¼ÓÊʵ±µÄË÷Òý £¨3£©ÓÅ»¯SQLÓï¾ä£¬¼õÉÙDitinct¡¢Group¡¢JoinµÈµÈÓï¾äµÄ²Ù×÷ >>Ïêϸ
¡¡¡¡Ïà¹ØÎÊÌ⣺mysqlÖм۸ñÓÃʲôÊý¾ÝÀàÐͱíʾ×î¼Ñ?
¡¡¡¡´ð£ºDECIMALºÍNUMERIC¶¼ÐÐ DECIMALºÍNUMERICÀàÐÍÔÚMySQLÖÐÊÓΪÏàͬµÄÀàÐÍ¡£ËüÃÇÓÃÓÚ±£´æ±ØÐëΪȷÇо«¶ÈµÄÖµ£¬ÀýÈç»õ±ÒÊý¾Ý¡£µ±ÉùÃ÷¸ÃÀàÐ͵ÄÁÐʱ£¬¿ÉÒÔ(²¢ÇÒͨ³£Òª)Ö¸¶¨¾«¶ÈºÍ±ê¶È£»ÀýÈ磺 salary DECIMAL(5,2) ÔÚ¸ÃÀý×ÓÖУ¬5ÊǾ«¶È£¬2ÊDZê¶È¡£¾«¶È±í... >>Ïêϸ
¡¡¡¡Ïà¹ØÎÊÌ⣺mysqlÖÐÒª´æ´¢Ð¡ÊýÓÃʲôÀàÐÍÊý¾ÝºÃ£¿
¡¡¡¡´ð£ºÒªÇ󾫶ȸ߾ÍÓÃdecimal ÉóÌâ´íÁË... ¼òµ¥Ð´ÏÂÇø±ð£º float:¸¡µãÐÍ£¬º¬×Ö½ÚÊýΪ4£¬32bit£¬ÊýÖµ·¶Î§Îª-3.4E38~3.4E38£¨7¸öÓÐЧ룩 double:Ë«¾«¶ÈʵÐÍ£¬º¬×Ö½ÚÊýΪ8£¬64bitÊýÖµ·¶Î§-1.7E308~1.7E308£¨15¸öÓÐЧ룩 decimal:Êý×ÖÐÍ£¬128bit£¬²»´æÔÚ... >>Ïêϸ
- ÆÀÂÛÁÐ±í£¨ÍøÓÑÆÀÂÛ½ö¹©ÍøÓѱí´ï¸öÈË¿´·¨£¬²¢²»±íÃ÷±¾Õ¾Í¬ÒâÆä¹Ûµã»ò֤ʵÆäÃèÊö£©
-
