¤å³¹½s¸¹: 224587 - ¤W¦¸®Õ¾\: 2007¦~10¤ë26¤é - ª©¦¸: 4.1

HOW TO¡GSQL Server À³¥Îµ{¦¡®Ä¯àºÃÃø±Æ¸Ñ

¨t²Î´£¥Ü¥»¤å¾A¥Î©ó±z¨Ï¥Îªº§@·~¨t²Î¤§¥~ªº§@·~¨t²Î¡C»P±z¤£¬ÛÃöªº¤å³¹¤º®e¤w°±¥Î¡C
¥»¤å´¿µo¦æ©ó CHT224587

¦b¦¹­¶¤¤

¥þ³¡®i¶} | ¥þ³¡ºPÅ|

µ²½×

¥»¤å±N³v¨B§i¶D±z¡A¦p¦óºÃÃø±Æ¸Ñ SQL Server ®Ä¯à°ÝÃD¡CºÃÃø±Æ¸Ñ®Ä¯à°ÝÃD»Ý­n¨Ï¥Î¤@¨t¦Cªº¨BÆJ¨Ó¹jÂ÷©M§PÂ_À³¥Îµ{¦¡®Ä¯à§C¸¨ªº­ì¦]¡C¥i¯àªº­ì¦]¥]¬A¡G
  • «ÊÂê¡C
  • ¨t²Î¸ê·½Ävª§¡C
  • À³¥Îµ{¦¡³]­p°ÝÃD¡C
  • ¤@²Õ»Ý­n¸ûªø°õ¦æ®É¶¡ªº¬d¸ß©Î¹w¦sµ{§Ç¡C
¥»¤å±N§i¶D±z¡A¦p¦ó§PÂ_®Ä¯à°ÝÃDªº¨Ó·½¡C¥¦¤]°Ñ¦Ò¡uMicrosoft ª¾ÃÑ®w¡v¤¤²[»\¯S©w®Ä¯à°ÝÃD¤§¨ä¥LºÃÃø±Æ¸Ñ¸Ô²Ó¸ê®Æªº¨ä¥L¤å¥ó¡C

SQL Profiler


SQL Profiler ¬OºÃÃø±Æ¸Ñ SQL Server 7.0 ©Î§ó·sª©¥»¤§À³¥Îµ{¦¡®Ä¯àªº±j¤j¤u¨ã¡CSQL Profiler ¥iÅý±z»´©ö¦aÂ^¨ú¦b¤@¯ë­t¸ü¤§¤U¦øªA¾¹¤Wµo¥Íªº©Ò¦³¨Æ¥ó¡A¨Ã´£¨ÑÃö©ó¥¦­Ìªº¸ê°T¡C¨Ï¥Î SQL Profiler ¥[¤W Microsoft Windows NT ªº¡u®Ä¯àºÊµø¾¹¡v¥H¤Î¤@¨Ç²³æªº¬d¸ß¨ÓÃѧO¬O§_¥¿µo¥Í«ÊÂꪺ²{¶H¡A±N¥i´£¨Ñ±z¦b¸Ñ¨M­«¤j®Ä¯à°ÝÃD®É©Ò»Ýªº¸ê°T¡C

ºÊµøªº¤º®e

1. ³]©w SQL Profiler ¥HÂ^¨ú°lÂÜ¡C¦pªG­n°õ¦æ³o¶µ¾Þ§@¡A½Ð¨Ì·Ó¤U¦C¨BÆJ°õ¦æ¡G
  1. ¶}±Ò SQL Profiler¡C
  2. ¦b [¤u¨ã] ¥\¯àªí¤W¡A«ö¤@¤U [¿ï¶µ]¡C
  3. ½Ð½T©w¿ï¨ú [©Ò¦³¨Æ¥óÃþ§O] »P [©Ò¦³¸ê®ÆÄæ¦ì] ¿ï¶µ¡C
  4. «ö¤@¤U [½T©w]¡C
  5. «Ø¥ß·sªº°lÂÜ¡C
  6. ¦b [ÀÉ®×] ¥\¯àªí¤W¡A«ü¦V [·s¼W]¡AµM«á«ö¤@¤U [°lÂÜ]¡C
  7. ¦b [¤@¯ë] ¯Á¤Þ¼ÐÅÒ¤W¡A«ü©w­nÂ^¨ú¸ê®Æªº°lÂܦWºÙ»PÀɮסC
  8. ¦b [¨Æ¥ó] ¯Á¤Þ¼ÐÅÒ¤W¡A±N¤U¦C¨Æ¥óÃþ«¬·s¼W¦Ü°lÂÜ¡G

    ºPÅ|¦¹ªí®æ®i¶}¦¹ªí®æ
    ¼ÐÃD­n·s¼Wªº¨Æ¥ó»¡©ú
    ¸ê®Æ«ü¼ÐCursorPrepare¦¹¨Æ¥ó«ü¥X¤w¨Ï¥Î ODBC¡BOLEDB ©Î DB-Library ·Ç³Æ SQL ³¯­z¦¡¤Wªº¸ê®Æ«ü¼Ð¡C
    ¿ù»~©Mĵ§iMissing Column Statistics¦¹¨Æ¥ó«ü¥X¦³§U©ó¬d¸ß³Ì¨Î¤Æ¤u¨ãªºÄæ¦ì²Î­p¸ê®Æ¤£¦s¦b¡CText Äæ¦ì·|Åã¥Ü¿ò¥¢²Î­p¸ê®ÆªºÄæ¦ì²M³æ¡C¦¹¨Æ¥ó¥[¤W Misc:Auto-UpdateStats ¨Æ¥ó¡A«ü¥X¤wIJµo [¦Û°Ê«Ø¥ß²Î­p¸ê®Æ] ¿ï¶µ¡C
    Âø¶µª`·N¨Æ¶µ¦¹¨Æ¥ó«ü¥X¥Î¤áºÝ¶Ç°eªºª`·N¨Æ¶µ°T¸¹¡C
    Âø¶µAuto-UpdateStats¦¹¨Æ¥ó«ü¥X¤wIJµo [¦Û°Ê§ó·s²Î­p¸ê®Æ] ¿ï¶µ¡C
    Âø¶µExec Prepared SQL¦¹¨Æ¥ó«ü¥X ODBC¡BOLE DB ©Î DB-Library ¤w°õ¦æ¥ý«e·Ç³Æªº Transact-SQL ³¯­z¦¡¡C
    Âø¶µExecution Plan¦¹¨Æ¥óÅã¥Ü¤w°õ¦æªº Transact-SQL ³¯­z¦¡¤§­p¹º¾ðª¬¥Ø¿ý¡C
    Âø¶µPrepare SQL¦¹¨Æ¥ó«ü¥X ODBC¡BOLE DB ©Î DB-Library À³¥Îµ{¦¡·Ç³Æ¤F­n¨Ï¥Îªº Transact-SQL ³¯­z¦¡¡C
    Âø¶µUnprepare SQL¦¹¨Æ¥ó«ü¥X ODBC¡BOLE DB ©Î DB-Library À³¥Îµ{¦¡¨ú®ø·Ç³Æ­n¨Ï¥Îªº Transact-SQL ³¯­z¦¡¡C
    ¤u§@¶¥¬qConnect¦¹¨Æ¥ó«ü¥X¤w«Ø¥ß·sªº³s½u¡C
    ¤u§@¶¥¬qDisconnect¦¹¨Æ¥ó«ü¥X¥Î¤áºÝ¤w¤¤Â_³s½u¡C
    ¤u§@¶¥¬qExisting Connection¦¹¨Æ¥ó«ü¥X±Ò°Ê SQL Profiler °lÂܮɤw¦³³s½u¦s¦b¡C
    ¹w¦sµ{§ÇSP:Completed¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤w§¹¦¨°õ¦æ¡C
    ¹w¦sµ{§ÇSP:Recompile¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤w¦b°õ¦æ´Á¶¡­«·s½sĶ¡C
    ¹w¦sµ{§ÇSP:Starting¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤w¶}©l°õ¦æ¡C
    ¹w¦sµ{§ÇSP:StmtCompleted¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤¤ªº³¯­z¦¡¤w§¹¦¨°õ¦æ¡C
    TSQL:SQL:BatchCompleted¦¹¨Æ¥ó«ü¥X¤w§¹¦¨ Transact-SQL §å¦¸¡CText Äæ¦ìÅã¥Ü¤w°õ¦æ¸Ó³¯­z¦¡¡C
    TSQL:SQL:StmtCompleted¦¹¨Æ¥ó«ü¥X¤w§¹¦¨ Transact-SQL ³¯­z¦¡¡CText Äæ¦ìÅã¥Ü¤w°õ¦æ¸Ó³¯­z¦¡¡C
    TSQL:RPC:Completed¦¹¨Æ¥ó«ü¥X¤w§¹¦¨»·ºÝµ{§Ç©I¥s (RPC)¡C
  9. ¦pªGÀ³¥Îµ{¦¡¦¬¨ì¹O®É¿ù»~¡B°±¤î¦^À³ (ÀÁ¸m) ©Î¹J¨ì¨ä¥L¾É­P¦³°ÝÃDªº³¯­z¦¡¤@ª½µLªk§¹¦¨ªº¨Æ¥ó¡A«h¤]½Ð¥[¤J¤U¦C¨Æ¥ó¡G

    ºPÅ|¦¹ªí®æ®i¶}¦¹ªí®æ
    TSQL:SQL:BatchStarting¦¹¨Æ¥ó«ü¥X Transact-SQL §å¦¸ªº¶}©l¡CText Äæ¦ìÅã¥Ü¥¿¦b°õ¦æªº³¯­z¦¡¡C
    TSQL:SQL:StmtStarting¦¹¨Æ¥ó«ü¥X Transact-SQL ³¯­z¦¡ªº¶}©l¡CText Äæ¦ìÅã¥Ü¥¿¦b°õ¦æªº³¯­z¦¡¡C
    TSQL:RPC:Starting¦¹¨Æ¥ó«ü¥X»·ºÝµ{§Ç©I¥s (RPC) ªº¶}©l¡C
    ¹w¦sµ{§ÇSP:StmtStarting¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤¤ªº³¯­z¦¡¶}©l°õ¦æ¡C


    ³o±N¥i¨ó§U½T©w·íµo¥Í¹O®É¥i¥H¬d¬Ý´¿¸g°õ¦æªº³¯­z¦¡¡C
  10. ¦b [¸ê®ÆÄæ¦ì] ¯Á¤Þ¼ÐÅÒ¤W¡A½Ð½T©w¥]¬A¤U¦CÄæ¦ì¡G

    ¾A¥Î©ó SQL Server 2000

    ¶}©l®É¶¡

    µ²§ô®É¶¡

    LoginSid

    SPID

    ¨Æ¥óÃþ§O

    TextData

    IntegerData

    BinaryData

    «ùÄò®É¶¡

    CPU

    Ū¨ú

    ¼g¤J

    À³¥Îµ{¦¡¦WºÙ

    NT ¨Ï¥ÎªÌ¦WºÙ

    DBUserName


    ¾A¥Î©ó SQL Server 7.0

    ¶}©l®É¶¡

    µ²§ô®É¶¡

    ³s±µÃѧO½X

    SPID

    ¨Æ¥óÃþ§O

    ¤å¦r

    ¾ã¼Æ¸ê®Æ

    ¤G¶i¦ì¸ê®Æ

    «ùÄò®É¶¡

    CPU

    Ū¨ú

    ¼g¤J

    À³¥Îµ{¦¡¦WºÙ

    NT ¨Ï¥ÎªÌ¦WºÙ

    SQL ¨Ï¥ÎªÌ¦WºÙ

¦p»Ý¦³Ãö SQL Profiler ªº¨Ï¥Î¸ê°T¡A½Ð°Ñ¾\ SQL Server 7.0 ©M SQL Server 2000 ªº¡m½u¤WÂO®Ñ¡n¡C


2. ¨Ï¥Î¡u®Ä¯àºÊµø¾¹¡vÂ^¨ú Windows NT »P SQL Server ­p¼Æ¾¹¡C¦pªG­n°õ¦æ³o¶µ¾Þ§@¡A½Ð¨Ì·Ó¤U¦C¨BÆJ°õ¦æ¡G
  1. ±Ò°Ê Windows NT ªº¡u®Ä¯àºÊµø¾¹¡v¡C
  2. ¦b [À˵ø] ¥\¯àªí¤W¡A«ö¤@¤U [°O¿ýÀÉ]¡C
  3. ¦b [¿ï¶µ] ¥\¯àªí¤W¡A«ö¤@¤U [°O¿ýÀÉ]¡C
  4. «ü©wÀɮצWºÙ»P¦ì¸m¥H°O¿ý®Ä¯à­p¼Æ¾¹¡C±z¥i¥H¾A·í¦a½Õ¾ã§ó·s¶¡¹j¡C
  5. ¦b [½s¿è] ¥\¯àªí¤W¡A«ö¤@¤U [¥[¤J¨ì°O¿ýÀÉ]¡C
  6. ·s¼W©Ò¦³ªºª«¥ó¡C¥]¬A Windows NT »P SQL Server ª«¥ó¡C
  7. ¦pªG­n±Ò°Ê°O¿ýÀÉ¡A¦b [¿ï¶µ] ¥\¯àªí¤W¡A«ö¤@¤U [°O¿ýÀÉ]¡AµM«á«ö¤@¤U [±Ò°Ê°O¿ýÀÉ] «ö¶s¡C

¦p»Ý¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
150934? (http://support.microsoft.com/kb/150934/ ) ¦p¦ó«Ø¥ß®Ä¯àºÊµø¾¹°O¿ý¥H¶i¦æ NT ºÃÃø±Æ¸Ñ

3. Àˬd«ÊÂê¡C

¦pªG­n¬d¬Ý¬O§_µo¥Í«ÊÂê¡A½Ð°õ¦æ sp_who ¨t²Î¹w¦sµ{§Ç¡G
exec sp_who
¦¹¿é¥X±N¥]§t blk Äæ¦ì¡CÀˬd¿é¥X¡A¬d¬Ý¦³µL¥ô¦ó«ü¥Xµo¥Í«ÊÂꪺ«D¹s¶µ¥Ø¡Cµo¥Í®Ä¯à§C¸¨®É¡A½Ð©w´Á¦b¾ã­Ó®Éµ{¤¤°õ¦æ¦¹µ{§Ç¡C

ª`·N °õ¦æ sp_who ¨t²Î¹w¦sµ{§Ç¥u¯àÀˬd¬O§_¦³«ÊÂê¦s¦b¡C¤@¯ë¦Ó¨¥¡A¥¦µLªk´£¨Ñ¨¬°÷ªº¸ê°T¥H±Æ¸Ñ«ÊÂê°ÝÃD¡C ¦p»Ý¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
251004? (http://support.microsoft.com/kb/251004/ ) INF¡G¦p¦óºÊµø SQL Server 7.0 «ÊÂê

¦b¤@¯ë­t¸ü¤U°õ¦æÀ³¥Îµ{¦¡

³Ì¦n¦b¬Û¦Pªº®Éµ{¤º¯àÂ^¨ú SQL Profiler¡B¡u®Ä¯àºÊµø¾¹¡v¥H¤Î«ÊÂê¿é¥X¡C¦¹®Éµ{¥²¶·¥]§tÀ³¥Îµ{¦¡®Ä¯à±q¨}¦nÅܦ¨«Ü®tªº®É¶¡¡Cµ²¦X¦¹¶µ¸ê°T¡A±N¥i¨ó§U±z§ó²M·¡¦aÁA¸Ñ­þùتº®Ä¯àÅܺC¡C


¸Ñ͵²ªG

  1. Àˬd«ÊÂê¡C

    ¦pªG sp_who ¿é¥X¤¤ªº blk Äæ¦ì¤£¬O¹s¡A³oªí¥Ü¦b¨t²Î¤Wµo¥Í«ÊÂê¡C¦pªG³B²z§Ç¤¬¬Û«ÊÂê¡A«h¾D¨ì«ÊÂꪺ³B²z§Ç¥i¯à»Ý­n¸ûªøªº°õ¦æ®É¶¡¡C ¦p»Ý¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    224453? (http://support.microsoft.com/kb/224453/ ) INF¡G¤F¸Ñ¨Ã¸Ñ¨M SQL Server 7.0 ¤§Âê©w°ÝÃD
  2. Àˬd SQL Profiler ¿é¥X¡C

    ¦³®Ä¦aÀ˵ø SQL Profiler ¸ê®Æ¦b¸Ñ¨M®Ä¯à°ÝÃD®É·¥¬°¦³¥Î¡C³Ì­«­nªº¬O­nÁA¸Ñ±z¤£»Ý¬d¬Ý©ÒÂ^¨úªº¥þ³¡¤º®e¡C½Ðºë¬D²Ó¿ï¡CSQL Profiler ´£¨Ñªº¥\¯à¡A¥i¨ó§U±z¦³®ÄÀ˵ø¤wÂ^¨úªº¸ê®Æ¡C¦b [¤º®e] ¯Á¤Þ¼ÐÅÒ¤W («ö¤@¤U [ÀÉ®×] ¥\¯àªí¤Wªº [¤º®e])¡ASQL Profiler ¥iÅý±z²¾°£¸ê®ÆÄæ¦ì©Î¨Æ¥ó¡B¨Ì¸ê®ÆÄæ¦ì¤À²Õ (±Æ§Ç) ¥H¤Î®M¥Î¿z¿ï¾¹¡A±q¦Ó­­¨î­nÅã¥Üªº¸ê®Æ¡C±z¥i¥H·j´M¾ã­Ó°lÂܩζȷj´M¯S©wÄæ¦ì¥H´M§ä¯S©w­È («ö¤@¤U [ÀÉ®×] ¥\¯àªí¤Wªº [´M§ä])¡C±z¤]¥i¥H±N SQL Profiler ¸ê®ÆÀx¦s¦Ü SQL Server ¸ê®Æªí (¦b [ÀÉ®×] ¥\¯àªí¤W¡A«ü¦V [¥t¦s·sÀÉ]¡A¦A«ö¤@¤U [°lÂÜ¸ê®Æªí])¡AµM«á¦A°w¹ï¸Ó¸ê®Æªí°õ¦æ SQL ¬d¸ß¡C

    ½Ð°È¥²¥u¦b¥ý«eÀx¦sªº°lÂÜÀɮפW°õ¦æ¿z¿ï¡C¦pªG±z¦b¨Ï¥Î¤¤ªº°lÂܤW°õ¦æ³o¨Ç¨BÆJ¡A¥i¯à·|¥¢¥h¦Û°lÂܱҰʫá©ÒÂ^¨ú¨ìªº¸ê®Æ¡C½Ð¥ý±N¨Ï¥Î¤¤°lÂÜÀx¦s¨ìÀÉ®×©Î¸ê®Æªí («ö¤@¤U [ÀÉ®×] ¥\¯àªí¤Wªº [¥t¦s·sÀÉ])¡AµM«á¦b±zÄ~Äò¤§«e­«·s¶}±Ò¥¦ («ö¤@¤U [ÀÉ®×] ¥\¯àªí¤Wªº [¶}±Ò])¡C·í±z¨Ï¥Î¤wÀx¦sªº°lÂÜÀɮ׮ɡA¿z¿ïªº°Ê§@¨Ã¤£·|¥Ã»·²¾°£¿z¿ï±¼ªº¸ê®Æ¡A¥¦¥u¬O¤£¥[¥HÅã¥Ü¡C±z¥i¥Hµø»Ý­n·s¼W©M²¾°£¨Æ¥ó©M¸ê®ÆÄæ¦ì¡A¨ó§U±z±NµJÂI¶°¤¤¦b·j´M¤W¡C

    Àˬd SQL Profiler °lÂÜÀÉ®×¥H¤ÀªR®Ä¯à°ÝÃDªº²Ä¤@¨B¡A¬O§PÂ_¦b¦øªA¾¹¤W¦³­þ¨Ç¦a¤èµo¥Í¤£¦PÃþ«¬ªº¨Æ¥ó¡C

    ¨Ì¨Æ¥óÃþ§O¡A±N°lÂܤÀ²Õ¡G

    a. ¦b [ÀÉ®×] ¥\¯àªí¤W¡A«ö¤@¤U [¤º®e]¡C

    b. ¦b [¸ê®ÆÄæ¦ì] ¯Á¤Þ¼ÐÅÒ¤W¡A¨Ï¥Î [¦V¤W] «ö¶s²¾°Ê [¸s²Õ] ¼ÐÃD¤Uªº[¨Æ¥óÃþ§O]¡AµM«á¨Ï¥Î [¦V¤U] «ö¶s²¾°£ [¸s²Õ] ¼ÐÃD¤Uªº¨ä¥L¸ê®ÆÄæ¦ì¡C

    c. «ö¤@¤U [½T©w]¡C

    ¨Ì¨Æ¥óÃþ§OÄæ¦ì¤À²Õ¡A¥i¥HÅã¥Ü SQL Server ¤Wµo¥Í­þ¨ÇÃþ«¬ªº¨Æ¥ó¤Î¨äÀW²v¡C·j´M¦¹Äæ¦ì¥H´M§ä¤U¦C¨Æ¥ó¡G

    SP:RECOMPILE

    ¦¹¨Æ¥ó«ü¥X¹w¦sµ{§Ç¤w¦b°õ¦æ´Á¶¡­«·s½sĶ¡C¦pªG¦³¼Æ­Ó­«·s½sĶ¨Æ¥ó¡A«hªí¥Ü SQL Server ±N¸ê·½ªá¶O¦b½sͬd¸ß¦Ó«D°õ¦æ¬d¸ß¡C

    ¦p»Ý¦³Ãö¹w¦sµ{§Ç­«·s½sͤ§ºÃÃø±Æ¸Ñªº¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    243586? (http://support.microsoft.com/kb/243586/ ) Troubleshooting stored procedure recompilation


    ª`·N¨Æ¶µ

    ª`·N¨Æ¶µ°T®§«ü¥X¥Î¤áºÝ¤w¨ú®ø¬Y­Ó¬d¸ß¡C³o³q±`¬O¦]¬°¤U¦C¨â­Ó­ì¦]ªº¨ä¤¤¤§¤@©Ò³y¦¨¡G

    ¨Ï¥ÎªÌ©ú½T¦a¨ú®ø¬d¸ß©Îµ²§ôÀ³¥Îµ{¦¡¡C

    - ©Î -

    ¤w¶W¹L¬d¸ßªº¹O®É®É¶¡¡C

    ¦pªG±z¬Ý¨ìª`·N¨Æ¶µ°T¸¹¡A³o¥i¯àªí¥Ü¬Y¨Ç¬d¸ßªº°õ¦æ³t«×«ÜºC¡C

    ¦p»Ý¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    243589? (http://support.microsoft.com/kb/243589/ ) ¦b SQL Server 7.0 ©Î§ó·sª©¥»¤Wªº°õ¦æ½wºC¬d¸ßºÃÃø±Æ¸Ñ
    ¬°¤F¨ó§UÃѧO¦¬¨ìª`·N¨Æ¶µ°T¸¹ªº¬d¸ß¡A½Ð­×­q°lÂܨϨ䤣¨Ì¥ô¦ó¸ê®ÆÄæ¦ì¨Ó¤À²Õ¡A¨Ã¦b¦¬¨ì¥¦ªº¨t²Î³B²z§ÇÃѧO½X (SPID) ¤W¿z¿ï (¦b [¿z¿ï] ¯Á¤Þ¼ÐÅÒ¤W¡A³]©w SPID = x)¡Cºò¾F¦bª`·N¨Æ¶µ°T¸¹«e­±ªº SQL:StmtStarting¡BSQL:BatchStarting ©Î SP:StmtStarting ¨Æ¥ó¬O¦¬¨ì¹O®É©Î¨ú®øªº¬d¸ß¡C¥u­n¦b [¨Æ¥óÃþ§O] Äæ¦ì´M§ä¡uª`·N¨Æ¶µ¡v¨Æ¥ó («ö¤@¤U [½s¿è] ¥\¯àªí¤Wªº [´M§ä])¡A´N¥i¥H«Ü®e©ö¦a§ä¨ì³oÃþ¬d¸ß¡C

    PREPARE SQL »P EXEC PREPARED SQL

    Prepare SQL ¨Æ¥ó«ü¥X ODBC¡BOLE DB ©Î DB-Library À³¥Îµ{¦¡·Ç³Æ¤F­n¨Ï¥Îªº Transact-SQL ³¯­z¦¡¡CExec Prepared SQL ¨Æ¥ó«ü¥XÀ³¥Îµ{¦¡§Q¥Î²{¦³·Ç³Æ¦nªº³¯­z¦¡¨Ó°õ¦æ©R¥O¡C

    ¤ñ¸û³o¨â­Ó¨Æ¥óµo¥Íªº¦¸¼Æ¡C³Ì²z·Qªº¬O¡AÀ³¥Îµ{¦¡¥u­n·Ç³Æ¤@¦¸ SQL ³¯­z¦¡¡A´N¥i°õ¦æ¥¦¼Æ¦¸¡C³o±N¥i¨Ï Optimizer ¦b¨C¦¸°õ¦æ³¯­z¦¡®É¬Ù¤U½sĶ·s­p¹ºªº¦¨¥»¡C¦]¦¹¡AExec Prepared SQL ¨Æ¥óÀ³¸Ó¤ñ Prepare SQL ¨Æ¥óªº¼Æ¥Ø¤j¦h¤F¡C¦pªG Prepare SQL ¨Æ¥óªº¼Æ¥Ø¤j¬ùµ¥©ó Exec Prepared SQL ¨Æ¥óªº¼Æ¥Ø¡A³o¥i¯à·N¿×µÛÀ³¥Îµ{¦¡¥¼¦n¦n§Q¥Î·Ç³Æ/°õ¦æ¼Ò«¬¡C³Ì¦n¤£­n·Ç³Æ¥u°õ¦æ¤@¦¸ªº³¯­z¦¡¡C¦p»Ý¦³Ãö·Ç³Æ SQL ³¯­z¦¡ªº¸Ô²Ó¸ê°T¡A½Ð°Ñ¾\¡mSQL Server 7.0 ½u¤WÂO®Ñ¡n¤¤ªº¡Õ·Ç³Æ SQL ³¯­z¦¡¡Ö¥DÃD¡C

    ¦pªG Exec Prepared SQL ¨Æ¥ó¨S¦³¶W¹L Prepare SQL ¨Æ¥ó¼Æ¥Øªº¤T¨ì¤­­¿¡A«hÀ³¥Îµ{¦¡¥i¯à¥¼¦³®Ä¦a¨Ï¥Î·Ç³Æ/°õ¦æ¼Ò«¬¡C ¦p»Ý¸Ô²Ó¸ê°T¡A½Ð«ö¤@¤U¤U­±ªº¤å¥ó½s¸¹¡AÀ˵ø¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    243588? (http://support.microsoft.com/kb/243588/ ) ¸ê°T¡G¯S®í¬d¸ß®Ä¯àªººÃÃø±Æ¸Ñ

    ¦b SQL Server 2000 ¤¤¡A±N¥i¬Ù¥h¨C­Ó·Ç³Æ/°õ¦æ¤¤¹L¦hªº©¹ªð¡A©Ò¥H 3-5 ªº¤ñ²v¨Ã¤£ÄY®æ¡CµM¦Ó¡A¥¦¤´µM¬O¨}¦nªº³W«h¡A¥i¹Á¸Õ©M­«½Æ¨Ï¥Î·Ç³Æ¦nªº­p¹º¤@¦¸¥H¤W¡C

    Missing Column Statistics

    ¦¹¨Æ¥ó«ü¥X Optimizer ¥i¥Î¥H²£¥Í¸û¨Î¬d¸ß­p¹º¤§²Î­p¸ê°TµLªk¨Ï¥Î¡C³o«ü¥X¡A¬d¸ß¨Ã«D¦b©Ò¦³¬ÛÃöªº¸ê®Æªí³£¨ã¦³¦³¥Îªº¯Á¤Þ¡C°£¤F¨S¦³¦³¥Îªº¯Á¤Þ¥H¥~¡ASQL Server ¬Æ¦Ü¨S¦³¬ÛÃöÄæ¦ìªº²Î­p¸ê®Æ¥i¥H¬°¬d¸ß­p¹º°µ¥X©ú´¼ªº¨M©w¡Cµ²ªG¬O¡A²£¥Íªº¬d¸ß­p¹º¥i¯à¤£¬O³Ì¨Îªº­p¹º¡C¦pªG±z¬Ý¨ì³o¨Ç¨Æ¥ó¡A½Ð¬d¬Ý¬d¸ß©M²£¥Íªº°õ¦æ­p¹º¡AµM«á°Ñ¾\¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡A¥HÁA¸Ñ§ïµ½¦¹¬d¸ßªº®Ä¯à©Ò»Ý±Ä¨úªº¨BÆJ¡G
    243589? (http://support.microsoft.com/kb/243589/ ) ¦b SQL Server 7.0 ©Î§ó·sª©¥»¤Wªº°õ¦æ½wºC¬d¸ßºÃÃø±Æ¸Ñ

    ·í±zÀ˵ø Missing Column Statistics ¨Æ¥ó®É¡A½Ð¥ý±NµJÂI©ñ¦b»P°õ¦æ®É¶¡¸ûªø¤§¬d¸ß¬ÛÃöªº¨Æ¥ó¤W¡C¦³¨Ç¨Æ¥ó¥i¯à¥Ñ SQL Server ¨Ï¥Î autostats ¦Û°Ê²£¥Í©M¸Ñ¨M¡A¦Ó¤£»Ý­n¨Ï¥ÎªÌ¤¶¤J¡C¦]¦¹¡A³Ì¨Îªºµ¦²¤¬O¥ý±NµJÂI¶°¤¤¦b«ùÄò®É¶¡¸ûªøªº¬d¸ß¤W (¦p¥»¤åµy«á©Ò¥Ü)¡A¨Ãª`·N¬O§_¦³¬ÛÃöªº Missing Column Statistics ¨Æ¥ó¡C

    ¦pªG±z¨S¦³¬Ý¨ì³o¨Ç¨Æ¥óÃþ§Oªº°õ¦æ­ÓÅé¡A¨º»ò¤U¤@¨B´N¬O§PÂ_®É¶¡ªá¨ì­þùØ¥h¤F¡C

    ¨Ì«ùÄò®É¶¡¡A±N°lÂÜ¿é¥X¤À²Õ¡G

    a. ¦b [ÀÉ®×] ¥\¯àªí¤W¡A«ö¤@¤U [¤º®e]¡C

    ¦b [¸ê®ÆÄæ¦ì] ¯Á¤Þ¼ÐÅÒ¤W¡A¨Ï¥Î [¦V¤W] «ö¶s²¾°Ê [¸s²Õ] ¼ÐÃD¤Uªº[«ùÄò®É¶¡]¡AµM«á¨Ï¥Î [¦V¤U] «ö¶s²¾°£ [¸s²Õ] ¼ÐÃD¤Uªº©Ò¦³¨ä¥L¸ê®ÆÄæ¦ì¡C

    c. ¦b [¨Æ¥ó] ¯Á¤Þ¼ÐÅÒ¤W¡A½Ð²¾°£ TSQL ¤Î Stored Procedures ¥H¥~ªº©Ò¦³¸s²Õ¡C

    d. «ö¤@¤U [½T©w]¡C

    ¨Ì·Ó«ùÄò®É¶¡¤À²Õ«á¡A±z¥i¥H»´©ö¦aµo²{­þ¨Ç SQL ³¯­z¦¡¡B§å¦¸©Îµ{§Ç°õ¦æ³ÌºC¡C«D±`­«­nªº¬O¡A¤£¥u­n¬d¬Ýµo¥Í°ÝÃDªº®É¶¡¡AÁÙ­n±o¨ì®Ä¯à¨}¦n®Éªº°ò·Ç¡A¤~¯à¶i¦æ¤ñ¸û¡C±z¥i¥H¿z¿ï¶}©l®É¶¡¥H«K±N°lÂܤÀ¬°¨â­Ó³¡¤À¡A¤À§O¬O®Ä¯à¨}¦nªº³¡¤À¥H¤Î®Ä¯à¤£¨Îªº³¡¤À¡C¦b®Ä¯à¨}¦nªº³¡¤À¤¤¡A´M§ä«ùÄò®É¶¡³Ìªøªº¬d¸ß¡C³o¨Ç³Ì¦³¥i¯à¬O°ÝÃDªº®Ú·½¡C¦pªG¾ã­Ó¨t²Î®Ä¯à³£­°§C¤F¡A§Y¨Ï¬O¨}¦nªº¬d¸ß³£¥i¯àÅã¥Ü¥X¸ûªøªº«ùÄò®É¶¡¡A¦]¬°¥¦­Ì³£¦bµ¥«Ý¨t²Î¸ê·½¡C

    ¦pªG±z¬Ý¨ì¦³¤Ö¼Æªº¬d¸ß¨ã¦³«Üªøªº«ùÄò®É¶¡¡A½Ð°Ñ¾\¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    243589? (http://support.microsoft.com/kb/243589/ ) ¦b SQL Server 7.0 ©Î§ó·sª©¥»¤Wªº°õ¦æ½wºC¬d¸ßºÃÃø±Æ¸Ñ
    ¦pªG±z¬Ý¨ì­Ó§O¬d¸ßªº«ùÄò®É¶¡«Üµu¡A¥B¦³¦n´X­Ó¬d¸ß³£¬O¦p¦¹¡A¨Ã¥B¡u®Ä¯àºÊµø¾¹¡v¿é¥X (©óµy«á»¡©ú) ¤¤ªº SQL Compilations/sec ­p¼Æ¾¹«Ü°ª¡A½Ð°Ñ¾\¡uMicrosoft ª¾ÃÑ®w¡v¤¤ªº¤å¥ó¡G
    243588? (http://support.microsoft.com/kb/243588/ ) ¯S®í¬d¸ß®Ä¯àªººÃÃø±Æ¸Ñ
    Àˬd¨ä¾lªº¸ê®ÆÄæ¦ì¡G

    À˵ø°lÂÜ¸ê®Æ¤¤¨ä¥Lªº¸ê®ÆÄæ¦ì¡AÁÙ¥i¹ï®Ä¯à°ÝÃDªº¥»½è²£¥Í¨ä¥Lªº¨£¸Ñ¡C¤U­±¬O­n¦Ò¼{ªº¤@¨Ç¶µ¥Ø¡G

    ¦pªG CPU ¨Ï¥Î²v«Ü°ª¡A½Ð¨Ì CPU ¤À²Õ¨Ó¬d¬Ý­þ¨Ç¬d¸ß¬O CPU ®É¶¡ªº³Ì¤j¨Ï¥ÎªÌ¡C¦b Text Äæ¦ì¤¤·j´M¡uÂø´ê¡v©Î¡u¦X¨Ö¡v¡A¨Ó§ä¥X¨Ï¥Î³o¨ÇÁpµ²Ãþ«¬¬d¸ß°õ¦æ­p¹º¡C¥¦­Ì¤ñ±_ª¬°j°éÁpµ² (³q±`»Ý­n¤j¶qªº IO) Áٻݭn§ó¦h CPU »P°O¾ÐÅé¡C

    ¦pªGºÏºÐ IO ¬O²~ÀV¡A½Ð¨ÌŪ¨ú©M¼g¤J¤À²Õ¡C½ÐÀ˵ø [À³¥Îµ{¦¡¦WºÙ]¡B[NT ¨Ï¥ÎªÌ¦WºÙ] ¥H¤Î [SQL ¨Ï¥ÎªÌ¦WºÙ] Äæ¦ì¨Ó¨ó§U¹jÂ÷¥X°õ¦æ®É¶¡¸ûªø¤§¬d¸ßªº¨Ó·½¡C

    ¨Ò¥~¨Æ¥óªº¾ã¼Æ¸ê®ÆÄæ¦ì±N«ü¥X¶Ç¦^¥Î¤áºÝªº¥ô¦ó¿ù»~¡C±z¥i¥H·j´M¡mSQL Server 7.0 ½u¤WÂO®Ñ¡n¤¤ªº½s½X¡A¥H´M§ä¿ù»~°T®§ªº¤å¦r¡C

    [³s±µÃѧO½X] Äæ¦ì¦³§U©ó½T©w±z¬O¦b¬d¬Ý¯S©w¥Î¤áºÝªº¬Û¦P¤u§@¶¥¬q¡CSPID ´NµLªk°µ¨ì³oÂI¡A¦]¬°¨Ï¥ÎªÌ¥i¯à¤w¤¤Â_³s½u¡AµM«á¦³·sªº¨Ï¥ÎªÌ³s½u¨Ã¦¬¨ì¬Û¦Pªº SPID¡C

    ±q³o¨ÇÄæ¦ì­l¥ÍªºÀuÂI¥i¯à·|µøª¬ªp¦Ó²§¡F¦ý¬O¦pªG¥»¤å¤§«e©Ò´£¤Î¡B¸û©úÅãªºÄæ¦ìµLªk´£¨Ñ¸Ñµª®É¡A´NÀ³¸ÓÀˬd³o¨ÇÄæ¦ì¡C
  3. Àˬd¡u®Ä¯àºÊµø¾¹¡v¿é¥X¡C

    ¡u®Ä¯àºÊµø¾¹¡v±NÅã¥Ü¾ã­Ó¨t²Îªº²~ÀV¡C¦³¥i¯à SQL Server »PÀ³¥Îµ{¦¡¬O¦p¹w´Á°õ¦æ¡A¦ý¬O¹q¸£«o¹q¤O¤£¨¬¡A¯Ê¤Ö°O¾ÐÅé©Î¨ä¥L¸ê·½¡C©ÎªÌ¬Y¨Ç­p¼Æ¾¹¥i¥H«ü¥XÀ³¥Îµ{¦¡©M SQL Server ¤§°õ¦æ¤è¦¡ªº°ÝÃD¡C¦Ü¤Ö½ÐÀˬd¤U¦C­p¼Æ¾¹¡G

  • ª«¥ó¡GProcess

    ­p¼Æ¾¹¡GProcessor

    °õ¦æ­ÓÅé¡GSQL Server

  • ª«¥ó¡GProcessor

    ­p¼Æ¾¹¡G%Processor Time

    °õ¦æ­ÓÅé¡GÀˬd¨C­Ó³B²z¾¹ªº°õ¦æ­ÓÅé

  • ª«¥ó¡GPhysical Disk

    ­p¼Æ¾¹¡GAvg.Disk Queue Length

    °õ¦æ­ÓÅé¡GÀˬd¨C­Ó¹êÅéºÏºÐªº°õ¦æ­ÓÅé

  • ª«¥ó¡GSQL Server:SQL Statistics

    ­p¼Æ¾¹¡GSQL Compilations/sec
¬d¬Ý¬Y¬q®É¶¡¤º®Ä¯à±q¨}¦nÅܦ¨«Ü®tªºÁͶաG¤°»ò·|¥ý¼W¥[¡H¬O§_·|ôµ²¹q¸£ CPU ©ÎºÏºÐ IO¡H¦¹¸ê°T¥[¤W¥»¤åµy¦­ªº Profiler ¿é¥X¡A±N¥i¨ó§U±zÁY¤p¦³°ÝÃDªº°Ï°ì¡C°ª CPU ¨Ï¥Î²vªº°ÝÃD¥i¯àªí¥Ü¤j¶qªº¹w¦sµ{§Ç­«·s½sĶ¡B¯S®íªº¬d¸ß½sĶ©Î¬O¤j¶q¨Ï¥ÎÂø´ê©M¦X¨ÖÁpµ²¡C±z¥²¶·¨Ì·Ó¥»¤å¥ý«e©Ò°Ñ¦Òªº¤å³¹¡A¨M©w¥X¥¿½Tªº°µªk¡C°ªºÏºÐ¦î¦Cªø«×¥i¯àªí¥Ü»Ý­n§ó¦hªº¨t²Î°O¾ÐÅé©Î§ï¨}ªººÏºÐ¤l¨t²Î¡C


³o½g¤å³¹¤¤ªº¸ê°T¾A¥Î©ó:
  • Microsoft SQL Server 7.0 Standard Edition
ÃöÁä¦r¡G?
kbhowto kbhowtomaster kbinfo kbproductlink KB224587
Microsoft¤Î(©Î)¨ä¨ÑÀ³°Ó¤£´N¥ô¦ó¦b¥»¦øªA¾¹¤Wµoªíªº¤å¦r¸ê®Æ¤Î¨ä¬ÛÃö¹Ïªí¸ê°Tªº«ê·í©Ê§@¥ô¦ó©Ó¿Õ¡C©Ò¦³¤å¦r¸ê®Æ¤Î¨ä¬ÛÃö¹Ïªí§¡¥H¡u²{ª¬¡v¨ÑÀ³¡A¤£­t¥ô¦ó¾á«O³d¥ô¡CMicrosoft¤Î(©Î)¨ä¨ÑÀ³°ÓÂÔ¦¹Án©ú¡A¤£­t¥ô¦ó¹ï»P¦¹¸ê°T¦³Ãö¤§¾á«O³d¥ô¡A¥]¬AÃö©ó¾A°â©Ê¡B¾A¥Î©ó¬Y¤@¯S©w¥Î³~¡BÅv§Q©Î¤£«IÅvªº©ú¥Ü©ÎÀq¥Ü¾á«O³d¥ô¡CMicrosoft¤Î(©Î)¨ä¨ÑÀ³°ÓµL½×¦p¦ó¤£¹ï¦]©Î»P¨Ï¥Î¥»¦øªA¾¹¤W¸ê°T©Î»P¸ê°Tªº¹ê¦æ¦³Ãö¦Ó¤Þ°_ªº«´¬ù¡B¹L¥¢©Î¨ä¥L«IÅv¦æ¬°¤§¶D³^¤¤ªº¯S§Oªº¡B¶¡±µªº¡B­l¥Í©Êªº·l®`©Î¥ô¦ó¦]¨Ï¥Î¦Ó³à¥¢©Ò¾É­Pªº¤§·l®`¡B¸ê®Æ©Î§Q¼í­t¥ô¦ó³d¥ô¡C