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
Ïà¹ØÎĵµ£º
BACKUP DATABASENAME WITH NO_LOGÒ»Ö±ÊÇÎҽضÏÊÂÎñÈÕÖ¾£¬Ñ¹Ëõ¿Õ¼äµÄÀûÆ÷£¬½ñÌìÔÙSQL2008ÉÏÒ»Óã¬È´²»ÁéÁË
ÏûÏ¢ 3032£¬¼¶±ð 16£¬×´Ì¬ 2£¬µÚ 2 ÐÐ
´ËÓï¾ä²»Ö§³ÖÒ»¸ö»ò¶à¸öÑ¡Ïî(no_log)¡£Çë²éÔÄÎĵµÒÔÁ˽âËùÖ§³ÖµÄÑ¡Ïî¡£
²é¿´Áª»ú°ïÖúÊֲᣬÀïÃæÈ·ÊµÃ»ÓÐwith no_logµÄ¿ÉÑ¡ÏîÁË£¬ÄÇÔõô°ì°¡£¬50MµÄÊý¾ÝÎļþ£¬2GµÄÈÕÖ¾Îļþ£¬È ......
SQLÓï¾äʵÏÖ£¬SQL Server 2000 ¼°ACCESS¸´ÖƾɱíOldTableµÄ½á¹¹£¬»ò½á¹¹¼°ÄÚÈݵ½ÐµıíNewTable
Á½¸ö¶¼ÊÔ¹ýÁË£¬ÏÂÃæµÄ´úÂëÔÚÕâÁ½¸öÊý¾Ý¿âÖУ¨SQL Server 2000 ¼°ACCESS£©¶¼ÊÇ¿ÉÒÔͨ¹ýµÄ¡£
--¸´ÖƱí½á¹¹ÎªÐµıí
select * into NewTable
from OldTable where 1=2
--¸´ÖƱí½á¹¹¼°ÄÚÈݵ½Ðµıí
select * into newtable
......
ÔÚ´æ´¢¹ý³ÌÖÐʹÓÃÊÂÎñ£¬ÒÔÏÂΪģ°å£º
CREATE PROCEDURE testPro
AS
/**//* ------- ÊÂÎñ¿ªÊ¼---------- */
BEGIN TRANSACTION tran_test
/**//* -------- ±£´æÊÂÎñ----------*/
SAVE TRANSACTION tran_test
/**//* -------- Êý¾Ý²Ù×÷---------*/
INSERT [table1] ( [content] ) VALUES ( '43332' )
/**//*---- ......
½ñÌì°²×°sql server2000.ϵͳÊÇXP professional¡£Ê×ÏÈÏȰ²×°sqlserverÆóÒµ°æµÄ£¬Ö»Äܰ²×°¿Í»§¶Ë£»È»ºó°²×°sqlserver¿ª·¢°æ£¬¾Í ±»¹ÒÆð£¬Òò´ËÍøÉÏËÑÂÞÏà¹ØÐÅÏ¢¡£
1¡¢ Èô³öÏÖ¹ÒÆðºó£¬¿É°´ÏÂÁвÙ×÷½øÐУ¬±¾ÈËÒѾÊÔÓùý£º
ÔÚÔËÐд°¿ÚÊäÈëregedit£¬´ò¿ª×¢²á±í±à¼Æ÷£¬ÔÚHKEY_LOCA ......
DBCC memorystatus
--²éѯ»º³åÇø³ØÏûºÄµÄÄÚ´æ×ÜÁ¿°üÀ¨AWE
SELECT
SUM(multi_pages_kb+virtual_memory_committed_kb+shared_memory_committed_kb+
awe_allocated_kb) AS [Used by BPool, kb]
from sys.dm_os_memory_clerks WHERE type='MEMORYCLERK_SQLBUFFERPOOL'
&nb ......