¼ÙÉèmysql °²×°ÔÚc:ÅÌ£¬mysqlÊý¾Ý¿âµÄÓû§ÃûÊÇroot£¬ÃÜÂëÊÇ123456£¬Êý¾Ý¿âÃûÊÇtestdb£¬ÔÚd:Å̸ùĿ¼ÏÂÃæ´æ·Å±¸·ÝÊý¾Ý¿â£¬±¸·ÝÊý¾Ý¿âÃû×ÖΪbackup20070713.sql(20070713.sqlΪ±¸·ÝÈÕÆÚ)
±¸·ÝÊý¾Ý¿â£º
mysqldump -uroot -p123456 testdb>d:/backup20070713.sql
»Ö¸´Êý¾Ý¿â£º
ɾ³ýÔÓÐÊý¾Ý¿â£¬½¨Á¢Êý¾Ý¿â£¬°Ñ±¸·ÝÊý¾Ý¿âµ¼Èë¡£
mysqladmin -uroot -p123456 drop testdb
mysqladmin -uroot -p123456 create testdb
mysql -uroot -p123456 testdb<d:/backup20070713.sql
ÔÚµ¼È뱸·ÝÊý¾Ý¿âǰ£¬testdbÈç¹ûûÓУ¬ÊÇÐèÒª´´½¨µÄ£»¶øÇÒÓëbackup20070713.sqlÖÐÊý¾Ý¿âÃûÊÇÒ»ÑùµÄ²ÅÄܵ¼Èë¡£ ......
//Ö÷¼ü
alter table tabelname add new_field_id int(5) unsigned default 0 not null auto_increment ,add primary key (new_field_id);
//Ôö¼ÓÒ»¸öÐÂÁÐ
alter table t2 add d timestamp;
alter table infos add ex tinyint not null default '0';
//ɾ³ýÁÐ
alter table t2 drop column c;
//ÖØÃüÃûÁÐ
alter table t1 change a b integer;
//¸Ä±äÁеÄÀàÐÍ
alter table t1 change b b bigint not null;
alter table infos change list list tinyint not null default '0';
//ÖØÃüÃû±í
alter table t1 rename t2;
¼ÓË÷Òý
mysql> alter table tablename change depno depno int(5) not null;
mysql> alter table tablename add index Ë÷ÒýÃû (×Ö¶ÎÃû1[£¬×Ö¶ÎÃû2 …]);
mysql> alter table tablename add index emp_name (name);
¼ÓÖ÷¹Ø¼ü×ÖµÄË÷Òý
mysql> alter table tablename add primary key(id);
¼ÓΨһÏÞÖÆÌõ¼þµÄË÷Òý
mysql> alter table tablename add unique emp_name2(cardnumber);
ɾ³ýij¸öË÷Òý
mysql>alter table tablename drop index emp_name;
ÐÞ¸Ä±í£º
Ôö¼Ó×ֶΣº
mysql> A ......
mysqlÊý¾Ý¿â£¬ÂÒÂë½â¾ö°ì·¨»ã×Ü~2009Äê01ÔÂ14ÈÕ ÐÇÆÚÈý ÉÏÎç 09:40×î½ü»Ø´ð°Ù¶ÈÎÊÌ⣬ºÃ¶àÍøÓѶ¼ÔÚmysqlÊý¾Ý¿âÂÒÂëµÄÎÊÌâÉϺÜÒÉ»ó~
ÔÚÕâÀïÎÒ°Ñ×Ô¼ºÖªµÀµÄ¶«¶«Ìù³öÀ´£¬»¹Íû´ó¼Ò¶à¶àÌáÒâ¼û£¬²¹³ä£¬Ð»Ð»~~
show variables like 'character%';²é¿´×Ö·û±àÂë
--¸ü¸Ä×Ö·û¼¯
SET character_set_client = utf-8 ;
SET character_set_connection = utf-8 ;
SET character_set_database = utf-8 ;
SET character_set_results = utf-8 ;
SET character_set_server = utf-8 ;
SET collation_connection = utf8 ;
SET collation_database = utf8 ;
SET collation_server = utf8 ;
MySQLµÄ×Ö·û¼¯Ö§³Ö(Character Set Support)ÓÐÁ½¸ö·½Ã棺×Ö·û¼¯(Character set)ºÍÅÅÐò·½Ê½(Collation)¡£¶ÔÓÚ×Ö·û¼¯µÄÖ§³Öϸ»¯µ½Ëĸö²ã´Î:
·þÎñÆ÷(server)£¬Êý¾Ý¿â(database)£¬Êý¾Ý±í(table)ºÍÁ¬½Ó(connection)¡£
1.MySQLĬÈÏ×Ö·û¼¯:MySQL¶ÔÓÚ×Ö·û¼¯µÄÖ¸¶¨¿ÉÒÔϸ»¯µ½Ò»¸öÊý¾Ý¿â£¬Ò»ÕÅ±í£¬Ò»ÁÐ.´«Í³µÄ³ÌÐòÔÚ´´½¨Êý¾Ý¿âºÍÊý¾Ý±íʱ²¢Ã»ÓÐʹÓÃÄÇà ......
1.·ÖÎö
²åÈëÒ»ÐзÖÏÂÃæ¼¸¸ö¶¯×÷£¬À¨ºÅºóÃæÊÇÆä´óÔ¼±ÈÀý¶î
Connecting(3)
Sendint query to server(2)
Parsing query(2)
Inserting row(1*size of row)
Inserting indexes(1*number of indexes)
Closing(1)
²åÈëË÷ÒýµÄËÙ¶ÈËæ±íµÄ´óС¼õÂý£¬LogN
2.ÓÅ»¯·½·¨
a. Ò»¸ö¿Í»§¶ËÔÚÒ»¸öʱºòÒª²å¶àÌõÊý¾Ý£¬ÄÇôÓöà¸övalues
insert into t1 values(...),(...),(...)
Èç¹ûÊÇÍùÒ»¸ö·Ç¿ÕµÄ±íÀï²åÊý¾Ý£¬¿Éµ÷½Úbulk_insert_buffer_size£¨È±Ê¡Îª8388608×Ö½Ú=8M£©
b. Èç¹û¶à¸ö¿Í»§¶ËÔÚͬʱ²åÐí¶àÌõÊý¾Ý£¬ÄÇôÓÃinsert delayedÓï¾ä
Àû£º¿Í»§¶ËÂíÉÏ·µ»Ø£¬Êý¾ÝÅųÉÒ»¶Ó£»Êý¾ÝÕûÆëµÄдµ½Ò»¸ö¿éÀ¶ø²»ÊÇ·ÖÉ¢¡£
±×£ºÈç¹ûÕâ¸ö±í±»²é»ñɾÊý¾Ý£¬ÄÇô²åÈë»á±äÂý£¬ÁíÍ⣬ΪÕâ¸ö±íÆðÒ»¸öhandlerÏß³ÌÀ´´¦ÀíÕâЩÊý¾ÝÒ²ÒªºÄ·ÑһЩ¶îÍâ×ÊÔ´
´ý²åµÄÊý¾Ý·ÅÔÚÄÚ´æÀһµ©Êý¾Ý¿â±»ÒâÍâÖÕÖ¹£¨Èçkill -9£©£¬ÄÇôÊý¾Ý»á¶ªÊ§¡£
Õâ¸ö·½·¨Ö»ÊÊÓÃÓÚmyisam,memory,archive,blackholeÒýÇæÀà±í¡£
¿Éµ÷½Údelayed_insert_limit£¨È±Ê¡ÎªÒ»´Î100Ìõ£©
delayed_insert_timeout£¨È±Ê¡Îª300£©ÃëÄÚ£¬ÈôÎÞеÄinsert delayedÓï¾ä£¬ÔòhandlerÏß³ÌÍ˳ö¡£
delayed_queue_size£¨È±Ê¡Îª1000Ìõ£©Ò»µ©ÂúÁË£¬¿Í»§¶ËµÄinse ......
http://database.51cto.com/art/200903/117293.htm
1¡¢Ñ¡È¡×îÊÊÓõÄ×Ö¶ÎÊôÐÔ
MySQL¿ÉÒԺܺõÄÖ§³Ö´óÊý¾ÝÁ¿µÄ´æÈ¡£¬µ«ÊÇÒ»°ã˵À´£¬Êý¾Ý¿âÖеıíԽС£¬ÔÚËüÉÏÃæÖ´ÐеIJéѯҲ¾Í»áÔ½¿ì¡£Òò´Ë£¬ÔÚ´´½¨±íµÄʱºò£¬ÎªÁË»ñµÃ¸üºÃµÄÐÔÄÜ£¬ÎÒÃÇ¿ÉÒÔ½«±íÖÐ×ֶεĿí¶ÈÉèµÃ¾¡¿ÉÄÜС¡£ÀýÈ磬ÔÚ¶¨ÒåÓÊÕþ±àÂëÕâ¸ö×Ö¶Îʱ£¬Èç¹û½«ÆäÉèÖÃΪCHAR(255),ÏÔÈ»¸øÊý¾Ý¿âÔö¼ÓÁ˲»±ØÒªµÄ¿Õ¼ä£¬ÉõÖÁʹÓÃVARCHARÕâÖÖÀàÐÍÒ²ÊǶàÓàµÄ£¬ÒòΪCHAR(6)¾Í¿ÉÒԺܺõÄÍê³ÉÈÎÎñÁË¡£Í¬ÑùµÄ£¬Èç¹û¿ÉÒԵϰ£¬ÎÒÃÇÓ¦¸ÃʹÓÃMEDIUMINT¶ø²»ÊÇBIGINÀ´¶¨ÒåÕûÐÍ×ֶΡ£
ÁíÍâÒ»¸öÌá¸ßЧÂʵķ½·¨ÊÇÔÚ¿ÉÄܵÄÇé¿öÏ£¬Ó¦¸Ã¾¡Á¿°Ñ×Ö¶ÎÉèÖÃΪNOT NULL£¬ÕâÑùÔÚ½«À´Ö´ÐвéѯµÄʱºò£¬Êý¾Ý¿â²»ÓÃÈ¥±È½ÏNULLÖµ¡£¶ÔÓÚijЩÎı¾×ֶΣ¬ÀýÈç“Ê¡·Ý”»òÕß“ÐԱ𔣬ÎÒÃÇ¿ÉÒÔ½«ËüÃǶ¨ÒåΪENUMÀàÐÍ¡£ÒòΪÔÚMySQLÖУ¬ENUMÀàÐͱ»µ±×÷ÊýÖµÐÍÊý¾ÝÀ´´¦Àí£¬¶øÊýÖµÐÍÊý¾Ý±»´¦ÀíÆðÀ´µÄËÙ¶ÈÒª±ÈÎı¾ÀàÐÍ¿ìµÃ¶à¡£ÕâÑù£¬ÎÒÃÇÓÖ¿ÉÒÔÌá¸ßÊý¾Ý¿âµÄÐÔÄÜ¡£
2¡¢Ê¹ÓÃÁ¬½Ó(JOIN)À´´úÌæ×Ó²éѯ(Sub-Queries)
MySQL´Ó4.1¿ªÊ¼Ö§³ÖSQLµÄ×Ó²éѯ¡£Õâ¸ö¼¼Êõ¿ÉÒÔʹÓÃSELECTÓï¾äÀ´´´½¨Ò»¸öµ¥ÁеIJéѯ½á¹û£¬È»ºó°ÑÕâ¸ö½á¹û×÷Ϊ¹ýÂËÌõ¼þÓÃÔÚÁíÒ»¸ö²éѯÖС£ÀýÈ ......
1.SELECT
*
from
table
LIMIT
1
,
20
;
//
¼ìË÷¼Ç¼ÐÐ
2-21
µÚÒ»¸ö²ÎÊý£º²éѯÆðʼÐУ¨´Ó0¿ªÊ¼£©
µÚ¶þ¸ö²ÎÊý£º²éѯ¼¸Ìõ¼Ç¼
2.
SELECT
*
from
table
LIMIT
5
,
-
1
;
//
¼ìË÷¼Ç¼ÐÐ
6
-
last.
3.
SELECT
*
from
table
LIMIT
5
;
//
¼ìË÷ǰ
5
¸ö¼Ç¼ÐÐ
......