Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÓÉMySQLÖÐcharºÍvarcharЧÂÊÏëµ½µÄ

¶Ô±ÈcharºÍvarcharËæ±ãÔÚgoogle»ò°Ù¶ÈÖÐËÑһϵõ½µÄ½áÂÛ´ó¸Å¶¼ÊÇ"char¶¨³¤,varchar²»¶¨³¤,charÒª±ÈvarcharÕ¼Óøü¶àµÄ¿Õ¼ä,ÓÉÓÚ¶¨³¤charµÄЧÂʸßÓÚvarchar,char×î´ó255,varchar×î´ó65536"¸ü¸ß¼¶Ò»µãµÄÊý¾ÝÊÇ"charÔÚ´æÈëºÍÈ¡³öµÄʱºò,»á×Ô¶¯°ÑĩβµÄ¿Õ¸ñÈ¥µô,varchar»á¶îÍâµÄ¶àÓÃ1-2¸ö×Ö½ÚÀ´´æ·Å×Ö·û³¤¶È,ÁÐÖÐÓÐÒ»¸övarchar»á×Ô¶¯°Ñcharת»»³Évarchar,¶øµ±varchar³¤¶ÈСÓÚ4ʱ,×Ô¶¯µÄ°Ñvarcharת»»³Échar..."
Ò»°ãÈÏΪ¿Õ¼ä»»Ê±¼ä,ÏÖÔÚ´ÅÅÌÓÖ´óÓÖ²»ÖµÇ®!
µ±Ê¹ÓÃÈ«±í¶¼ÊÇcharÕâµÄ×ֶεÄʱºò,ÄÇô±íÊôÐÔRow_formatÊÇFixedÒ²¾ÍÊǾ²Ì¬±í,ÓëÖ®¶ÔÓ¦µÄ×ÔÈ»¾ÍÊǶ¯Ì¬±íDynamic,¾²Ì¬±í±È¶¯Ì¬±íЧÂÊÒª¸ß,Ö÷ÒªÊÇÒòΪ,»ùÓÚÁ½µã:
1)ûÓÐË鯬,ÿÐеij¤¶ÈÊǹ̶¨,ËùÒÔÔÚÆµ·±¸üеij¡¾°ÏÂ,ÓÈÆäÊÇij¸ö×Ö¶ÎÓÉС±ä´ó.
2)·½±ãÊý¾ÝÎļþÖ¸ÕëµÄ²Ù×÷,ÔÚmyisamÖÐÓÐÒ»¸öÊý¾ÝÎļþÖ¸ÕëµÄ¸ÅÄî,ÊÇÓÃÀ´Ö¸ÏòÊý¾ÝÎļþ,±ÈÈçÔÚË÷ÒýÖÐÖ¸ÏòÊý¾ÝÎļþ.¾²Ì¬±íµÄÆ«ÒÆÁ¿µÄ¹Ì¶¨²»±äµÄ,¶øÔÚ¶¯Ì¬±íÖÐÿÐеÄÊý¾Ý³¤¶È´óС²»Ò»,¾Í¿ÉÄܵ¼ÖÂÊý¾Ý¸ü¶àµÄ¿ªÏú
»ùÓÚÒÔÉÏÁ½µã,ËùÒÔ¾²Ì¬±íÔÚ²éѯ,ÐÞ¸ÄÓµÓнϴóÓÅÊÆ,µ«ÊÇÕâ¸öÓÅÊÆÒ²ÊÇÓÐÊÊÓó¡¾°µÄ.
Ê×ÏȲÂÏëcharÓÉÓÚÿ´Î´æÈ¡¶¼»á×Ô¶¯µÄÏ÷µôĩβµÄ¿Õ¸ñ,¶øÇÒÊý¾ÝÎļþÒ²´ó,ËùÒÔ»áʹÓøü¶àµÄcpuºÍÄÚ´æ×ÊÔ´,ÓÈÆäÔÚÈ¡µÄʱºò,ÒªÊdz¤¶Ì²î¾à½Ï´óµÄʱºò,»¹ÊÇ»áºÜÀ˷ѲÙ×÷µÄ.
Æä´ÎÑéÖ¤Ïë·¨,Ê×ÏȲâÊÔ²åÈëÐÔÄÜ,½¨ÁË2ÕÅ±í²¢µ÷ÓÃsp·Ö±ð²åÈë200WµÄÊý¾Ý
CREATE TABLE `isam_char` (
  `content` char(255) NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
CREATE TABLE `isam_vc` (
  `content` varchar(255) NOT NULL
) ENGINE=MyISAM  DEFAULT CHARSET=utf8;
call insert_isam(2000000,'isam_char');
call insert_isam(2000000,'isam_vc');
¶à´Îƽ¾ùisam_char²åÈë200WµÄÊý¾ÝΪ138.21s,¶øisam_vcÉÙÁËÔ¼20sΪ119.80s,ÕâÓ¦¸ÃÊÇÿ´Î²åÈëµÄʱºò,mysqlÒª°Ñchar×Ö¶ÎÌî³äµ½255µÄ²Ù×÷.¹Û²ìÊý¾ÝÎļþ´óС,isam_vcΪ235.8M¶øisam_charΪ1.4G!
ÔÙ²âÊÔ²éѯ,ΪÁ˱£Ö¤Á½ÕßÒ»ÖÂ,Ê×ÏȰÑisam_charÖÐÊý¾Ýɾ³ý,ÔÙ°Ñisam_vcÖÐÊý¾Ýµ¼Èëisam_charÖÐ,ÎÞË÷Òý,½û±Õquery_cache
truncate table isam_char;##¹Û²ìÁËÏÂÊý¾ÝÎļþ,±»Çî¿Õ³É0
insert into isam_char select * from isam_vc;##¹Û²ìÁËÏÂÊý¾ÝÎļþ,ÒÀÈ»ÊÇ1.4G
select * from isam_char limit 1555555,5;
select * from isam_vc limit 1555555,5;
ÒÀ¾É¶à´Î²éѯȥƽ¾ùÖµ,isam_char±íƽ¾ùֵΪ10.50s,¶øisam_vcÔò


Ïà¹ØÎĵµ£º

UbuntuÏÂÅäÖÃLAMP£¨Linux+Apache+Mysql+PHP)»·¾³

ÖÕÓڷżÙÁË£¬ÕýÏëÔÚÕâ¸ö¼ÙÆÚÀïѧѧPHP£¬ÓÉÓÚ×Ô¼ºÓõÄÊÇ×ÀÃæ°æµÄUbuntu8.04,ÓÚÊǾÍÏë¼ÜÉèÒ»¸öLAMP»·¾³À´Ñ§PHP£¬Ò²³Ã´Ë»ú»áѧһÏÂPHP·þÎñÆ÷µÄ¼ÜÉè¡£
Ò»¡¢°²×°Ubuntu8.04
ËäȻ˵ÊÇÅäÖÃLAMP»·¾³£¬µ«ÔÚÎÄÕÂÀï²¢²»»á½²ÊöÈçºÎ°²×°Ubuntu8.04,ÒòΪ¹ØÓÚÈçºÎUbuntu8.04ÔÚÍøÉÏÒѾ­ÓкܶàµÄ½Ì³ÌÁË£¬¾ÍËãÊÇÓ²Å̰²×°Ò²ÊÇÒ»¼þºÜ¼òµ¥µÄÊÂÁ ......

mysql dataÎļþ¼ÐϵÄibdata1 Îļþ×÷ÓÃ


Õâ¸öÎļþ³¬¼¶´ó£¬ ²éÁËһϣ¬ ´ó¸ÅµÄ×÷ÓÃÈçÏÂ
ÊÇ´¢´æµÄ¸ñʽ
INNODBÀàÐÍÊý¾Ý״̬Ï£¬
ibdataÓÃÀ´´¢´æÎļþµÄÊý¾Ý
¶ø¿âÃûµÄÎļþ¼ÐÀïÃæµÄÄÇЩ±íÎļþÖ»Êǽṹ¶øÒÑ
ÓÉÓÚmysql4.1ĬÈÏÊÔinnodb£¬ËùÒÔÕâ¸öÎļþĬÈϾʹæÔÚÁËhttp://man.chinaunix.net/database/mysql/inonodb_zh/2.htm Õâ¸öÁ´½ÓÊÔinnodbµÄÖÐÎIJο¼£¬ innodbµÄ¶« ......

MySQL cluster±¸·Ý»Ö¸´

±¸×¢£ºÈç¹ûÄãÓÐʱ¼äÄãÓ¦¸ÃÔĶÁÕâ¸ö±¸×¢£¬Èç¹ûûÓÐʱ¼äÄã¸üÒªÔĶÁÒÔϱ¸×¢¡£ ÔÚÍøÂçÉÏÕÒÁ˺ܶàÏà¹Ø±¸·ÝºÍ»¹Ô­µÄ½Ì³Ì£¬´ó¶à¶¼ÊÇ»¥Ïà³­Ï®£¬°´ÕÕËûÃǵĽ̳ÌÄܹ»³É¹¦±¸·Ý£¬»¹Ô­¾ÍºÜÈÃÈ˾¾ÐÄÁË¡£Ì¸Ì¸Ë¼Â·ºÍ×¢Òâµã°É¡£ Ê×ÏÈ£¬µÚÒ»²½²»ÓÃ˵£¬¿Ï¶¨ÊDZ¸·ÝÊý¾Ý¿â¡£×î¼òµ¥£¬´ò¿ª¹ÜÀí½ÚµãµÄndb_mgm¿ØÖÆÌ¨£¬ÊäÈëstart backup backupID£¨ ......

mysql ³£¼û´íÎ󼯺Ï


 
1£º Can’t connect to [local] MySQL server´íÎó
Ò»¸öMySQL¿Í»§¿ÉÒÔÁ½ÖÖ²»Í¬µÄ·½Ê½Á¬½Ómysqld·þÎñÆ÷£ºUnixÌ×½Ó×Ö£¬Ëüͨ¹ýÔÚÎļþϵͳÖеÄÒ»¸öÎļþ(ȱʡ“/tmp /mysqld.sock”)½øÐÐÁ¬½Ó£»»òTCP/IP£¬Ëüͨ¹ýÒ»¸ö¶Ë¿ÚºÅÁ¬½Ó¡£UnixÌ×½Ó×Ö±ÈTCP/IP¸ü¿ì£¬µ«ÊÇÖ»ÓÐÓÃÔÚÁ¬½Óͬһ̨¼ÆËã»úÉϵķþÎñÆ÷¡£Èç¹ûÄ ......

Mysql·ÖÇø


http://dev.mysql.com/doc/refman/5.1/zh/partitioning.html
²é¿´ÊÇ·ñÖ§³Ö·ÖÇø£ºSHOW VARIABLES LIKE '%partition%';
·ÖÇøÓï¾äCREATE TABLE ti (id INT, amount DECIMAL(7,2), tr_date DATE)
ENGINE=INNODB
PARTITION BY HASH(MONTH(tr_date))
PARTITIONS 6; 
---------------------------------- ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ