MySQLµÄÍâ¼üºÍ²ÎÕÕÍêÕûÐÔ
Ò»¡¢²ÎÕÕÍêÕûÐÔ(Referential integrity)ºÍÍâ¼ü(foreign key)
²ÎÕÕÍêÕûÐÔ(Referential integrity)ÊÇÓÃÓÚÔ¼¶¨Á½¸ö¹ØÏµÖ®¼äµÄÁªÏµ£¬ÀíÂÛÉϹ涨£ºÈôMÊǹØÏµSÖеÄÒ»ÊôÐÔ×飬ÇÒMÊÇÁíÒ»¹ØÏµZµÄÖ÷¹Ø¼ü×Ö£¬Ôò³ÆMΪ¹ØÏµS¶ÔÓ¦¹ØÏµZµÄÍâ¹Ø¼ü×Ö¡£ÈôMÊǹØÏµSµÄÍâ¹Ø¼ü×Ö£¬ÔòSÖÐÿһ¸öÔª×éÔÚMÉϵÄÖµ±ØÐëÊÇ¿ÕÖµ»òÊǶÔÓ¦¹ØÏµZÖÐij¸öÔª×éµÄÖ÷¹Ø¼ü×ÖÖµ¡£²ÎÕÕÍêÕûÐÔÊÇÊý¾Ý¿âÉè¼ÆÖÐÒ»¸öÖØÒªµÄ¸ÅÄî¡£ÔÚϵͳ²»Í¬µÄ±íÖУ¬µ±Êý¾Ý¿âËùÓвÎÕպϷ¨»ò·ÇºÏ·¨¹ØÁªÊ±¶¼»áÉæ¼°µ½²ÎÕÕÍêÕûÐÔ¡£µ±²ÎÕÕÍêÕûÐÔ´æÔÚʱ£¬ÈκÎÓë²»´æÔڵļǼ²úÉú¹ØÁª½«±äµÃÎÞЧ£¬Óɴ˿ɷÀÖ¹Óû§³öÏÖ¸÷ÖÖ´íÎ󣬴ӶøÌṩ¸üΪ׼ȷºÍʵÓõÄÊý¾Ý¿â¡£
Íâ¼ü(foreign key):Èç¹û±íAµÄÖ÷¹Ø¼ü×ÖÊDZíBÖеÄ×ֶΣ¬Ôò¸Ã×ֶγÆÎª±íBµÄÍâ¼ü£¬±íA³ÆÎªÖ÷±í£¬±íB³ÆÎª´Ó±í¡£Íâ¼üÊÇÓÃÀ´ÊµÏÖ²ÎÕÕÍêÕûÐԵ쬲»Í¬µÄÍâ¼üÔ¼Êø·½Ê½½«¿ÉÒÔʹÁ½Õűí½ôÃܵĽáºÏÆðÀ´£¬ÌرðÊÇÐ޸ĻòÕßɾ³ýµÄ¼¶Áª²Ù×÷½«Ê¹µÃÈÕ³£µÄά»¤¹¤×÷¸ü¼ÓÇáËÉ¡£
¶þ¡¢MySQLÖеÄÍâ¼üʹÓÃÌõ¼þ
MySQLÒÔÍù²¢²»Ö§³ÖÍâ¼ü£¬ÔÒòÊÇÕâÖÖÖ§³Ö»á½µµÍËٶȺÍÐÔÄÜ¡£
ÔÚMySQL 3.23.44°æ±¾ºó£¬InnoDBÒýÇæÀàÐ͵ıíÖ§³ÖÁËÍâ¼üÔ¼Êø£¬µ«ÊÇĬÈÏÒýÇæMyISAMĿǰ»¹²»Ö§³ÖÍâ¼ü£¬Òò´ËʹÓÃʱÐèҪעÒ⽨Á¢Êý¾Ý¿â±íʱѡÔñInnoDB×÷ΪÊý¾Ý¿âÒýÇæ¡£
Íâ¼üµÄʹÓÃÌõ¼þ£º
1.Á½¸ö±í±ØÐëÊÇInnoDB±í£¬MyISAM±íÔÝʱ²»Ö§³ÖÍâ¼ü£¨¾Ý˵ÒÔºóµÄ°æ±¾ÓпÉÄÜÖ§³Ö£¬Ä¿Ç°ÎÒʹÓõÄÊÇ5.1.36»¹Ã»ÓÐÖ§³Ö£©£»
2.Íâ¼üÁбØÐ뽨Á¢ÁËË÷Òý£¬MySQL 4.1.2ÒÔºóµÄ°æ±¾ÔÚ½¨Á¢Íâ¼üʱ»á×Ô¶¯´´½¨Ë÷Òý£¬µ«Èç¹ûÔÚ½ÏÔçµÄ°æ±¾ÔòÐèÒªÏÔʾ½¨Á¢£»
3.Íâ¼ü¹ØÏµµÄÁ½¸ö±íµÄÁбØÐëÊÇÊý¾ÝÀàÐÍÏàËÆ£¬Ò²¾ÍÊÇ¿ÉÒÔÏ໥ת»»ÀàÐ͵ÄÁУ¬±ÈÈçintºÍtinyint¿ÉÒÔ£¬¶øintºÍcharÔò²»¿ÉÒÔ£»
Èý¡¢Íâ¼üµÄÓï·¨
[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...)
REFERENCES tbl_name (index_col_name, ...)
[ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}]
[ON UPDATE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}]
¸ÃÓï·¨¿ÉÒÔÔÚ CREATE TABLE ºÍ ALTER TABLE ʱʹÓã¬Èç¹û²»Ö¸¶¨CONSTRAINT symbol£¬MYSQL»á×Ô¶¯Éú³ÉÒ»¸öÃû×Ö¡£
ON DELETE¡¢ON UPDATE±íʾʼþ´¥·¢ÏÞÖÆ£¬¿ÉÉè²ÎÊý£º
RESTRICT£¨ÏÞÖÆÍâ±íÖеÄÍâ¼ü¸Ä¶¯£©
CASCADE£¨¸úËæÍâ¼ü¸Ä¶¯£©
SET NULL£¨Éè¿ÕÖµ£©
SET DEFAULT£¨ÉèĬÈÏÖµ£©
NO ACTION£¨ÎÞ¶¯×÷£¬Ä¬Èϵģ©
¾ßÌåʹÓÃʾÀý¿ÉÒÔ²
Ïà¹ØÎĵµ£º
ͨ¹ý·ÖÇø£¨Partition£©ÌáÉýMySQLÐÔÄÜ
×÷Õߣºfoxcai À´Ô´:foxcai µÄ Blog (2006-05-08 14:30:34)
ͨ¹ý·ÖÇø£¨Partition£©ÌáÉýMySQLÐÔÄÜ
——MySQL5.1ÐÂÌØÐÔ·ÒëϵÁÐ
¼¸Äêǰ£¬°³Ð´¹ýһƪÌâΪ“The Founda ......
Unix&Linux£º
1.ÓÃroot»òÕßÔËÐÐmysqldµÄÓû§µÇ¼ϵͳ£»
2£®ÀûÓÃkillÃüÁî½áÊøµômysqldµÄ½ø³Ì£»
3£®Ê¹ÓÃ--skip-grant-tables²ÎÊýÆô¶¯MySQL Server
shell>mysqld_safe --skip-grant-tables &
4.Ϊroot@localhostÉèÖÃÐÂÃÜÂë
shell>mysqladmin -u root flush-privileges password "newpassword" ......
ÔÎÄÁ´½Ó£ºhttp://bbs.linuxtone.org/thread-991-1-1.html
ITÔËάר¼ÒÍø--"×ÔÓÉÆ½µÈ£¬»¥Öú·ÖÏí£¡"
===MySQL»ù´¡====
mysql
ÏÂÔØ
: http://www.mysql.com/
mysqld ³£¹æMySQL·þÎñÆ÷
mysqld-opt ÓÅ»¯
mysql·þÎñ
Æ÷,ÌṩһЩ¹¦ÄÜ¿ÉÒÔÍÚ¾ò¸üºÃµÄ¹¦ÄÜ
mys ......
mysql(°üÀ¨ËùÓÐ5.*ϵÁÐ,5.1.21֮ǰ)µÄÂý²éѯÈÕ־ĬÈÏÊÇÒÔÃëΪµ¥Î»µÄ,¿ÉÒÔͨ¹ýset [session|global] long_query_time=1Õâ¸ö×îµÍÒ²¾ÍÊÇ¿ÉÒÔÉèÖõ½1Ãë,¶ÔÓÚ0.5,0.005Ö®Àà¾ÍÎÞÄÜΪÁ¦ÁË,Õâʱºò¿ÉÒÔÓÐmicroslow patch(msl patch)²¹¶¡À´Íê³ÉÕâÒ»¹¤×÷,Õâ¸ö¹¦Äܵĺô¦×ÔÈ»²»ÑÔ¶øÓ÷. ÔÚmysql5.1.21¼°ÒÔºó°æ±¾¿ÉÒÔͨ¹ýset [session|gl ......
ΪʲôѡÔñÔ´Âë±àÒë°²×°mysql£ºÎÒÔÚʹÓÃrpm»òÕßÊÇyum°²×°Ê±myql£¬ÀÏÊÇÌáʾÎÒÕÒ²»µ½*.sockÎļþ£¬ÕÒÁ˵ã
×ÊÁÏ˵ÊǸðüÊǷǹٷ½°æ±¾£¨Ã÷Ã÷Êǹٷ½ÏÂÔØ µÄ£©£¬ÆäÖÐÔÒòµ½ÏÖÔÚ»¹Ã»ÓиãÇå³þ¡£Ï£ÍûÖªÇéÈËÊ¿¸æÖª¡££¨¿ªÊ¼±àÒëµÄʱºò£¬ÏµÍ³»·¾³Ò»¶¨ÒªÅäÖúã¬GCC£¬GC++...µÈµÈµÄ±àÒëÆ÷Ò»¶¨Òª×öºÃ,±¾È˵ÄcentosÓÉÓÚ¿ªÊ¼
ϵͳ»·¾³Ã»ÅäÖ ......