MySQLÐÐËøÉîÈëÑо¿
×öÏîĿʱÓÉÓÚÒµÎñÂß¼µÄÐèÒª£¬±ØÐë¶ÔÊý¾Ý±íµÄÒ»Ðлò¶àÐмÓÈëÐÐËø£¬¾Ù¸ö×î¼òµ¥µÄÀý×Ó£¬Í¼Êé½èÔÄϵͳ¡£¼ÙÉè id=1 µÄÕâ±¾Êé¿â´æÎª 1 £¬µ«ÊÇÓÐ 2 ¸öÈËͬʱÀ´½èÕâ±¾Ê飬´Ë´¦µÄÂ߼Ϊ :
Select restnum from book where id =1 ;
-- Èç¹û restnum ´óÓÚ 0 £¬Ö´ÐÐ update
Update book set restnum=restnum-1 where id=1 ;
ÎÊÌâ¾ÍÀ´ÁË£¬µ± 2 ¸öÈËͬʱÀ´½èµÄʱºò£¬ÓпÉÄܵÚÒ»¸öÈËÖ´ÐÐ select Óï¾äµÄʱºò£¬µÚ¶þ¸öÈ˲åÁ˽øÀ´£¬ÔÚµÚÒ»¸öÈËûÀ´µÃ¼°¸üРbook ±íµÄʱºò£¬µÚ¶þ¸öÈ˲鵽Êý¾ÝÁË£¬ÆäʵÊÇÔàÊý¾Ý£¬ÒòΪµÚÒ»¸öÈË»á°Ñ restnum Öµ¼õ 1 £¬Òò´ËµÚ¶þ¸öÈ˱¾À´Ó¦¸ÃÊDz鵽 id=1 µÄÊé restnum Ϊ 0 ÁË£¬Òò´Ë²»»áÖ´ÐÐ update £¬¶ø»á¸æËßËü id=1 µÄÊéûÓÐ¿â´æ ÁË£¬¿ÉÊÇÊý¾Ý¿âÄĶ®ÕâЩ£¬Êý¾Ý¿âÖ»¸ºÔðÖ´ÐÐÒ»ÌõÌõ SQL Óï¾ä£¬Ëü²Å²»¹ÜÖмäÓÐûÓÐÆäËû sql Óï¾ä²å½øÀ´£¬ËüÒ²²»ÖªµÀÒª°ÑÒ»¸ö session µÄ sql Óï¾äÖ´ÐÐÍêÔÙÖ´ÐÐÁíÒ»¸ö session µÄ¡£Òò´Ë»áµ¼Ö²¢·¢µÄʱºò restnum ×îºóµÄ½á¹ûΪ -1 £¬ÏÔÈ»ÕâÊDz»ºÏÀíµÄ£¬ËùÒÔ£¬²Å³öÏÖËøµÄ¸ÅÄ Mysql ʹÓà innodb ÒýÇæ¿ÉÒÔͨ¹ýË÷Òý ¶ÔÊý¾ÝÐмÓËø¡£ÒÔÉϽèÊéµÄÓï¾ä±äΪ£º
Begin;
Select restnum from book where id =1 for update ;
-- ¸ø id=1 µÄÐмÓÉÏÅÅËüËøÇÒ id ÓÐË÷Òý
Update book set restnum=restnum-1 where id=1 ;
Commit;
ÕâÑù£¬µÚ¶þ¸öÈËÖ´Ðе½ select Óï¾äµÄʱºò¾Í»á´¦Óڵȴý״ֱ̬µ½µÚÒ»¸öÈËÖ´ÐÐ commit ¡£´Ó¶ø±£Ö¤Á˵ڶþ¸öÈ˲»»á¶Áµ½µÚÒ»¸öÈËÐÞ¸ÄǰµÄÊý¾Ý¡£
ÄÇÕâÑùÊDz»ÊÇÍòÎÞһʧÁËÄØ£¬´ð°¸ÊÇ·ñ¶¨µÄ¡£¿´ÏÂÃæµÄÀý×Ó¡£
¸úÎÒÒ»²½Ò»²½À´£¬ÏȽ¨Á¢±í
CREATE TABLE `book` (
`id` int(11) NOT NULL auto_increment,
`num` int(11) default NULL,
`name` varchar(20) default NULL, //ÔÌùÊÇvarchar(0)Ó¦¸ÃÊDZÊÎó£¬ÕâÀïtenfy¸Ä³Évarchar(20)
PRIMARY KEY (`id`),
KEY `asd` (`num`)
) ENGINE=InnoDB DEFAULT CHARSET=gbk
ÆäÖÐ num ×ֶμÓÁËË÷Òý
È»ºó²åÈëÊý¾Ý£¬ÔËÐУ¬
insert into book(num) values(11),(11),(11),(11),(11);
insert into book(num) values(22),(22),(22),(22),(22);
È»ºó´ò¿ª 2 ¸ö mysql ¿ØÖÆÌ¨´°¿Ú£¬Æäʵ¾ÍÊǽ¨Á¢ 2 ¸ö session ×ö²¢·¢²Ù×÷
*************************************
Ïà¹ØÎĵµ£º
³õѧmysqlÎÒÒ²Åöµ½ÖÐÎÄ´æ´¢µÄÎÊÌ⣬ÒÔÏÂÊÇÎҵĽâ¾ö·½°¸£º
1.Ê×ÏÈÔÚ×Ö¶ÎÑ¡Ïîcolumn option Öн«×Ö¶Î×Ö·û¼¯column charsetÉèΪgb2312¡£
2.»¹ÐèÒªÔÚ±íÑ¡Ïîtable option ÖÐͬÑù½«charsetÉèÖÃΪgb2312.
3.×îºóÈç¹û»¹²»ÐУ¬¾ÍÔÚmysql°²×°Ä¿Â¼ÏÂÕÒµ½my.ini,ÕÒµ½ÒÔÏÂλÖãº
[mysql]
default-cha ......
MysqlµÄ°²×°Îļþ¿ÉÒÔÖ±½Óµ½ http://www.mysql.com ÏÂÔØ£¬»ñµÃfor win32µÄ.zip°ü£¬½¨ÒéÑ¡Ôñ4.0.20d°æ±¾¡£ÕâÀï²»Ïêϸ˵Ã÷¡£
¡¡¡¡ÏÂÔØ»ñµÃMysqlµÄfor win32°²×°°üºó£¬ÓÃwinzip½âѹËõ£¬Ö±½ÓÔËÐÐsetup.exe£¬ÐèҪעÒâµÄÊÇÑ¡ÔñÒ»¸ö°²×°Â·¾¶£¬µ±È»£¬°²×°Â·¾¶¿ÉÒÔÈÎÒ⣬½¨ÒéÑ¡ÔñC:\MySQLĿ¼¡£°²×°Íê³ÉºóMySQLÒ²¾ÍÍê³ÉÁË¡£Ä¬ÈϵÄÓû ......
Accessing Distributed Data with the Federated Storage Engine
http://dev.mysql.com/tech-resources/articles/mysql-federated-storage.html
Federated´æ´¢ÒýÇæ¿ÉÒÔʹ¼¸Ì¨Êý¾Ý¿âÂß¼ÉÏ×é³ÉÒ»¸öÊý¾Ý¿â£¬Æä×÷ÓÃÏ൱ÓÚOracleµÄÊý¾Ý¿âÁ´½Ó£¬Í¨Ë×µØËµ£¬¼´ÔÚ±¾µØ½¨Á¢Ô¶³ÌµÄÊý¾Ý¿â±íµÄÒýÓá£
MysqlÐèÒª5.0ÒÔÉÏ
£¨1£©²é¿´ÊÇ ......
MySQL³£ÓõĴ洢ÒýÇæÎªMyISAM¡¢InnoDB¡¢MEMORY¡¢MERGE£¬ÆäÖÐInnoDBÌṩÊÂÎñ°²È«±í£¬ÆäËû´æ´¢ÒýÇæ¶¼ÊÇ·ÇÊÂÎñ°²È«±í¡£
MyISAMÊÇMySQLµÄĬÈÏ´æ´¢ÒýÇæ¡£MyISAM²»Ö§³ÖÊÂÎñ¡¢Ò²²»Ö§³ÖÍâ¼ü£¬µ«Æä·ÃÎÊËٶȿ죬¶ÔÊÂÎñÍêÕûÐÔûÓÐÒªÇó¡£
InnoDB´æ´¢ÒýÇæÌṩÁ˾ßÓÐÌá½»¡¢»Ø¹öºÍ±ÀÀ£»Ö¸´ÄÜÁ¦µÄÊÂÎñ°²È«¡£µ«ÊÇ±ÈÆðMyISAM´æ´¢Òý ......
轉×Ô»¨開µÄµØ·½
mysqlÓÐÒ»¸ö¹¦ÄܾÍÊÇ¿ÉÒÔlogÏÂÀ´ÔËÐеıȽÏÂýµÄsqlÓï¾ä£¬Ä¬ÈÏÊÇûÓÐÕâ¸ölogµÄ£¬ÎªÁË¿ªÆôÕâ¸ö¹¦ÄÜ£¬ÒªÐÞ¸Ämy.cnf»òÕßÔÚmysqlÆô¶¯
µÄʱºò¼ÓÈëһЩ²ÎÊý¡£
Èç¹ûÔÚmy.cnfÀïÃæÐ޸ģ¬ÐèÔö¼ÓÈçϼ¸ÐÐ
long_query_time = 1
log-slow-queries
=
log-queries-not-using-indexes
long_query_t ......