ÀûÓö¯Ì¬¹ÜÀíÊÓͼÌá¸ßSQL ServerË÷ÒýЧÂÊ
¡¡¾ÍÈçͬÊý¾Ý¿âDBAÁ˽âµÄÒ»Ñù£¬ºÏÊʵÄË÷ÒýÄܹ»Ìá¸ß²éѯÐÔÄܺÍÓ¦ÓóÌÐò¿É²âÁ¿ÐÔ¡£µ«ÊÇÿ¸ö¸½¼ÓµÄË÷Òý£¬¶¼¸øϵͳÔö¼ÓÁ˶îÍ⿪Ïú£¬ÒòΪËæ×ÅÊý¾Ý´Ó±íºÍÊÓͼÖ⻶ÏÔö¼Ó¡¢Ð޸ĻòÇå³ý£¬SQL ServerÐèҪά»¤ÕâЩË÷Òý¡£
¡¡¡¡Ö®Ç°£¬ÎÒ½éÉÜÁËһ϶¯Ì¬¹ÜÀíÊÓͼ(DMV)¡£ËüÊÇÒ»ÖÖºÜÓÐÓõļà¿ØºÍ½â¾öSQL Server¹ÊÕϵŤ¾ß¡£±¾ÎÄÊÇËüµÄÐøƪ£¬ÎÒ½«¼ÌÐøºÍ´ó¼ÒÒ»Æð̽ÌÖÆäËûµÄһЩÊý¾Ý¿â¹ÜÀíÔ±ÓÃÀ´Äܹ»²â¶¨ÏÖ´æË÷ÒýЧÂʵĶ¯Ì¬¹ÜÀíÊÓͼ(DMV)ºÍ·ÖƬ¼¶±ð¡£´ËÍ⣬ÎÒ»¹ÌṩÁËÓ¦¸ÃÓÃÀ´¼ìË÷Ö¸¶¨µÄSQL Server³ÌÐòIDºÅ(SPID)Ö´ÐеÄ×îºóÓï¾ä¡£
¡¡¡¡DMVÌá¸ßË÷ÒýЧÂÊ
¡¡¡¡¾ÍÈçͬÊý¾Ý¿âDBAÁ˽âµÄÒ»Ñù£¬ºÏÊʵÄË÷ÒýÄܹ»Ìá¸ß²éѯÐÔÄܺÍÓ¦ÓóÌÐò¿É²âÁ¿ÐÔ¡£µ«ÊÇÿ¸ö¸½¼ÓµÄË÷Òý£¬¶¼¸øϵͳÔö¼ÓÁ˶îÍ⿪Ïú£¬ÒòΪËæ×ÅÊý¾Ý´Ó±íºÍÊÓͼÖ⻶ÏÔö¼Ó¡¢Ð޸ĻòÇå³ý£¬SQL ServerÐèҪά»¤ÕâЩË÷Òý¡£ÔÚ°²×°ÐµÄË÷Òý֮ǰ£¬ÄãÐèÒª¼ì²âÊý¾Ý¿â»î¶¯£¬±£Ö¤ÄãÖ»ÓÐһЩÄÜÌá¸ßƽ³£Ö´ÐеIJéѯµÄË÷Òý¡£×¢ÒâSQL Server²¢²»ÄÜ×èÖ¹ÄãÔÚÏàͬµÄÁÐÉϽ¨Á¢¶à¸öË÷Òý¡£ËüÒ²²»ÄÜÌáÐÑÄãÄã¼´½«½¨Á¢µÄ²éѯ²¢²»ÄÜÓÅ»¯²éѯ¡£
¡¡¡¡¸´ÖÆË÷Òý¶Ôϵͳ²¢Ã»Óкô¦¡£Í¬ÑùµØ£¬SQL Server²éѯÓÅ»¯³ÌÐò²»ÄÜÓýâ¾ö²éѯÎÊÌâµÄË÷ÒýÒ²²»ÄܶÔϵͳ´øÀ´Ê²Ã´ºÃ´¦¡£Òò´Ë£¬ÔÚÕâÀïÎÒÃÇÖÁ¹ØÖØÒªµÄÊÂÇé¾ÍÊÇÁ˽âË÷ÒýµÄÀûÓÃЧÂʺÍËüÃǶԲéѯÐÔÄܵÄÓ°Ïì¡£ÐÒÔ˵ÄÊÇ£¬SQL Server 2005ºÍ2008°üÀ¨ÁËsys.dm_db_index_usage_stats¶¯Ì¬¹ÜÀíÊÓͼ£¬ÎÒÃÇ¿ÉÒÔÓÃËüÀ´²âÁ¿Ë÷ÒýµÄЧÂÊ¡£ºÍËùÓÐÆäËûµÄ¶¯Ì¬¹ÜÀíÊÓͼһÑù£¬contents of sys.dm_db_index_usage_statsµÄÄÚÈÝÔÚÄãÖØÆôSQL ServerʵÀýʱ¾Í±»¶ªÆúÁË¡£ËùÒÔÈç¹ûÄãÏëÊÕ¼¯Ë÷ÒýʹÓÃͳ¼ÆÊý¾Ý£¬Äã¾ÍÓ¦¸Ã¶Ô×Ô¶¨Òå±í¶¨ÆÚ¸´ÖÆDMV¡£
¡¡¡¡Ã¿´ÎÓÃË÷Òý½øÐÐɨÃèʱ£¬DMV¾ÍÔö¼ÓÁËÔÚSQL ServerÖÐËÑË÷»ò²éÕÒÁС£ÀýÈçһϵIJéѯ¾ÍÔÚAdventureWorksDWʾÀýÊý¾Ý¿âÖмìË÷Óû§±íºÍÏàÓ¦ÊÓͼʹÓÃͳ¼Æ£º
¡¡¡¡SELECT
¡¡¡¡object_name(a.object_id) AS table_name£¬
¡¡¡¡COALESCE(name£¬ 'object with no clustered index') AS index_name£¬
¡¡¡¡type_desc AS index_type£¬
¡¡¡¡user_seeks£¬
¡¡¡¡user_scans£¬
¡¡¡¡user_lookups£¬
¡¡¡¡user_updates
¡¡¡¡from sys.dm_db_index_usage_stats a INNER JOIN sys.indexes b
¡¡¡¡ON a.index_id = b.index_id
¡¡¡¡AND a.object_id = b.object_id
¡¡¡¡WHERE database_id = DB_ID('AdventureWorksDW')
¡¡¡¡AND a.object_id > 1000
¡¡¡¡ÓÐÓõÄË÷ÒýÔÚuser_seeksÁÐÖеÄ×ÜÊý×î´ó¡£Òª×¢Òâuser_updatesÕâ
Ïà¹ØÎĵµ£º
ÕâÁ½ÌìÓõ½ÁË sql server 2008 £¬Ö÷ÒªÊǽ¨Êý¾Ý¿â£¬½¨±íºÍ´´½¨Óû§¡£
ÔÚ “Windows Éí·ÝÑéÖ¤” Ï£¬´´½¨ÁËÊý¾Ý¿âºÍ Óû§£¬È»ºóÓà SQL Server Éí·ÝÑéÖ¤ µÇ¼ £¬È´Ìáʾ ´íÎó 18452£¬
ÕÒÁËÒ»ÏÂ×ÊÁÏ ¸Ä·¨ ÈçÏ£º
[ÎÞ·¨Á¬½Óµ½·þÎñÆ÷ ·þÎñÆ÷£ºÏûÏ¢18452£¬ ¼¶±ð16£¬×´Ì¬1 [Microsof ......
·½·¨1£º
Ò»¡¢ÕÒÒ»ÕÅSQL server·þÎñÆ÷°æ¹âÅÌ£¬ÔÚ¹âÅÌÉÏÕÒµ½Ä¿Â¼“MSDE”²¢½øÈ룬ÔËÐÐSETUP.EXEÎļþ£¬²¢°´ÕÕ³ÌÐòÒªÇó½øÐа²×°¡£°²×°Íê³ÉÖØÐÂÆô¶¯¼ÆËã»ú¡£
¶þ¡¢ÔËÐйâÅÌÖеģ¬AUTORUN.EXEÎļþ£¬»òÈùâÅÌ×Ô¶¯ÔËÐУ¬´ò¿ª°²×°½çÃæºó£¬
µã»÷“°²×°SQL server 2000×é¼þ£¨C£©”-->“°²×°Êý¾Ý¿â·þÎñÆ ......
MS Sql server Êý¾Ý¿â
1.°´¶¨Òåʱ´æ´¢×´Ì¬·ÖÐÐÏÔʾ¶¨Ò壨sp_helptext´æ´¢¹ý³Ì£©£¬µ÷ÓãºExec sp_helptext '¶ÔÏóÃû'
2.ÒÔ±í¸ñÐÎʽÏÔʾ·µ»ØÏà¹Ø²ÎÊý(sys.objectsÊÓͼ),µ÷Óãºselect * from sys.objects where name='¶ÔÏóÃû'
3.×÷Ϊ½á¹û¼¯ÏÔʾ¶¨Ò壨object_definition£©£¬µ÷Óãºselect object_definition(object_id('¶ÔÏóÃû ......
¡¡Äã¿ÉÄܳ£³£»áÐèÒªÔËÐÐÒ»¸öad hoc²éѯ´ÓÔ¶³ÌOLE DBÊý¾ÝÔ´ÌáÈ¡Êý¾Ý£¬»òÕßÅúÁ¿ÏòSQL Server±íµ¼ÈëÊý¾Ý¡£ÔÚÕâÖÖÇé¿öÏ£¬Äã¿ÉÒÔÔÚT-SQL(Transact-SQL£¬Î¢Èí¶ÔSQLµÄÀ©Õ¹)ÖÐÓÃOPENROWSETº¯Êý¸øÊý¾ÝÔ´´«ÈëÒ»¸öÁ¬½Ó´®ºÍ²éѯÀ´ÌáÈ¡ÐèÒªµÄÊý¾Ý¡£
¡¡¡¡Äã¿ÉÄܳ£³£»áÐèÒªÔËÐÐÒ»¸öad hoc²éѯ´ÓÔ¶³ÌOLE DBÊý¾ÝÔ´ÌáÈ¡Êý¾Ý£¬»òÕßÅúÁ¿ÏòSQL ......
ÔÚ¶ÔSQL ServerϵͳִÐÐÈëÇÖ²âÊÔ»òÕ߸ü¸ß¼¶±ðµÄ°²È«Éó¼Æʱ£¬ÓÐÒ»ÖÖ²âÊÔ²»Ó¦¸Ã±»ºöÂÔ£¬ÄǾÍÊÇSQL ServerÃÜÂë²âÊÔ¡£ÕâÒ»µã¿´ÆðÀ´ÏÔ¶øÒ×¼û£¬µ«ÊǺܶàÈ˶¼»áºöÂÔËü¡£
¡¡¡¡ÃÜÂë²âÊÔ¿ÉÒÔ°ïÖú¼ì²é¶ñÒâÈëÇÖÕß»òÕßÍⲿ¹¥»÷Õߣ¬²âÊÔËûÃÇҪǿÐнøÈëÊý¾Ý¿âÓжàÈÝÒ×£¬¶øÇÒ»¹¿ÉÒÔÈ·±£SQL ServerÓû§¶ÔËûÃǵÄÕ˺ŸºÔð¡£´ËÍ⣬²âÊÔÃÜÂëµÄ© ......