Перейти к содержимому

архивирование

Хранимая процедура для архивирования журнала при достижении @danger_value.

Архивирования журнала при достижении @danger_value. Идея в том что лог будет усекаться при достижении 7 гб. Это сделано так как настроен лог шипинг.

eclare @tran_log_space_usage table( 
        database_name sysname
,       log_size_mb float
,       log_space_used float
,       status int
); 
declare @log_space_used float	-- Доля (в процентах) файла журнала, в настоящее время заполненная
declare @danger_value int		-- Значение в Мб, при достижение которого архивируется журнал
declare @job_start_name sysname -- Название задания в Агенте MSSQL 

set @danger_value = 7000
set @job_start_name = N'SSAS_LSBackup_ax_molniya'

insert into @tran_log_space_usage 
exec('DBCC SQLPERF ( LOGSPACE )') ; 

set @log_space_used = (
select (log_space_used * log_size_mb / 100)  from 
Читать далее

Хранимая процедура для архивирования журнала при достижении @danger_value.

declare @tran_log_space_usage table( 
        database_name sysname
,       log_size_mb float
,       log_space_used float
,       status int
); 
declare @log_space_used float	-- Доля (в процентах) файла журнала, в настоящее время заполненная
declare @danger_value int		--  Значение в Мб, при достижение которого архивируется журнал
declare @job_start_name sysname
 
set @danger_value = 7000
set @job_start_name = N'SSAS_LSBackup_ax_molniya'
 
insert into @tran_log_space_usage 
exec('DBCC SQLPERF ( LOGSPACE )') ; 
 
set @log_space_used = (
select (log_space_used * log_size_mb / 100)  from @tran_log_space_usage
where database_name = DB_NAME() 
)
 
if (@log_space_used > @danger_value)
begin
EXEC msdb.dbo.sp_start_job @job_start_name;
end