{"id":280504,"date":"2016-11-06T12:55:04","date_gmt":"2016-11-06T09:55:04","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=280504"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=280504","title":{"rendered":"\u0410\u0432\u0442\u043e\u0441\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e \u0444\u0430\u0439\u043b\u0430\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u0430\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0432 MS SQL Server"},"content":{"rendered":"<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>  <\/p>\n<p>\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u0436\u043d\u043e \u0437\u043d\u0430\u0442\u044c \u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0435. \u0418 \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0432 \u0440\u0443\u0447\u043d\u0443\u044e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435, \u043b\u0443\u0447\u0448\u0435 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>  <\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u0430\u0445 \u0438 \u043e \u0444\u0430\u0439\u043b\u0430\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <a name=\"habracut\"><\/a>  <\/p>\n<h3>\u0420\u0435\u0448\u0435\u043d\u0438\u0435<\/h3>\n<p>  <\/p>\n<p>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c:<br \/>  1) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438:<br \/>  1.1) \u0434\u043b\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE TABLE [srv].[DBFile](     [DBFile_GUID] [uniqueidentifier] ROWGUIDCOL  NOT NULL,     [Server] [nvarchar](255) NOT NULL,     [Name] [nvarchar](255) NOT NULL,     [Drive] [nvarchar](10) NOT NULL,     [Physical_Name] [nvarchar](255) NOT NULL,     [Ext] [nvarchar](255) NOT NULL,     [Growth] [int] NOT NULL,     [IsPercentGrowth] [int] NOT NULL,     [DB_ID] [int] NOT NULL,     [DB_Name] [nvarchar](255) NOT NULL,     [SizeMb] [float] NOT NULL,     [DiffSizeMb] [float] NOT NULL,     [InsertUTCDate] [datetime] NOT NULL,     [UpdateUTCdate] [datetime] NOT NULL,     [File_ID] [int] NOT NULL,  CONSTRAINT [PK_DBFile] PRIMARY KEY CLUSTERED  (     [DBFile_GUID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]  GO  ALTER TABLE [srv].[DBFile] ADD  CONSTRAINT [DF_DBFile_DBFile_GUID]  DEFAULT (newid()) FOR [DBFile_GUID] GO  ALTER TABLE [srv].[DBFile] ADD  CONSTRAINT [DF_DBFile_InsertUTCDate]  DEFAULT (getutcdate()) FOR [InsertUTCDate] GO  ALTER TABLE [srv].[DBFile] ADD  CONSTRAINT [DF_DBFile_UpdateUTCdate]  DEFAULT (getutcdate()) FOR [UpdateUTCdate] GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>1.2) \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u043e\u0432:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE TABLE [srv].[Drivers](     [Driver_GUID] [uniqueidentifier] ROWGUIDCOL  NOT NULL,     [Server] [nvarchar](255) NOT NULL,     [Name] [nvarchar](8) NOT NULL,     [TotalSpace] [float] NOT NULL,     [FreeSpace] [float] NOT NULL,     [DiffFreeSpace] [float] NOT NULL,     [InsertUTCDate] [datetime] NOT NULL,     [UpdateUTCdate] [datetime] NOT NULL,  CONSTRAINT [PK_Drivers] PRIMARY KEY CLUSTERED  (     [Driver_GUID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY]  GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_Driver_GUID]  DEFAULT (newid()) FOR [Driver_GUID] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_Server]  DEFAULT (@@servername) FOR [Server] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_TotalSpace]  DEFAULT ((0)) FOR [TotalSpace] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_FreeSpace]  DEFAULT ((0)) FOR [FreeSpace] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_DiffFreeSpace]  DEFAULT ((0)) FOR [DiffFreeSpace] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_InsertUTCDate]  DEFAULT (getutcdate()) FOR [InsertUTCDate] GO  ALTER TABLE [srv].[Drivers] ADD  CONSTRAINT [DF_Drivers_UpdateUTCdate]  DEFAULT (getutcdate()) FOR [UpdateUTCdate] GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u0434\u0438\u0441\u043a\u0430\u043c\u0438 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<br \/>  \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u2014 \u043c\u0435\u0442\u043a\u0430 \u0442\u043e\u043c\u0430 (MyServer \u2014 C:).<\/p>\n<p>  <\/p>\n<p>2) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u0444\u0430\u0439\u043b\u0430\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE view [inf].[ServerDBFileInfo] as SELECT  @@Servername AS Server ,         File_id ,--\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0444\u0430\u0439\u043b\u0430 \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445. \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 file_id \u0432\u0441\u0435\u0433\u0434\u0430 \u0440\u0430\u0432\u043d\u043e 1         Type_desc ,--\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0442\u0438\u043f\u0430 \u0444\u0430\u0439\u043b\u0430         Name as [FileName] ,--\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0432 \u0431\u0430\u0437\u0435 \u0434\u0430\u043d\u043d\u044b\u0445         LEFT(Physical_Name, 1) AS Drive ,--\u041c\u0435\u0442\u043a\u0430 \u0442\u043e\u043c\u0430, \u0433\u0434\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u0439\u043b \u0411\u0414         Physical_Name ,--\u041f\u043e\u043b\u043d\u043e\u0435 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435         RIGHT(physical_name, 3) AS Ext ,--\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430         Size as CountPage, --\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0444\u0430\u0439\u043b\u0430 \u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u043f\u043e 8 \u041a\u0411         round((cast(Size*8 as float))\/1024,3) as SizeMb, --\u0420\u0430\u0437\u043c\u0435\u0440 \u0444\u0430\u0439\u043b\u0430 \u0432 \u041c\u0411         Growth, --\u041f\u0440\u0438\u0440\u043e\u0441\u0442         is_percent_growth, --\u041f\u0440\u0438\u0437\u043d\u0430\u043a \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u0440\u0430\u0449\u0435\u043d\u0438\u044f         database_id,         DB_Name(database_id) as [DB_Name] FROM    sys.master_files--database_files GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0417\u0434\u0435\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 <a href=\"https:\/\/technet.microsoft.com\/ru-ru\/library\/ms186782(v=sql.110).aspx\">sys.master_files<\/a><\/p>\n<p>  <\/p>\n<p>3) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043c\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u0434\u0438\u0441\u043a\u0443:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  create procedure [srv].[sp_DriveSpace]      @DrivePath varchar(1024) --\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e (\u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043c\u0435\u0442\u043a\u0443 \u0442\u043e\u043c\u0430 'C:')   , @TotalSpace float output --\u0432\u0441\u0435\u0433\u043e \u0435\u043c\u043a\u043e\u0441\u0442\u044c \u0432 \u0431\u0430\u0439\u0442\u0430\u0445   , @FreeSpace float output  --\u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0432 \u0431\u0430\u0439\u0442\u0430\u0445 as begin    DECLARE @fso int         , @Drive int         , @DriveName varchar(255)         , @Folder int         , @Drives int         , @source varchar(255)         , @desc varchar(255)         , @ret int         , @Object int   -- \u0421\u043e\u0437\u0434\u0430\u0435\u043c \u043e\u0431\u0435\u043a\u0442 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b   exec @ret = sp_OACreate 'Scripting.FileSystemObject', @fso output   set @Object = @fso   if @ret != 0     goto ErrorInfo    -- \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u0430\u043f\u043a\u0443 \u043f\u043e \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u043f\u0443\u0442\u0438   exec @ret = sp_OAmethod @fso, 'GetFolder', @Folder output, @DrivePath     set @Object = @fso   if @ret != 0     goto ErrorInfo    -- \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e   exec @ret = sp_OAmethod @Folder, 'Drive', @Drive output   set @Object = @Folder   if @ret != 0     goto ErrorInfo    -- \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043f\u043e\u043b\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430   exec @ret = sp_OAGetProperty @Drive, 'TotalSize', @TotalSpace output   set @Object = @Drive   if @ret != 0     goto ErrorInfo    -- \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u043d\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435   exec @ret = sp_OAGetProperty @Drive, 'AvailableSpace', @FreeSpace output   set @Object = @Drive   if @ret != 0     goto ErrorInfo    DestroyObjects:     if @Folder is not null       exec sp_OADestroy @Folder     if @Drive is not null       exec sp_OADestroy @Drive     if @fso is not null       exec sp_OADestroy @fso      return (@ret)    ErrorInfo:     exec sp_OAGetErrorInfo @Object, @source output, @desc output     print 'Source error: ' + isnull( @source, 'n\/a' ) + char(13) + 'Description: ' + isnull( @desc, 'n\/a' )     goto DestroyObjects; end GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0445\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0431\u044b\u043b\u0430 \u0432\u0437\u044f\u0442\u0430 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/www.t-sql.ru\/post\/disk_size.aspx\">\u041e\u0431\u044a\u0451\u043c \u0434\u0438\u0441\u043a\u043e\u0432 \u043d\u0430 T-SQL<\/a><\/p>\n<p>  <\/p>\n<p>4) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043c\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438:<br \/>  4.1) \u0434\u043b\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE PROCEDURE [srv].[MergeDBFileInfo] AS BEGIN     SET NOCOUNT ON;     SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;      ;merge [srv].[DBFile] as f     using [inf].[ServerDBFileInfo] as ff     on f.File_ID=ff.File_ID and f.DB_ID=ff.[database_id] and f.[Server]=ff.[Server]     when matched then         update set UpdateUTcDate    = getUTCDate()                  ,[Name]            = ff.[FileName]                           ,[Drive]           = ff.[Drive]                              ,[Physical_Name]   = ff.[Physical_Name]                      ,[Ext]             = ff.[Ext]                                ,[Growth]          = ff.[Growth]                             ,[IsPercentGrowth] = ff.[is_percent_growth]                      ,[SizeMb]          = ff.[SizeMb]                             ,[DiffSizeMb]      = round(ff.[SizeMb]-f.[SizeMb],3)        when not matched by target then         insert (                 [Server]                 ,[Name]                 ,[Drive]                 ,[Physical_Name]                 ,[Ext]                 ,[Growth]                 ,[IsPercentGrowth]                 ,[DB_ID]                 ,[DB_Name]                 ,[SizeMb]                 ,[File_ID]                 ,[DiffSizeMb]                )         values (                 ff.[Server]                 ,ff.[FileName]                 ,ff.[Drive]                 ,ff.[Physical_Name]                 ,ff.[Ext]                 ,ff.[Growth]                 ,ff.[is_percent_growth]                 ,ff.[database_id]                 ,ff.[DB_Name]                 ,ff.[SizeMb]                 ,ff.[File_id]                 ,0                )     when not matched by source and f.[Server]=@@SERVERNAME then delete; END  GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>4.2) \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u043e\u0432:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE PROCEDURE [srv].[MergeDriverInfo] AS BEGIN     SET NOCOUNT ON;     SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;      declare @Drivers table (                             [Server] nvarchar(255),                             Name nvarchar(8),                             TotalSpace float,                             FreeSpace float,                             DiffFreeSpace float NULL                            );     insert into @Drivers   (                             [Server],                             Name,                             TotalSpace,                             FreeSpace                            )     select                  [Server],                             Name,                             TotalSpace,                             FreeSpace     from                srv.Drivers     where [Server]=@@SERVERNAME;      declare @TotalSpace float;     declare @FreeSpace float;     declare @DrivePath nvarchar(8);      while(exists(select top(1) 1 from @Drivers where DiffFreeSpace is null))     begin         select top(1)         @DrivePath=Name         from @Drivers         where DiffFreeSpace is null;          exec srv.sp_DriveSpace @DrivePath = @DrivePath                          , @TotalSpace = @TotalSpace out                          , @FreeSpace = @FreeSpace out;          update @Drivers         set TotalSpace=@TotalSpace            ,FreeSpace=@FreeSpace            ,DiffFreeSpace=case when FreeSpace&gt;0 then round(FreeSpace-@FreeSpace,3) else 0 end         where Name=@DrivePath;     end      ;merge [srv].[Drivers] as d     using @Drivers as dd     on d.Name=dd.Name and d.[Server]=dd.[Server]     when matched then         update set UpdateUTcDate = getUTCDate()                  ,[TotalSpace]   = dd.[TotalSpace]                     ,[FreeSpace]    = dd.[FreeSpace]                      ,[DiffFreeSpace]= dd.[DiffFreeSpace]; END  GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>5) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0432\u044b\u0432\u043e\u0434\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438:<br \/>  5.1) \u0434\u043b\u044f \u0444\u0430\u0439\u043b\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  create view [srv].[vDBFiles] as SELECT [DBFile_GUID]       ,[Server]       ,[Name]       ,[Drive]       ,[Physical_Name]       ,[Ext]       ,[Growth]       ,[IsPercentGrowth]       ,[DB_ID]       ,[File_ID]       ,[DB_Name]       ,[SizeMb]       ,[DiffSizeMb]       ,round([SizeMb]\/1024,3) as [SizeGb]       ,round([DiffSizeMb]\/1024,3) as [DiffSizeGb]       ,round([SizeMb]\/1024\/1024,3) as [SizeTb]       ,round([DiffSizeMb]\/1024\/1024,3) as [DiffSizeTb]       ,round([DiffSizeMb]\/([SizeMb]\/100), 3) as [DiffSizePercent]       ,[InsertUTCDate]       ,[UpdateUTCdate]   FROM [srv].[DBFile];  GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>5.2) \u0434\u043b\u044f \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u043e\u0432:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  create view [srv].[vDrivers] as select       [Driver_GUID]       ,[Server]       ,[Name]       ,[TotalSpace] as [TotalSpaceByte]       ,[FreeSpace] as [FreeSpaceByte]       ,[DiffFreeSpace] as [DiffFreeSpaceByte]       ,round([TotalSpace]\/1024, 3) as [TotalSpaceKb]       ,round([FreeSpace]\/1024, 3) as [FreeSpaceKb]       ,round([DiffFreeSpace]\/1024, 3) as [DiffFreeSpaceKb]       ,round([TotalSpace]\/1024\/1024, 3) as [TotalSpaceMb]       ,round([FreeSpace]\/1024\/1024, 3) as [FreeSpaceMb]       ,round([DiffFreeSpace]\/1024\/1024, 3) as [DiffFreeSpaceMb]       ,round([TotalSpace]\/1024\/1024\/1024, 3) as [TotalSpaceGb]       ,round([FreeSpace]\/1024\/1024\/1024, 3) as [FreeSpaceGb]       ,round([DiffFreeSpace]\/1024\/1024\/1024, 3) as [DiffFreeSpaceGb]       ,round([TotalSpace]\/1024\/1024\/1024\/1024, 3) as [TotalSpaceTb]       ,round([FreeSpace]\/1024\/1024\/1024\/1024, 3) as [FreeSpaceTb]       ,round([DiffFreeSpace]\/1024\/1024\/1024\/1024, 3) as [DiffFreeSpaceTb]       ,round([FreeSpace]\/([TotalSpace]\/100), 3) as [FreeSpacePercent]       ,round([DiffFreeSpace]\/([TotalSpace]\/100), 3) as [DiffFreeSpacePercent]       ,[InsertUTCDate]       ,[UpdateUTCdate]   FROM [srv].[Drivers] GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>6) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0432 \u0410\u0433\u0435\u043d\u0442\u0435 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0440\u0430\u0437 \u0432 \u0441\u0443\u0442\u043a\u0438:<\/p>\n<p>  <\/p>\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425]; GO  exec srv.MergeDBFileInfo; exec srv.MergeDriverInfo;<\/code><\/pre>\n<p>  <\/p>\n<p>7) \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u044e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 (\u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u0434\u0430\u043d\u0438\u0435 \u0430\u0433\u0435\u043d\u0442\u0430 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u043c \u0438\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c)<\/p>\n<p>  <\/p>\n<p>8) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0445\u0440\u0430\u043d\u0438\u043c\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u0447\u0435\u0442\u0430 \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c. \u0420\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u043f\u043e \u0440\u0430\u0437\u043d\u043e\u043c\u0443. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u043b\u0438\u0448\u044c \u043f\u0440\u0438\u043c\u0435\u0440:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"sql\">USE [\u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425] GO  SET ANSI_NULLS ON GO  SET QUOTED_IDENTIFIER ON GO  CREATE PROCEDURE [srv].[GetHTMLTableShortInfoDrivers]     @body nvarchar(max) OUTPUT AS BEGIN     SET NOCOUNT ON;     SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;      declare @tbl table (                         Driver_GUID             uniqueidentifier                         ,[Name]                 nvarchar(255)                         ,[TotalSpaceGb]         float                         ,[FreeSpaceGb]          float                         ,[DiffFreeSpaceMb]      float                         ,[FreeSpacePercent]     float                         ,[DiffFreeSpacePercent] float                         ,UpdateUTCDate          datetime                         ,[Server]               nvarchar(255)                         ,ID                     int identity(1,1)                        );      declare     @Driver_GUID            uniqueidentifier     ,@Name                  nvarchar(255)     ,@TotalSpaceGb          float     ,@FreeSpaceGb           float     ,@DiffFreeSpaceMb       float     ,@FreeSpacePercent      float     ,@DiffFreeSpacePercent  float     ,@UpdateUTCDate         datetime     ,@Server                nvarchar(255)     ,@ID                    int;      insert into @tbl(                         Driver_GUID                                      ,[Name]                                          ,[TotalSpaceGb]                                  ,[FreeSpaceGb]                                   ,[DiffFreeSpaceMb]                               ,[FreeSpacePercent]                              ,[DiffFreeSpacePercent]                          ,UpdateUTCDate                                   ,[Server]                                    )             select      Driver_GUID                                      ,[Name]                                          ,[TotalSpaceGb]                                  ,[FreeSpaceGb]                                   ,[DiffFreeSpaceMb]                               ,[FreeSpacePercent]                              ,[DiffFreeSpacePercent]                          ,UpdateUTCDate                                   ,[Server]             from    srv.vDrivers             where [DiffFreeSpacePercent]&lt;=-5             or [FreeSpacePercent]&lt;=15             order by [Server] asc, [Name] asc;      if(exists(select top(1) 1 from @tbl))     begin         set @body='\u0412 \u0445\u043e\u0434\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0431\u044b\u043b\u0438 \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u0438 \u0438\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438, \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043b\u0438\u0431\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430 \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043c\u0435\u043d\u044c\u0448\u0435 15%, \u043b\u0438\u0431\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u044b\u0448\u0435 5% \u0437\u0430 \u0434\u0435\u043d\u044c:&lt;br&gt;&lt;br&gt;'+'&lt;TABLE BORDER=5&gt;';          set @body=@body+'&lt;TR&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u2116 \u043f\/\u043f';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0413\u0423\u0418\u0414';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0421\u0415\u0420\u0412\u0415\u0420';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0422\u041e\u041c';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0415\u041c\u041a\u041e\u0421\u0422\u042c, \u0413\u0411.';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0421\u0412\u041e\u0411\u041e\u0414\u041d\u041e, \u0413\u0411.';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0418\u0417\u041c\u0415\u041d\u0415\u041d\u0418\u0415 \u0421\u0412\u041e\u0411\u041e\u0414\u041d\u041e\u0413\u041e \u041c\u0415\u0421\u0422\u0410, \u041c\u0411.';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0421\u0412\u041e\u0411\u041e\u0414\u041d\u041e, %';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'\u0418\u0417\u041c\u0415\u041d\u0415\u041d\u0418\u0415 \u0421\u0412\u041e\u0411\u041e\u0414\u041d\u041e\u0413\u041e \u041c\u0415\u0421\u0422\u0410, %';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;TD&gt;';         set @body=@body+'UTC \u0412\u0420\u0415\u041c\u042f \u041e\u0411\u041d\u0410\u0420\u0423\u0416\u0415\u041d\u0418\u042f';         set @body=@body+'&lt;\/TD&gt;';          set @body=@body+'&lt;\/TR&gt;';          while((select top 1 1 from @tbl)&gt;0)         begin             set @body=@body+'&lt;TR&gt;';              select top 1             @Driver_GUID            = Driver_GUID                        ,@Name                  = Name                               ,@TotalSpaceGb          = TotalSpaceGb                       ,@FreeSpaceGb           = FreeSpaceGb                        ,@DiffFreeSpaceMb       = DiffFreeSpaceMb                    ,@FreeSpacePercent      = FreeSpacePercent                   ,@DiffFreeSpacePercent  = DiffFreeSpacePercent               ,@UpdateUTCDate         = UpdateUTCDate                      ,@Server                = [Server]                           ,@ID                    = [ID]                               from @tbl;              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@ID as nvarchar(max));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@Driver_GUID as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+coalesce(@Server,'');             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+coalesce(@Name,'');             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@TotalSpaceGb as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@FreeSpaceGb as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@DiffFreeSpaceMb as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@FreeSpacePercent as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+cast(@DiffFreeSpacePercent as nvarchar(255));             set @body=@body+'&lt;\/TD&gt;';              set @body=@body+'&lt;TD&gt;';             set @body=@body+rep.GetDateFormat(@UpdateUTCDate, default)+' '+rep.GetTimeFormat(@UpdateUTCDate, default);             set @body=@body+'&lt;\/TD&gt;';              delete from @tbl             where ID=@ID;              set @body=@body+'&lt;\/TR&gt;';         end          set @body=@body+'&lt;\/TABLE&gt;';          set @body=@body+'&lt;br&gt;&lt;br&gt;\u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044e SRV.srv.vDrivers&lt;br&gt;&lt;br&gt;\u0414\u043b\u044f \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u0435\u0441\u044c \u043a \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044e \u0418\u041c\u042f_\u0411\u0410\u0417\u042b_\u0414\u0410\u041d\u041d\u042b\u0425.srv.vDBFiles';     end END  GO<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0414\u0430\u043d\u043d\u0430\u044f \u0445\u0440\u0430\u043d\u0438\u043c\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 HTML-\u043e\u0442\u0447\u0435\u0442 \u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u0430\u0445, \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043b\u0438\u0431\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043c\u0430 \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043c\u0435\u043d\u044c\u0448\u0435 15%, \u043b\u0438\u0431\u043e \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u044b\u0448\u0435 5% \u0437\u0430 \u0434\u0435\u043d\u044c. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0441\u0432\u0438\u0434\u0435\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443\u0435\u0442 \u043e \u0441\u0442\u0440\u0430\u043d\u043e\u0439 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u043f\u0438\u0441\u0435\u0439 (\u043a\u0442\u043e-\u0442\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0447\u0430\u0441\u0442\u043e \u0438 \u043c\u043d\u043e\u0433\u043e \u043f\u0438\u0448\u0435\u0442 \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u0434\u0438\u0441\u043a). \u041f\u0435\u0440\u0432\u043e\u0435 \u0436\u0435 \u0441\u0432\u0438\u0434\u0435\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443\u0435\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f-\u043b\u0438\u0431\u043e \u0434\u0438\u0441\u043a \u043f\u043e\u0440\u0430 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0442\u044c, \u043b\u0438\u0431\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043d\u0435\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0435 \u0437\u0430\u043d\u044f\u0442\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0434\u0438\u0441\u043a\u0435, \u043b\u0438\u0431\u043e \u043f\u043e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0438 \u0441\u0436\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u043b\u043e\u0433\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u0442\u0430\u0431\u043b\u0438\u0446.<\/p>\n<p>  <\/p>\n<h3>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<\/h3>\n<p>  <\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u044b\u043b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0434\u0438\u0441\u043a\u0430\u0445 \u0438 \u0444\u0430\u0439\u043b\u0430\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0437\u043d\u0430\u0442\u044c \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043d\u0430 \u043a\u0430\u043a\u043e\u043c \u0434\u0438\u0441\u043a\u0435 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0432\u0441\u0435 \u043c\u0435\u043d\u044c\u0448\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u0430\u043a\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u0442\u0443\u0442. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u0435\u0434\u043e\u0442\u0432\u0440\u0430\u0442\u0438\u0442\u044c \u0441\u043b\u0443\u0447\u0430\u0439, \u043a\u043e\u0433\u0434\u0430 \u043c\u0435\u0441\u0442\u0430 \u043d\u0430 \u0434\u0438\u0441\u043a\u0435 \u043d\u0435 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u044b\u044f\u0432\u0438\u0442\u044c \u043f\u0440\u0438\u0447\u0438\u043d\u0443 \u0442\u043e\u0433\u043e, \u043f\u043e\u0447\u0435\u043c\u0443 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043c\u0435\u0441\u0442\u0430 \u043d\u0430 \u0434\u0438\u0441\u043a\u0435 \u0441\u0432\u043e\u0438\u043c\u0438 \u0437\u0430\u043f\u0438\u0441\u044f\u043c\u0438 \u0438 \u0442. \u0434.<\/p>\n<p>  <\/p>\n<h3>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438:<\/h3>\n<p>  <\/p>\n<p>\u00bb <a href=\"https:\/\/technet.microsoft.com\/ru-ru\/library\/ms186782(v=sql.110).aspx\">sys.master_files<\/a><br \/>  \u00bb <a href=\"http:\/\/www.t-sql.ru\/post\/disk_size.aspx\">\u041e\u0431\u044a\u0451\u043c \u0434\u0438\u0441\u043a\u043e\u0432 \u043d\u0430 T-SQL<\/a><\/p>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habrahabr.ru\/post\/314522\/\"> https:\/\/habrahabr.ru\/post\/314522\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>  <\/p>\n<p>\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0443 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432\u0430\u0436\u043d\u043e \u0437\u043d\u0430\u0442\u044c \u043a\u043e\u0433\u0434\u0430 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0441\u044f \u043c\u0435\u0441\u0442\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u0435. \u0418 \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0432 \u0440\u0443\u0447\u043d\u0443\u044e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435, \u043b\u0443\u0447\u0448\u0435 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c.<\/p>\n<p>  <\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0433\u043e \u0441\u0431\u043e\u0440\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0438\u0441\u043a\u0430\u0445 \u0438 \u043e \u0444\u0430\u0439\u043b\u0430\u0445 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-280504","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/280504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=280504"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/280504\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=280504"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=280504"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=280504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}