рдбреАрдлрд╝реНрд░реЗрдЧреНрдореЗрдВрдЯ рдЗрдВрдбреЗрдХреНрд╕ рдЖрдБрдХрдбрд╝реЛрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде MS SQL 2008 R2

рдПрдХ рдирдП рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдбреАрдмреАрдП рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЗрд╕рдХреЗ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд▓рд┐рдП рдпреЛрдЬрдирд╛рдПрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдЕрдХреНрд╕рд░, рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯ рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рд╢рд╛рдорд┐рд▓ рд╣реЛрддрд╛ рд╣реИред рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ рдЬрдм рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рд░рд╡рд┐рд╡рд╛рд░ рд╕реЗ рд╕реЛрдорд╡рд╛рд░ рддрдХ рд░рд╛рдд рдореЗрдВ рди рдХреЗрд╡рд▓ рдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдмрд▓реНрдХрд┐ рдпрд╣ рднреА рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдЧреБрдЬрд░рддрд╛ рд╣реИ, рдХрд┐рддрдирд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдХрд┐рд╕ рдЗрдВрдбреЗрдХреНрд╕ рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдХрд┐рд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡реЗ рдбреАрдлрд╝реНрд░реЗрдЧреНрдореЗрдВрдЯреЗрд╢рди рдХреЗ рдмрд╛рдж рдмрдиреЗ рд░рд╣реЗред

рдЗрд╕ рддрд░рд╣ рдХреЗ рдЖрдБрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдПрдХ рдЫреЛрдЯреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреА рдЬреЛ рдХрд╛рдо рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рддреА рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рднреА рджреЗрддреА рд╣реИ
рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред

рд▓реЗрдХрд┐рди рдЪрд▓реЛ рдПрдХ рд╕рд░рд▓ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╣реБрдд рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рддреЗ рд╣реИрдВ (рдореИрдВрдиреЗ рдПрдХ рдЕрд▓рдЧ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рдпрд╛, рдЬрд╣рд╛рдВ рдореИрдВ рдЙрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд░рдЦрддрд╛ рд╣реВрдВ рдЬреЛ рдореИрдВ рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рд╕рд░реНрд╡рд┐рд╕ рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ):
рд╕реНрддрдВрднрдЯрд╛рдЗрдкрдЯрд┐рдкреНрдкрдгреА
proc_idрдкреВрд░реНрдгрд╛рдВрдХрдкрд╣рдЪрд╛рди рдХреЗ рд▓рд┐рдП рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдЕрдиреБрдХреНрд░рдо рд╕рдВрдЦреНрдпрд╛
start_timedatetimeALTER INDEX рдХреНрд╡реЗрд░реА рд╢реБрд░реВ рдХрд░рдирд╛
end_timedatetimeALTER INDEX рдЕрдиреБрд░реЛрдз рдкреВрд░рд╛ рдХрд░рдирд╛
database_idSMALLINTрдбреАрдмреА рдЖрдИрдбреА
object_idрдЗрдВрдЯрдЯреЗрдмрд▓ рдЖрдИ.рдбреА.
TABLE_NAMEрд╡рд░реНрдЪрд░ (50)рдЯреЗрдмрд▓ рдХрд╛ рдирд╛рдо
index_idрдЗрдВрдЯрд╕реВрдЪрдХрд╛рдВрдХ рдЖрдИрдбреА
INDEX_NAMEрд╡рд░реНрдЪрд░ (50)рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдирд╛рдо
avg_frag_percent_beforeрдирд╛рд╡ALTER INDEX рд╕реЗ рдкрд╣рд▓реЗ рд╕реВрдЪрдХрд╛рдВрдХ рд╡рд┐рдЦрдВрдбрди рдкреНрд░рддрд┐рд╢рдд
fragment_count_beforebigintрдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рд╕реЗ рдкрд╣рд▓реЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
pages_count_beforebigintрдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рд╕реЗ рдкрд╣рд▓реЗ рд╕реВрдЪрдХрд╛рдВрдХ рдкреГрд╖реНрдареЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
fill_factortinyintрд╕реВрдЪрдХрд╛рдВрдХ рдкреГрд╖реНрда рднрд░рдг рд╕реНрддрд░
partition_numрдкреВрд░реНрдгрд╛рдВрдХрдЕрдиреБрднрд╛рдЧ рд╕рдВрдЦреНрдпрд╛
avg_frag_percent_afterрдирд╛рд╡рд╕реВрдЪрдХрд╛рдВрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рдж рд╕реВрдЪрдХрд╛рдВрдХ рд╡рд┐рдЦрдВрдбрди рдкреНрд░рддрд┐рд╢рдд
fragment_count_afterbigintрдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рдХреЗ рдмрд╛рдж рдЯреБрдХрдбрд╝реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
pages_count_afterbigintрдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рдХреЗ рдмрд╛рдж рд╕реВрдЪрдХрд╛рдВрдХ рдкреГрд╖реНрдареЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
рдХрд╛рд░реНрдпрд╡рд░реНрдЪрд░ (10)рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЧрдИ

рд╕рдВрдкреВрд░реНрдг рдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдбреЗрдЯрд╛ рд▓реЗрдЧреА, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕реЗ рднрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
DECLARE @currentProcID INT тАУ-    тАУ-  ,     SELECT @currentProcID = ISNULL(MAX(proc_id), 0) + 1 FROM dba_tasks.dbo.index_defrag_statistic --       INSERT INTO dba_tasks.dbo.index_defrag_statistic ( proc_id, database_id, [object_id], table_name, index_id, index_name, avg_frag_percent_before, fragment_count_before, pages_count_before, fill_factor, partition_num) SELECT @currentProcID, dm.database_id, dm.[object_id], tbl.name, dm.index_id, idx.name, dm.avg_fragmentation_in_percent, dm.fragment_count, dm.page_count, idx.fill_factor, dm.partition_number FROM sys.dm_db_index_physical_stats(DB_ID(), null, null, null, null) dm INNER JOIN sys.tables tbl ON dm.object_id = tbl.object_id INNER JOIN sys.indexes idx ON dm.object_id = idx.object_id AND dm.index_id = idx.index_id WHERE page_count > 8 AND avg_fragmentation_in_percent > 10 AND dm.index_id > 0 

рдирдореВрдирд╛рдХрд░рдг рдХреА рд╕реНрдерд┐рддрд┐:
page_count> 8 - рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдХрдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреГрд╖реНрдареЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реБрдЖ, рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╕рдордп рдмрд╣реБрдд рдореВрд▓реНрдпрд╡рд╛рди рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЕрдЧрд░ рдЖрдзрд╛рд░ рдШрдбрд╝реА рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рдЙрдЪреНрдЪ рднрд╛рд░ рдХреЗ рдЕрдзреАрди рд╣реИред (рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд╛рдж рдЕрдирдлрд┐рд▓реНрдЯрд░реНрдб рдмрд╛рд░ рдХреЛ 8 рдкреЗрдЬ рддрдХ рдмрдврд╝рд╛ рджрд┐рдпрд╛ рдЧрдпрд╛)
avg_fragmentation_in_percent> 10 - рдпрд╣ рднреА рдПрдХ рдмрд╣реБрдд рд╣реА рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рдЖрдВрдХрдбрд╝рд╛ рд╣реИ, рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рднреА рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╡реЗ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рдЫреВрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рдирд╣реАрдВ рджреЗрддреЗ рд╣реИрдВ рдпрджрд┐ рдЗрд╕рдХрд╛ рд╡рд┐рдЦрдВрдбрди 10 рдкреНрд░рддрд┐рд╢рдд рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рд╣реИ, рдЬреЛ рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рдпрджрд┐ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдЕрд▓рдЧ рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдмрджрд▓рддреЗ рд╣реИрдВред
dm.index_id> 0 - 0 рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИ

рддрд╛рд▓рд┐рдХрд╛ рднрд░ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХрд┐рди рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреА рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЪрд▓реЛ рд╕реМрджрд╛ рдХрд░рддреЗ рд╣реИрдВ:
 --   DECLARE @partitioncount INT --  DECLARE @action VARCHAR(10) --,       DECLARE @start_time DATETIME --   ALTER INDEX DECLARE @end_time DATETIME --   ALTER INDEX --   DECLARE @object_id INT DECLARE @index_id INT DECLARE @tableName VARCHAR(250) DECLARE @indexName VARCHAR(250) DECLARE @defrag FLOAT DECLARE @partition_num INT DECLARE @fill_factor INT -- ,    ,   MAX,      ,      ,    . DECLARE @sql NVARCHAR(MAX) --   DECLARE defragCur CURSOR FOR SELECT [object_id], index_id, table_name, index_name, avg_frag_percent_before, fill_factor, partition_num FROM dba_tasks.dbo.index_defrag_statistic WHERE proc_id = @currentProcID ORDER BY [object_id], index_id DESC --    OPEN defragCur FETCH NEXT FROM defragCur INTO @object_id, @index_id, @tableName, @indexName, @defrag, @fill_factor, @partition_num WHILE @@FETCH_STATUS=0 BEGIN SET @sql = N'ALTER INDEX ' + @indexName + ' ON ' + @tableName SELECT @partitioncount = count (*) FROM sys.partitions WHERE object_id = @object_id AND index_id = @index_id; --  ,       , ,       ,           IF (@fill_factor != 80) BEGIN @sql = @sql + N' REBUILD WITH (FILLFACTOR = 80)' SET @action = 'rebuild80' END ELSE BEGIN --  ,    MS IF (@defrag > 30) --   30%,  REBUILD BEGIN SET @sql = @sql + N' REBUILD' SET @action = 'rebuild' END ELSE --   REORGINIZE BEGIN SET @sql = @sql + N' REORGANIZE' SET @action = 'reorginize' END END --    IF @partitioncount > 1 SET @sql = @sql + N' PARTITION=' + CAST(@partition_num AS nvarchar(5)) print @sql --   --   SET @start_time = GETDATE() EXEC sp_executesql @sql --   SET @end_time = GETDATE() --    UPDATE dba_tasks.dbo.index_defrag_statistic SET start_time = @start_time, end_time = @end_time, [action] = @action WHERE proc_id = @currentProcID AND [object_id] = @object_id AND index_id = @index_id FETCH NEXT FROM defragCur INTO @object_id, @index_id, @tableName, @indexName, @defrag, @fill_factor, @partition_num END CLOSE defragCur DEALLOCATE defragCur 


рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдо рдбреАрдлрд╝реНрд░реИрдЧреНрдореЗрдиреНрдЯреЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рдж рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ:
 UPDATE dba SET dba.avg_frag_percent_after = dm.avg_fragmentation_in_percent, dba.fragment_count_after = dm.fragment_count, dba.pages_count_after = dm.page_count FROM sys.dm_db_index_physical_stats(DB_ID(), null, null, null, null) dm INNER JOIN dba_tasks.dbo.index_defrag_statistic dba ON dm.[object_id] = dba.[object_id] AND dm.index_id = dba.index_id WHERE dba.proc_id = @currentProcID AND dm.index_id > 0 


рдРрд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдмрд╣реБрдд рд╕рд╛рд░реА рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдФрд░ рдЧрд┐рди рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рднреА рд╕реВрдЪрдХрд╛рдВрдХреЛрдВ рдХреА рд╕реЗрд╡рд╛ рд╕рдордп рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЕрд▓рдЧ рд╕реЗред рд╕рдордЭреЗрдВ рдХрд┐ рдпрд╣ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдЖрдХрд╛рд░ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреА рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ рджреЗрдЦреЗрдВред рдХрдИ рдмрд╛рд░ рдРрд╕реА рдЬрд╛рдирдХрд╛рд░реА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреБрдЫ рдЕрдиреБрдХреНрд░рдорд┐рдд рдЕрдзрд┐рдХ рдФрд░ рддреЗрдЬреА рд╕реЗ рдЦрдВрдбрд┐рдд рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдиреНрд╣реЗрдВ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╕реЗрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдкреНрд░рд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЕрдкрдиреЗ рд▓рд┐рдП рддрдп рдХрд░реЗрдВред рдореЗрд░реЗ рд▓рд┐рдП, рдРрд╕реА рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рд╕реЗрд╡рд╛ рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдмрджрд▓ рджреЗрддрд╛ рд╣реВрдВ, рдЕрдЧрд░ рд╕реНрдерд┐рддрд┐ рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдореЗрд░реЗ рдард┐рдХрд╛рдиреЗ рдШрдбрд╝реА рдХреЗ рдЖрд╕рдкрд╛рд╕ рднрд╛рд░реА рднрд╛рд░ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рд▓рдЧрд╛рддрд╛рд░ рд╕рднреА рдЕрдиреБрдХреНрд░рдорд┐рдд рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдФрд░ 1-2 рдШрдВрдЯреЗ рдХреЗ рд╕рд░реНрд╡рд░ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдпрджрд┐ рдЖрдкрдХрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рднреА рдШрдбрд╝реА рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдРрд╕реА рдЪреАрдЬреЗрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдВрд╕рд╛рдзрди рдЧрд╡рд░реНрдирд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдпрд╣ рднреА рдиреЛрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рд╡рд┐рд╕реНрддреГрдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдкреБрд░рд╛рдиреА рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рд┐рд╕реНрдЯрдо рдЕрднреНрдпрд╛рд╡реЗрджрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА msdn рдореЗрдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ:

sys.sysindexes
sys.tables
sys.dm_db_index_physical_stats

Source: https://habr.com/ru/post/In155933/


All Articles