ÃæÏò OLTP Ó¦ÓóÌÐòµÄÖØÒª SQL Server 2005 ÐÔÄÜÎÊÌâ
ÃæÏò OLTP Ó¦ÓóÌÐòµÄÖØÒª SQL Server 2005 ÐÔÄÜÎÊÌâ
OLTP ¹¤×÷¸ººÉµÄÌØÕ÷ÊÇ´æÔÚ´óÁ¿ÏàËÆµÄСÐÍÊÂÎñ¡£
ÔÚ¼ì²éÊý¾Ý¿âÉè¼Æ¡¢×ÊÔ´ÀûÓúÍϵͳÐÔÄܵÄÖØÒªÐÔʱ£¬ÇëÎñ±ØÀμÇÕâÐ©ÌØÕ÷¡£ÏÂÃæ¼òÊöÃæÏò OLTP
Ó¦ÓóÌÐòµÄÖØÒªÐÔÄÜÆ¿¾±»òȱÏÝ¡£
Êý¾Ý
¿âÉè¼ÆÎÊÌâ
³£Óòéѯ´æÔÚ¹ý¶àµÄ±íÁª½Ó¡£ÔÚ OLTP Ó¦ÓóÌÐòÖйý¶àʹÓÃÁª½Ó½«µ¼Ö²éѯÔËÐлºÂý£¬
ÀË·Ñϵͳ×ÊÔ´¡£Í¨³££¬Ó¦¸ÃÖØÐÂÉè¼ÆÊý¾Ý¿â£¬±ÜÃâÐèÒª 5 ¸ö»ò 5 ¸öÒÔÉϱíÁª½ÓµÄƵ·±²Ù×÷¡£
Ƶ·±¸üУ¨°üÀ¨²åÈë¡¢¸üкÍɾ³ý£©µÄ±íÖдæÔÚ¹ý¶àµÄË÷Òýµ¼Ö¶îÍâµÄË÷Òýά»¤¿ªÏú¡£Í¨³££¬OLTP Êý¾Ý¿âµÄÉè¼ÆÖÐÓ¦¸Ã½«Ë÷ÒýÊý±£³ÖΪÕý³£ÔËתǰÌáϵÄ×îСֵ£¬ÕâͬÑùÊÇÓÉÓÚ´óÁ¿ÏàËÆÊÂÎñÓëË÷Òýά»¤³É±¾¹²Í¬×÷ÓõĽá¹û¡£
ÓÉÓÚȱʧË÷Òý£¬µ¼Ö´óÁ¿ IO£¬Èç±íºÍ·¶Î§µÄɨÃè¡£¸ù¾Ý¶¨Ò壬OLTP ÊÂÎñ²»Ó¦ÒªÇó´óÁ¿ IO£¬²¢ÇÒÓ¦¸Ã½ÓÊܼì²é¡£
δʹÓõÄË÷ÒýÔÚ²åÈë¡¢¸üкÍɾ³ýÖе¼ÖÂË÷Òýά»¤³É±¾£¬¶ø¶ÔÈκÎÓû§¶¼Ã»ÓÐÓá£
Ó¦¸ÃÇå³ýδʹÓõÄË÷Òý¡£ÈκÎʹÓùýµÄË÷Òý£¨Í¨¹ýÑ¡Ôñ¡¢¸üлòɾ³ý²Ù×÷£©¶¼³öÏÖÔÚ sys.dm_db_index_usage_stats ÖС£Òò´Ë£¬ÈκÎÒѶ¨Ò嵫²»°üÀ¨ÔÚ´Ë DMV ÖеÄ
Ë÷Òý×ÔÉÏ´ÎÖØÐÂÆô¶¯ SQL Server ÒÔÀ´ÉÐδʹÓùý¡£
CPU
Æ¿
¾±
Ðźŵȴýʱ¼ä³¬¹ý×ܵȴýʱ¼äµÄ 25%¡£Çë²ÎÔÄ sys.dm_os_wait_stats ÖеÄÐźŵȴýʱ¼äºÍ×ܵȴýʱ¼ä¡£Ðźŵȴýʱ¼äÓÃÓÚ¶ÈÁ¿¿ÉÔËÐжÓÁеȴý CPU ʱËù»¨·ÑµÄʱ¼ä¡£Ðźŵȴýʱ¼äÖµºÜ¸ß˵Ã÷³öÏÖ CPU Æ¿¾±¡£
¼Æ
»®ÖØÓÃСÓÚ 90%¡£²éѯ¼Æ»®ÓÃÓÚÖ´ÐÐij¸ö²éѯ¡£OLTP ¹¤×÷¸ººÉ½¨ÒéʹÓüƻ®ÖØÓã¬ÒòÎªÖØÐ´´½¨ÏàͬµÄ¼Æ»®£¨ÓÃÓÚÏàËÆ»òÏàͬµÄÊÂÎñ£©ÊÇ¶Ô CPU
×ÊÔ´µÄÀË·Ñ¡£±È½Ï SQL Server SQL Statistics£ºbatch requests/sec Óë SQL
compilations/sec¡£°´ÕÕÈçϹ«Ê½¼ÆËã¼Æ»®ÖØÓ㺼ƻ®ÖØÓà =£¨Åú´¦ÀíÇëÇóÊý — SQL
±àÒëÊý£©/Åú´¦ÀíÇëÇóÊý¡£¼Æ»®ÖØÓùæÔòµÄÌØÀý£ºSQL 2005 SP2
Öв»»º´æ£¨¶ø²»ÊÇÖØÓã©Áã³É±¾¼Æ»®¡£Ê¹ÓÃÁã³É±¾¼Æ»®µÄÓ¦ÓóÌÐò¾ßÓнϵ͵ļƻ®ÖØÓ㬵«Õâ²»ÊÇÐÔÄÜÎÊÌâ¡£
²¢ÐеȴýÀàÐÍ cxpacket ³¬¹ý×ܵȴýʱ¼äµÄ 10%¡£²¢ÐÐÎþÉü CPU ×ÊÔ´»»È¡Ö´ÐÐËÙ¶È¡£Èç¹ûÓдóÁ¿ OLTP£¬²¢Ðвéѯͨ³£»á½µµÍ OLTP ÍÌÍÂÁ¿£¬ËùÒÔÓ¦¾¡Á¿±ÜÃâ¡£Óйصȴýͳ¼ÆÐÅÏ¢£¬
Çë²ÎÔÄ sys.dm_os_wait_stats¡£
ÄÚ´æÆ¿
¾±
Average
Page Life Expectancy ³ÖÐø½ÏµÍ¡£Çë²ÎÔÄ Perfmon ¶ÔÏó SQL Server Buffer Manager ÖеÄ
Average Page Life Expectancy ¼ÆÊýÆ÷£¨±íʾһҳÔÚ»º´æÖÐÍ£ÁôµÄƽ¾ù
ÃëÊý£©¡
Ïà¹ØÎĵµ£º
Ëæ×ÅB/SģʽӦÓÿª·¢µÄ·¢Õ¹£¬Ê¹ÓÃÕâÖÖģʽ±àдӦÓóÌÐòµÄ³ÌÐòÔ±Ò²Ô½À´Ô½¶à¡£µ«ÊÇÓÉÓÚ³ÌÐòÔ±µÄˮƽ¼°¾ÑéÒ²²Î²î²»Æë£¬Ï൱´óÒ»²¿·Ö³ÌÐòÔ±ÔÚ±àд´úÂëµÄʱºò£¬Ã»ÓжÔÓû§ÊäÈëÊý¾ÝµÄºÏ·¨ÐÔ½øÐÐÅжϣ¬Ê¹Ó¦ÓóÌÐò´æÔÚ°²È«Òþ»¼¡£Óû§¿ÉÒÔÌá½»Ò»¶ÎÊý¾Ý¿â²éѯ´úÂ룬¸ù
¾Ý³ÌÐò·µ»ØµÄ½á¹û£¬»ñµÃijЩËûÏëµÃÖªµÄÊý¾Ý£¬Õâ¾ÍÊÇËùνµÄSQ ......
ÈÕÖ¾ÎļþÂú¶øÔì³ÉSQLÊý¾Ý¿âÎÞ·¨Ð´ÈëÎļþʱ£¬¿ÉÓÃÁ½ÖÖ·½·¨£º
¡¡¡¡Ò»ÖÖ·½·¨£ºÇå¿ÕÈÕÖ¾¡£
¡¡¡¡1£®´ò¿ª²éѯ·ÖÎöÆ÷£¬ÊäÈëÃüÁî
¡¡¡¡DUMP TRANSACTION Êý¾Ý¿âÃû WITH NO_LOG
¡¡¡¡2.ÔÙ´ò¿ªÆóÒµ¹ÜÀíÆ÷--ÓÒ¼üÄãҪѹËõµÄÊý¾Ý¿â--ËùÓÐÈÎÎñ--ÊÕËõÊý¾Ý¿â--ÊÕËõÎļþ--Ñ¡ÔñÈÕÖ¾Îļþ--ÔÚÊÕËõ·½Ê½ÀïÑ¡ÔñÊÕËõÖÁXXM,ÕâÀï»á¸ø³öÒ»¸öÔÊÐíÊÕËõµ ......
1. µ±Ç°ÏµÍ³ÈÕÆÚ¡¢Ê±¼ä
select getdate()
2. dateadd ÔÚÏòÖ¸¶¨ÈÕÆÚ¼ÓÉÏÒ»¶Îʱ¼äµÄ»ù´¡ÉÏ£¬·µ»ØÐ嵀 datetime Öµ
ÀýÈ磺ÏòÈÕÆÚ¼ÓÉÏ2Ìì
select dateadd(day,2,'2004-10-15') --·µ»Ø£º2004-10-17 00:00:00.000
3. datediff ·µ»Ø¿çÁ½¸öÖ¸¶¨ÈÕÆÚµÄÈÕÆÚºÍʱ¼ä ......
Ò»¡¢Êʺ϶ÁÕß¶ÔÏó
Êý¾Ý¿â¿ª·¢³ÌÐòÔ±£¬Êý¾Ý¿âµÄÊý¾ÝÁ¿ºÜ¶à£¬Éæ¼°µ½¶ÔSP(´æ´¢¹ý³Ì)µÄÓÅ»¯µÄÏîÄ¿¿ª·¢ÈËÔ±£¬¶ÔÊý¾Ý¿âÓÐŨºñÐËȤµÄÈË¡£
¶þ¡¢½éÉÜ
ÔÚÊý¾Ý¿âµÄ¿ª·¢¹ý³ÌÖУ¬¾³£»áÓöµ½¸´ÔÓµÄÒµÎñÂß¼ºÍ¶ÔÊý¾Ý¿âµÄ²Ù×÷£¬Õâ¸öʱºò¾Í»áÓÃSPÀ´·â×°Êý¾Ý¿â²Ù×÷¡£Èç¹ûÏîÄ¿µÄSP½Ï¶à£¬ÊéдÓÖûÓÐÒ»¶¨µÄ¹æ
·¶£¬½«»áÓ°ÏìÒÔºóµÄϵͳά»¤À§ÄÑ ......