MySQL ´æ´¢¹ý³Ì
£Û×ªÔØ£ÝMySQL£ºMySQL ´´½¨´æ´¢¹ý³Ì£¨MySQL 5.0£©
2008-09-11 22:14
MySQL ´æ´¢¹ý³ÌÊÇ´Ó MySQL 5.0 ¿ªÊ¼Ôö¼ÓµÄй¦ÄÜ¡£´æ´¢¹ý³ÌµÄÓŵãÓÐÒ»Âá¿ð¡£²»¹ý×îÖ÷ÒªµÄ»¹ÊÇÖ´ÐÐЧÂʺÍSQL ´úÂë·â×°¡£ÌرðÊÇ SQL ´úÂë·â×°¹¦ÄÜ£¬Èç¹ûûÓд洢¹ý³Ì£¬ÔÚÍⲿ³ÌÐò·ÃÎÊÊý¾Ý¿âʱ£¨ÀýÈç PHP£©£¬Òª×éÖ¯ºÜ¶à SQL Óï¾ä¡£ÌرðÊÇÒµÎñÂß¼¸´ÔÓµÄʱºò£¬Ò»´ó¶ÑµÄ SQL ºÍÌõ¼þ¼ÐÔÓÔÚ PHP ´úÂëÖУ¬ÈÃÈ˲»º®¶øÀõ¡£ÏÖÔÚÓÐÁË MySQL ´æ´¢¹ý³Ì£¬ÒµÎñÂß¼¿ÉÒÔ·â×°´æ´¢¹ý³ÌÖУ¬ÕâÑù²»½öÈÝÒ×ά»¤£¬¶øÇÒÖ´ÐÐЧÂÊÒ²¸ß¡£
Ò»¡¢MySQL ´´½¨´æ´¢¹ý³Ì
“pr_add” ÊǸö¼òµ¥µÄ MySQL ´æ´¢¹ý³Ì£¬Õâ¸ö´æ´¢¹ý³ÌÓÐÁ½¸ö int ÀàÐ͵ÄÊäÈë²ÎÊý “a”¡¢“b”£¬·µ»ØÕâÁ½¸ö²ÎÊýµÄºÍ¡£
drop procedure if exists pr_add;
-- ¼ÆËãÁ½¸öÊýÖ®ºÍ
create procedure pr_add
(
a int,
b int
)
begin
declare c int;
if a is null then
set a = 0;
end if;
if b is null then
set b = 0;
end if;
set c = a + b;
select c as sum;
/*
return c;- ²»ÄÜÔÚ MySQL ´æ´¢¹ý³ÌÖÐʹÓá£return Ö»ÄܳöÏÖÔÚº¯ÊýÖС£
/
end;
¶þ¡¢µ÷Óà MySQL ´æ´¢¹ý³Ì
call pr_add(10, 20);
Ö´ÐÐ MySQL ´æ´¢¹ý³Ì£¬´æ´¢¹ý³Ì²ÎÊýΪ MySQL Óû§±äÁ¿¡£
set @a = 10;
set @b = 20;
call pr_add(@a, @b);
Èý¡¢MySQL ´æ´¢¹ý³ÌÌØµã
´´½¨ MySQL ´æ´¢¹ý³ÌµÄ¼òµ¥Ó﷨Ϊ£º
create procedure ´æ´¢¹ý³ÌÃû×Ö()
(
[in|out|inout] ²ÎÊý datatype
)
begin
MySQL Óï¾ä;
end;
MySQL ´æ´¢¹ý³Ì²ÎÊýÈç¹û²»ÏÔʽָ¶¨“in”¡¢“out”¡¢“inout”£¬ÔòĬÈÏΪ“in”¡£Ï°¹ßÉÏ£¬¶ÔÓÚÊÇ“in” µÄ²ÎÊý£¬ÎÒÃǶ¼²»»áÏÔʽָ¶¨¡£
1. MySQL ´æ´¢¹ý³ÌÃû×ÖºóÃæµÄ“()”ÊDZØÐëµÄ£¬¼´Ê¹Ã»ÓÐÒ»¸ö²ÎÊý£¬Ò²ÐèÒª“()”
2. MySQL ´æ´¢¹ý³Ì²ÎÊý£¬²»ÄÜÔÚ²ÎÊýÃû³ÆÇ°¼Ó“@”£¬È磺“@a int”¡£ÏÂÃæµÄ´´½¨´æ´¢¹ý³ÌÓï·¨ÔÚ MySQL ÖÐÊÇ´íÎóµÄ£¨ÔÚ SQL Server ÖÐÊÇÕýÈ·µÄ£©¡£ MySQL ´æ´¢¹ý³ÌÖеıäÁ¿£¬²»ÐèÒªÔÚ±äÁ¿Ãû×Öǰ¼Ó“@”£¬ËäÈ» MySQL ¿Í»§¶ËÓû§±äÁ¿Òª¼Ó¸ö&
Ïà¹ØÎĵµ£º
Scale Out£ººáÏòÀ©Õ¹£¬Ôö¼Ó´¦Àí½ÚµãÌá¸ßÕûÌå´¦ÀíÄÜÁ¦
Scale Up£º×ÝÏòÀ©Õ¹£¬Í¨¹ýÌáÉýµ¥¸ö½ÚµãµÄ´¦ÀíÄÜÁ¦´ïµ½ÌáÉýÕûÌå´¦ÀíÄÜÁ¦µÄÄ¿µÄ
Replication
MySQLµÄreplicationÊÇÒì²½µÄ£¬ÊÊÓÃÓÚ¶ÔÊý¾ÝʵʱÐÔÒªÇó²»ÊÇÌØ±ð¹Ø¼üµÄ³¡¾°¡£slave¶ËµÄIOÏ̸߳ºÔð´Ómaster¶ÁÈ¡ÈÕÖ¾£¬SQLÏß ³ÌרߺÔðÔÚslave¶ËÓ¦ÓôÓmaster¶Á¹ýÀ´µÄÈÕÖ¾£¨ÔçÆÚ ......
MySQL+PHP²úÉúÂÒÂëÔÒò£º
¡¡¡¡¡ô MySQLÊý¾Ý¿âĬÈϵıàÂëÊÇutf8,Èç¹ûÕâÖÖ±àÂëÓëÄãµÄPHPÍøÒ³²»Ò»ÖÂ,¿ÉÄܾͻáÔì³ÉMySQLÂÒÂë;
¡¡¡¡¡ô MySQLÖд´½¨±íʱ»áÈÃÄãÑ¡ÔñÒ»ÖÖ±àÂë,Èç¹ûÕâÖÖ±àÂëÓëÄãµÄÍøÒ³±àÂë²»Ò»ÖÂ,Ò²¿ÉÄÜÔì³ÉMySQLÂÒÂë;
¡¡¡¡¡ô MySQL´´½¨±íʱÌí¼Ó×Ö¶ÎÊÇ¿ÉÒÔÑ¡Ôñ±àÂëµÄ,Èç¹ûÕâÖÖ±àÂëÓëÄãµÄÍøÒ³±àÂë²»Ò»ÖÂ,Ò²¿ÉÄÜÔì³É ......
innodb_buffer_pool_size
Èç¹ûÓÃInnodb£¬ÄÇôÕâÊÇÒ»¸öÖØÒª±äÁ¿¡£Ïà¶ÔÓÚMyISAMÀ´Ëµ£¬Innodb¶ÔÓÚbuffer size¸üÃô¸Ð¡£MySIAM¿ÉÄܶÔÓÚ´óÊý¾ÝÁ¿Ê¹ÓÃĬÈϵÄkey_buffer_sizeÒ²»¹ºÃ£¬µ«InnodbÔÚ´óÊý¾ÝÁ¿Ê±ÓÃĬÈÏÖµ¾Í¸Ð¾õÔÚÅÀÁË¡£ InnodbµÄ»º³å³Ø»á»º´æÊý¾ÝºÍË÷Òý£¬ËùÒÔ²»ÐèÒª¸øÏµÍ³µÄ»º´æÁô¿Õ¼ä£¬Èç¹ûÖ»ÓÃInnodb£¬¿ÉÒÔ°ÑÕâ¸öÖµÉèΪ ......
ÔÚ¶Ômysql½øÐе÷ÊÔµÄʱºò£¬ÓÉÓÚmysql´æÔÚquery»º´æ£¬³£³£²»ÄÜ·´Ó³ÕæÊµÇé¿ö¡£
ÓÐʱºò£¬ÓÐûÓÐʹÓÃFLUSH
QUERY
CACHEµÄȨÏÞ£»
ÔÚ query_cache_type ´ò¿ªµÄÇé¿öÏ£¬Èç¹ûÄã²»ÏëʹÓûº´æ£¬ÐèÒªÖ¸Ã÷
select sql_no_cache id,name from tableName;
»òÕß»¹Óиü¼òµ¥µÄ°ì·¨£¬ÐÞ¸ÄÒ»ÏÂsqlÀïij¸ö×Öĸµ ......
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" ......