SQL ServerÖ´Ðв¿·ÖÓï¾äµÄÄÚ´æ´ú¼Û
ÖÚËùÖÜÖª£¬SQL ServerÖ´ÐÐSQLÓï¾äµÄÐÔÄÜÅж¨±ê×¼Ö÷ÒªÊÇIO¶ÁÈ¡Êý´óС¡£±¾ÎÄÔÚ²»Î¥·´ÕâÒ»ÔÔòÇé¿öÏ£¬Í¬Ê±À´·ÖÎöһϲ¿·ÖSQLÓï¾äÖ´ÐÐʱ£¬SQL ServerÄÚ´æµÄ±ä»¯Çé¿ö¡£
Ê×ÏȼòÊöÒ»ÏÂSQL ServerÄÚ´æÕ¼ÓõÄÌØµã¡£SQL ServerËùÕ¼ÓõÄÄÚ´æ³ý³ÌÐò£¨¼´SQL
ServerÒýÇæ£©Í⣬Ö÷Òª°üÀ¨»º´æµÄÊý¾Ý£¨Buffer£©ºÍÖ´Ðмƻ®£¨Cache£©¡£SQL
ServerÒÔ8KB´óСµÄҳΪµ¥Î»´æ´¢Êý¾Ý¡£Õâ¸öºÍSQL ServerÊý¾ÝÔÚ´ÅÅÌÉϵĴ洢ҳ´óСÏàͬ¡£µ±SQL ServerÖ´ÐÐSQL
Óï¾äʱ£¬Èç¹ûÐèÒªµÄÊý¾ÝÒѾÔÚÆäÄÚ´æÖУ¬ÔòÖ±½Ó´ÓÄڴ滺³åÇø¶ÁÈ¡²¢½øÐбØÒªµÄÔËËãÈ»ºóÊä³öÖ´Ðнá¹û¡£Èç¹ûÊý¾Ý»¹Î´ÔÚÄÚ´æÖУ¬ÔòÊ×ÏȽ«Êý¾Ý´Ó´ÅÅÌÉ϶ÁÈëÄÚ´æ
BufferÖС£¶øÎÒÃÇͨ³£ÆÀ¼ÛSQLÐÔÄÜÖ¸±êÖеÄIOÂß¼¶ÁÈ¡Êý¶ÔÓ¦µÄÕýÊÇ´ÓÄڴ滺³åÇø¶ÁÈ¡µÄÒ³Êý£¬¶øIOÎïÀí¶ÁÈ¡ÊýÔò¶ÔÓ¦Êý¾Ý´Ó´ÅÅ̶ÁÈ¡µÄÒ³Êý¡£
×¢£ºÒÔϵÄÊÔÑéÔÚ¶àÈ˹²ÏíµÄ¿ª·¢²âÊÔ·þÎñÆ÷ÉÏÒ²¿ÉÒÔ½øÐУ¬ÒòΪʵ¼ÊÉÏ¿ÉÒԷֱ𿴵½Ä³¸ö±íËùÕ¼ÓõÄÄÚ´æÇé¿ö¡£µ«ÎªÁË·½±ã£¬±ÊÕßÔÚ×ö´ËÊÔÑéʱ£¬ÔÚÒ»¸öµ¥¶ÀµÄ¡¢È·ÈÏûÓÐÆäËü²¢·¢ÈÎÎñµÄÊý¾Ý¿âÉϽøÐУ¬Òò´ËËù¿´µ½µÄÄÚ´æ±ä»¯ÕýÊÇÿһ´ÎËùÖ´ÐеÄSQLÓï¾äÒýÆðµÄ¡£
ÎÒÃÇÊ×ÏÈÀ´¿´Ò»¸ö¼òµ¥µÄʵÀý¡£´´½¨ÏÂ±í£º
Create Table P_User
( UserMobileStatus int NOT NULL,
MobileNo int NOT NULL,
LastOpTime DateTime Not NULL
)
È»ºóΪ¸Ã±í²åÈëÒ»¶¨µÄÊý¾Ý£º
Declare @i int
Set @i=28000
WHILE @i<29000
BEGIN
Insert Into P_User
Select @i % 2,@i,GetUTCDate()
Set @i=@i+1
END
È»ºóÎÒÃÇÔÚ²éѯ·ÖÎöÆ÷ÖÐÊ×ÏÈÖ´ÐÐ:
Set Statistics IO ON
²¢°´ÏÂCtrl+MÒÔÏÔʾʵ¼ÊµÄÖ´Ðмƻ®¡£
´Ëʱ£¬¿ÉÒÔ¿ªÊ¼½øÐÐÎÒÃǵÄÊÔÑéÁË¡£ÎªÁË׼ȷ¹Û²ìÿһ´ÎSQLÓï¾ä±ä»¯Çé¿ö£¬ÔÚÖ´ÐеÚÒ»ÌõSQLÓï¾äÒÔǰ£¬ÎÒÃÇÊ×ÏÈÇå¿ÕSQL ServerËùÕ¼ÓõÄÊý¾ÝÄڴ棺
CHECKPOINT
GO
DBCC DROPCLEANBUFFERS
Õ⽫Çå¿ÕSQL ServerËùÕ¼ÓõÄÊý¾Ý»º³åÇø£¨´ËÓï¾äÔÚÉú²ú·þÎñÆ÷ÉÏÉ÷Óã¬ÒòΪ½«µ¼ÖÂÒ»¶Îʱ¼äÄÚºóÐøµÄSQLÓï¾äÖ´ÐбäÂý£©¡£
²âÊÔ1£ºÔÚûÓÐË÷ÒýµÄ±íÉÏÖ´ÐÐSQLÓï¾ä
1.1 Ö´ÐÐÈ«±íѡȡ»òÕßµÍÑ¡ÔñÐÔѡȡ
Select * from P_User
´ÓSQLÖ´Ðмƻ®¿ÉÒÔ¿´µ½£¬ÓÉÓÚ´Ëʱ±íÖÐûÓÐÈκÎË÷Òý£¬Òò´Ë½«²úÉúTable Scan¡£¶øIOͳ¼Æ½á¹ûÈçÏ£º
(1000 row(s) affected)
±í'P_User'¡£É¨Ãè¼ÆÊý1£¬Âß¼¶ÁÈ¡4 ´Î£¬ÎïÀí¶ÁÈ¡4 ´Î£¬Ô¤¶Á0 ´Î£¬lob Âß¼¶ÁÈ¡0
Ïà¹ØÎĵµ£º
1¡¢°´Ê±¼äÅÅÐò
select * from tbl_lms_loginhistory order by loginhistory_logintime desc
2¡¢
ÔÚÒ»¸öÊý¾Ý¿âÖÐÊÇÏÂÁеÄÑù×Ó
³µ´Î Éí·ÝÖ¤ºÅ
27 1
27 2
45 1
25 1
45 2
ÏÖÔÚÎÒÏë »ñµÃµÄÊÇ
³µ´Î ³Ë×ø´ÎÊý
25 1
27 3
45 2
ÇëÎÊ£¬ÎÒµÄSQLÓï¾ä¸ÃÔõôд£¿
select ³µ´ ......
ÒªÏë³É¹¦·ÃÎÊ SQL Server Êý¾Ý¿âÖеÄÊý¾Ý£¬ÎÒÃÇÐèÒªÁ½¸ö·½ÃæµÄÊÚȨ£ºÒ»¡¢»ñµÃ×¼ÐíÁ¬½Ó SQL Server ·þÎñÆ÷µÄȨÀû£»¶þ¡¢»ñµÃ·ÃÎÊÌØ¶¨Êý¾Ý¿âÖÐÊý¾ÝµÄȨÀû£¨select, update, delete, create table ...£©¡£¼ÙÉ裬ÎÒÃÇ×¼±¸½¨Á¢Ò»¸ö dba Êý¾Ý¿âÕÊ»§£¬ÓÃÀ´¹ÜÀíÊý¾Ý¿â mydb¡£
1. Ê×ÏÈÔÚ SQL Server ·þÎñÆ÷¼¶±ð£¬´´½¨µÇ½ÕÊ»§£¨creat ......
Sql Server ÖÐÒ»¸ö·Ç³£Ç¿´óµÄÈÕÆÚ¸ñʽ»¯º¯Êý
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GE ......
--¼ì²âCPUѹÁ¦µÄÒ»¸ö·½·¨ÊǼÆËãÔËÐÐ״̬ÏµĹ¤×÷½ø³ÌÊýÁ¿£¬
--ͨ¹ýÖ´ÐÐÈçϵÄDMV²éѯ¿ÉÒԵõ½Õâ¸öÐÅÏ¢
SELECT COUNT(*) AS workers_waiting_for_cpu,t2.scheduler_id
from sys.dm_os_workers AS t1, sys.dm_os_schedulers AS t2
WHERE t1.state='RUNNABLE' AND
t1.scheduler_address = t2.scheduler_address A ......