Ìáʾ£ºSQL ServerÊý¾Ý¿â²éѯËÙ¶ÈÂýµÄÔÒòÓкܶ࣬³£¼ûµÄÓÐÒÔϼ¸ÖÖ.
SQL ServerÊý¾Ý¿â²éѯËÙ¶ÈÂýµÄÔÒòÓкܶ࣬³£¼ûµÄÓÐÒÔϼ¸ÖÖ£º
¡¡¡¡1¡¢Ã»ÓÐË÷Òý»òÕßûÓÐÓõ½Ë÷Òý(ÕâÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)
¡¡¡¡2¡¢I/OÍÌÍÂÁ¿Ð¡£¬ÐγÉÁËÆ¿¾±Ð§Ó¦¡£
¡¡¡¡3¡¢Ã»Óд´½¨¼ÆËãÁе¼Ö²éѯ²»ÓÅ»¯¡£
¡¡¡¡4¡¢ÄÚ´æ²»×ã
¡¡¡¡5¡¢ÍøÂçËÙ¶ÈÂý
¡¡¡¡6¡¢²éѯ³öµÄÊý¾ÝÁ¿¹ý´ó(¿ÉÒÔ²ÉÓöà´Î²éѯ£¬ÆäËûµÄ·½·¨½µµÍÊý¾ÝÁ¿)
¡¡¡¡7¡¢Ëø»òÕßËÀËø(ÕâÒ²ÊDzéѯÂý×î³£¼ûµÄÎÊÌ⣬ÊdzÌÐòÉè¼ÆµÄȱÏÝ)
¡¡¡¡8¡¢sp_lock,sp_who,»î¶¯µÄÓû§²é¿´£¬ÔÒòÊǶÁд¾ºÕù×ÊÔ´¡£
¡¡¡¡9¡¢·µ»ØÁ˲»±ØÒªµÄÐкÍÁÐ
¡¡¡¡10¡¢²éѯÓï¾ä²»ºÃ£¬Ã»ÓÐÓÅ»¯
¡ñ¿ÉÒÔͨ¹ýÒÔÏ·½·¨À´ÓÅ»¯²éѯ£º
¡¡¡¡1¡¢°ÑÊý¾Ý¡¢ÈÕÖ¾¡¢Ë÷Òý·Åµ½²»Í¬µÄI/OÉ豸ÉÏ£¬Ôö¼Ó¶ÁÈ¡Ëٶȣ¬ÒÔÇ°¿ÉÒÔ½«TempdbÓ¦·ÅÔÚRAID0ÉÏ£¬SQL2000²»ÔÚÖ§³Ö¡£Êý¾ÝÁ¿(³ß´ç)Ô½´ó£¬Ìá¸ßI/OÔ½ÖØÒª¡£
¡¡¡¡2¡¢×ÝÏò¡¢ºáÏò·Ö¸î±í£¬¼õÉÙ±íµÄ³ß´ç(sp_spaceuse)
¡¡¡¡3¡¢Éý¼¶Ó²¼þ
¡¡¡¡4¡¢¸ù¾Ý²éѯÌõ¼þ£¬½¨Á¢Ë÷Òý£¬ÓÅ»¯Ë÷Òý¡¢ÓÅ»¯·ÃÎÊ·½Ê½£¬ÏÞÖƽá¹û¼¯µÄÊý¾ÝÁ¿¡£×¢ÒâÌî³äÒò×ÓÒªÊʵ±(×îºÃÊÇʹÓÃĬÈÏÖµ0)¡£Ë÷ÒýÓ¦¸Ã¾¡Á¿Ð¡£¬Ê¹ÓÃ×Ö½ÚÊýСµÄÁн¨Ë÷ÒýºÃ(²ÎÕÕË÷ÒýµÄ´´½¨),²»Òª¶ÔÓÐÏ޵ļ¸¸öÖµµÄ×ֶν¨µ¥Ò»Ë÷ÒýÈçÐÔ±ð×ֶΡ£
¡¡¡¡5¡¢Ìá¸ßÍøËÙ¡£
¡¡¡¡6¡¢À©´ó·þÎñÆ÷µÄÄڴ棬Windows 2000ºÍSQL server 2000ÄÜÖ§³Ö4-8GµÄÄÚ´æ¡£
¡¡¡¡ÅäÖÃÐéÄâÄڴ棺ÐéÄâÄÚ´æ´óСӦ»ùÓÚ¼ÆËã»úÉϲ¢·¢ÔËÐеķþÎñ½øÐÐÅäÖá£ÔËÐÐMicrosoft SQL Server? 2000ʱ£¬¿É¿¼Âǽ«ÐéÄâÄÚ´æ´óСÉèÖÃΪ¼ÆËã»úÖа²×°µÄÎïÀíÄÚ´æµÄ1.5±¶¡£Èç¹ûÁíÍâ°²×°ÁËÈ«ÎļìË÷¹¦ÄÜ£¬²¢´òËãÔËÐÐMicrosoftËÑË÷·þÎñÒÔ±ãÖ´ÐÐÈ«ÎÄË÷ÒýºÍ²éѯ£¬¿É¿¼ÂÇ£º½«ÐéÄâÄÚ´æ´óСÅäÖÃΪÖÁÉÙÊǼÆËã»úÖа²×°µÄÎïÀíÄÚ´æµÄ3±¶¡£½«SQL Server max server memory·þÎñÆ÷ÅäÖÃÑ¡ÏîÅäÖÃΪÎïÀíÄÚ´æµÄ1.5±¶(ÐéÄâÄÚ´æ´óСÉèÖõÄÒ»°ë)¡£
¡¡¡¡7¡¢Ôö¼Ó·þÎñÆ÷CPU¸öÊý;µ«ÊDZØÐëÃ÷°×²¢Ðд¦Àí´®Ðд¦Àí¸üÐèÒª×ÊÔ´ÀýÈçÄڴ档ʹÓò¢Ðл¹ÊÇ´®ÐгÌÊÇMsSQL×Ô¶¯ÆÀ¹ÀÑ¡ÔñµÄ¡£µ¥¸öÈÎÎñ·Ö½â³É¶à¸öÈÎÎñ£¬¾Í¿ÉÒÔÔÚ´¦ÀíÆ÷ÉÏÔËÐС£ÀýÈçµ¢¸é²éѯµÄÅÅÐò¡¢Á¬½Ó¡¢É¨ÃèºÍGROUP BY×Ö¾äͬʱִÐУ¬SQL SERVER¸ù¾ÝϵͳµÄ¸ºÔØÇé¿ö¾ö¶¨×îÓŵIJ¢Ðеȼ¶£¬¸´ÔÓµÄÐèÒªÏûºÄ´óÁ¿µÄCPUµÄ²éѯ×îÊʺϲ¢Ðд¦Àí¡£µ«ÊǸüвÙ×÷ UPDATE,INSERT£¬DELETE»¹²»Äܲ¢Ðд¦Àí¡£
¡¡¡¡8¡¢Èç¹ûÊÇʹÓÃlike½øÐвéѯµÄ»°£¬¼òµ¥µÄʹÓÃindexÊDz»Ðеģ¬µ«ÊÇÈ«ÎÄË÷Òý£¬ºÄ¿Õ¼ä¡£like ''a%'' ʹÓÃË÷Òý like ''%a'' ²»Ê¹ÓÃË÷ÒýÓà like ''%a%'' ²éѯʱ£¬²éѯºÄʱºÍ×Ö¶ÎÖµ×ܳ¤¶È³ÉÕý±È,ËùÒÔ²»ÄÜÓÃCHARÀàÐÍ£¬¶øÊÇVARCHAR¡£¶ÔÓÚ×ֶεÄÖµºÜ³¤µÄ½¨È«ÎÄË÷Òý¡£
¡¡¡¡9¡¢DB ServerºÍAPPLication Server ·ÖÀë;OLTPºÍOLAP·ÖÀë
¡¡¡¡10¡¢·Ö²¼Ê½·ÖÇøÊÓͼ¿ÉÓÃÓÚʵÏÖÊý¾Ý¿â·þÎñÆ÷ÁªºÏÌå¡£
¡¡¡¡ÁªºÏÌåÊÇÒ»×é·Ö¿ª¹ÜÀíµÄ·þÎñÆ÷£¬µ«ËüÃÇÏ໥Ð×÷·Öµ£ÏµÍ³µÄ´¦Àí¸ººÉ¡£ÕâÖÖͨ¹ý·ÖÇøÊý¾ÝÐγÉÊý¾Ý¿â·þÎñÆ÷ÁªºÏÌåµÄ»úÖÆÄܹ»À©´óÒ»×é·þÎñÆ÷£¬ÒÔÖ§³Ö´óÐ͵Ķà²ã Web Õ¾µãµÄ´¦ÀíÐèÒª¡£Óйظü¶àÐÅÏ¢£¬²Î¼ûÉè¼ÆÁªºÏÊý¾Ý¿â·þÎñÆ÷¡£
¡¡¡¡a¡¢ÔÚʵÏÖ·ÖÇøÊÓͼ֮ǰ£¬±ØÐëÏÈˮƽ·ÖÇø±í
¡¡¡¡b¡¢ÔÚ´´½¨³ÉÔ±±íºó£¬ÔÚÿ¸ö³ÉÔ±·þÎñÆ÷É϶¨ÒåÒ»¸ö·Ö²¼Ê½·ÖÇøÊÓͼ£¬²¢ÇÒÿ¸öÊÓͼ¾ßÓÐÏàͬµÄÃû³Æ¡£ÕâÑù£¬ÒýÓ÷ֲ¼Ê½·ÖÇøÊÓͼÃûµÄ²éѯ¿ÉÒÔÔÚÈκÎÒ»¸ö³ÉÔ±·þÎñÆ÷ÉÏÔËÐС£ÏµÍ³²Ù×÷Èçͬÿ¸ö³ÉÔ±·þÎñÆ÷É϶¼ÓÐÒ»¸öÔʼ±íµÄ¸´±¾Ò»Ñù£¬µ«Æäʵÿ¸ö·þÎñÆ÷ÉÏÖ»ÓÐÒ»¸ö³ÉÔ±±íºÍÒ»¸ö·Ö²¼Ê½·ÖÇøÊÓͼ¡£Êý¾ÝµÄλÖöÔÓ¦ÓóÌÐòÊÇ͸Ã÷µÄ¡£
¡¡¡¡11¡¢Öؽ¨Ë÷Òý DBCC REINDEX ,DBCC INDEXDEFRAG,ÊÕËõÊý¾ÝºÍÈÕÖ¾ DBCC SHRINKDB,DBCC SHRINKFILE. ÉèÖÃ×Ô¶¯ÊÕËõÈÕÖ¾.¶ÔÓÚ´óµÄÊý¾Ý¿â²»ÒªÉèÖÃÊý¾Ý¿â×Ô¶¯Ôö³¤£¬Ëü»á½µµÍ·þÎñÆ÷µÄÐÔÄÜ¡£
¡¡¡¡ÔÚT-sqlµÄд·¨ÉÏÓкܴóµÄ½²¾¿£¬ÏÂÃæÁгö³£¼ûµÄÒªµã£ºÊ×ÏÈ£¬DBMS´¦Àí²éѯ¼Æ»®µÄ¹ý³ÌÊÇÕâÑùµÄ£º
¡¡¡¡1¡¢²éѯÓï¾äµÄ´Ê·¨¡¢Óï·¨¼ì²é
¡¡¡¡2¡¢½«Óï¾äÌá½»¸øDBMSµÄ²éѯÓÅ»¯Æ÷
¡¡¡¡3¡¢ÓÅ»¯Æ÷×ö´úÊýÓÅ»¯ºÍ´æȡ·¾¶µÄÓÅ»¯
¡¡¡¡4¡¢ÓÉÔ¤±àÒëÄ£¿éÉú³É²éѯ¹æ»®
¡¡¡¡5¡¢È»ºóÔÚºÏÊʵÄʱ¼äÌá½»¸øϵͳ´¦ÀíÖ´ÐÐ
¡¡¡¡6¡¢×îºó½«Ö´Ðнá¹û·µ»Ø¸øÓû§¡£
¡¡¡¡Æä´Î£¬¿´Ò»ÏÂSQL SERVERµÄÊý¾Ý´æ·ÅµÄ½á¹¹£ºÒ»¸öÒ³ÃæµÄ´óСΪ8K(8060)×Ö½Ú£¬8¸öÒ³ÃæΪһ¸öÅÌÇø£¬°´ÕÕBÊ÷´æ·Å¡£
¡¡¡¡12¡¢CommitºÍrollbackµÄÇø±ðRollback:»Ø¹öËùÓеÄÊÂÎï¡£Commit:Ìá½»µ±Ç°µÄÊÂÎûÓбØÒªÔÚ¶¯Ì¬SQLÀïдÊÂÎÈç¹ûҪдÇëдÔÚÍâÃæÈ磺begin tran exec(@s) commit trans»òÕß½«¶¯Ì¬SQL д³Éº¯Êý»òÕß´æ´¢¹ý³Ì¡£
¡¡¡¡13¡¢ÔÚ²éѯSelectÓï¾äÖÐÓÃWhere×Ö¾äÏÞÖÆ·µ»ØµÄÐÐÊý,±ÜÃâ±íɨÃè,Èç¹û·µ»Ø²»±ØÒªµÄÊý¾Ý£¬ÀË·ÑÁË·þÎñÆ÷µÄI/O×ÊÔ´£¬¼ÓÖØÁËÍøÂçµÄ¸ºµ£½µµÍÐÔÄÜ¡£Èç¹û±íºÜ´ó£¬ÔÚ±íɨÃèµÄÆڼ佫±íËøס£¬½ûÖ¹ÆäËûµÄÁª½Ó·ÃÎʱí,ºó¹ûÑÏÖØ¡£
¡¡¡¡14¡¢SQLµÄ×¢ÊÍÉêÃ÷¶ÔÖ´ÐÐûÓÐÈκÎÓ°Ïì
¡¡¡¡15¡¢¾¡¿ÉÄܲ»Ê¹Óùâ±ê£¬ËüÕ¼ÓôóÁ¿µÄ×ÊÔ´¡£Èç¹ûÐèÒªrow-by-rowµØÖ´ÐУ¬¾¡Á¿²ÉÓ÷ǹâ±ê¼¼Êõ£¬È磺ÔÚ¿Í»§¶ËÑ»·£¬ÓÃÁÙʱ±í£¬Table±äÁ¿£¬ÓÃ×Ó²éѯ£¬ÓÃCaseÓï¾äµÈµÈ¡£
¡¡¡¡Óαê¿ÉÒÔ°´ÕÕËüËùÖ§³ÖµÄÌáÈ¡Ñ¡Ïî½øÐзÖÀֻࣺ½ø±ØÐë°´ÕÕ´ÓµÚÒ»Ðе½×îºóÒ»ÐеÄ˳ÐòÌáÈ¡ÐС£FETCH NEXT ÊÇΨһÔÊÐíµÄÌáÈ¡²Ù×÷£¬Ò²ÊÇĬÈÏ·½Ê½¡£¿É¹ö¶¯ÐÔ¿ÉÒÔÔÚÓαêÖÐÈκεط½Ëæ»úÌáÈ¡ÈÎÒâÐС£ÓαêµÄ¼¼ÊõÔÚSQL2000ϱäµÃ¹¦ÄܺÜÇ¿´ó£¬ËûµÄÄ¿µÄÊÇÖ§³ÖÑ»·¡£
¡¡¡¡ÓÐËĸö²¢·¢Ñ¡ÏîREAD_ONLY£º²»ÔÊÐíͨ¹ýÓα궨λ¸üÐÂ(Update)£¬ÇÒÔÚ×é³É½á¹û¼¯µÄÐÐÖÐûÓÐËø¡£
¡¡¡¡OPTIMISTIC WITH valueS£ºÀÖ¹Û²¢·¢¿ØÖÆÊÇÊÂÎñ¿ØÖÆÀíÂÛµÄÒ»¸ö±ê×¼²¿·Ö¡£ÀÖ¹Û²¢·¢¿ØÖÆÓÃÓÚÕâÑùµÄÇéÐΣ¬¼´ÔÚ´ò¿ªÓα꼰¸üÐÂÐеļä¸ôÖУ¬Ö»ÓкÜСµÄ»ú»áÈõڶþ¸öÓû§¸üÐÂijһÐС£µ±Ä³¸öÓαêÒÔ´ËÑ¡Ïî´ò¿ªÊ±£¬Ã»ÓÐËø¿ØÖÆÆäÖеÄÐУ¬Õ⽫ÓÐÖúÓÚ×î´ó»¯Æä´¦ÀíÄÜÁ¦¡£Èç¹ûÓû§ÊÔͼÐÞ¸ÄijһÐУ¬Ôò´ËÐеĵ±Ç°Öµ»áÓë×îºóÒ»´ÎÌáÈ¡´ËÐÐʱ»ñÈ¡µÄÖµ½øÐбȽϡ£Èç¹ûÈκÎÖµ·¢Éú¸Ä±ä£¬Ôò·þÎñÆ÷¾Í»áÖªµÀÆäËûÈËÒѸüÐÂÁË´ËÐУ¬²¢»á·µ»ØÒ»¸ö´íÎó¡£Èç¹ûÖµÊÇÒ»ÑùµÄ£¬·þÎñÆ÷¾ÍÖ´ÐÐÐ޸ġ£