1、數據庫壓縮日志
?
GO ALTER DATABASE website SET RECOVERY SIMPLE;--設置簡單恢復模式 GO DBCC SHRINKFILE (website_Log, 1); GO ALTER DATABASE website SET RECOVERY FULL;--恢復為原模式 GO
2、重建所有索引
exec sp_msforeachtable ' DBCC DBREINDEX( '' ? '' ) '
? ?重建索引
DECLARE @name varchar ( 100 ) DECLARE authors_cursor CURSOR FOR Select [ name ] from sysobjects where xtype = ' u ' order by id OPEN authors_cursor FETCH NEXT FROM authors_cursor INTO @name WHILE @@FETCH_STATUS = 0 BEGIN DBCC DBREINDEX ( @name , '' , 90 ) PRINT ' 當前重建索引表: ' + @name FETCH NEXT FROM authors_cursor INTO @name END deallocate authors_cursor
3、定時作業
?
-- 每月執行的作業 exec p_createjob @jobname = ' mm ' , @sql = ' select * from syscolumns ' , @freqtype = ' month ' -- 每周執行的作業 exec p_createjob @jobname = ' ww ' , @sql = ' select * from syscolumns ' , @freqtype = ' week ' -- 每日執行的作業 exec p_createjob @jobname = ' a ' , @sql = ' select * from syscolumns ' -- 每日執行的作業,每天隔4小時重復的作業 exec p_createjob @jobname = ' b ' , @sql = ' select * from syscolumns ' , @fsinterval = 4 -- */ if exists ( select * from dbo.sysobjects where id = object_id (N ' [dbo].[p_createjob] ' ) and OBJECTPROPERTY (id, N ' IsProcedure ' ) = 1 ) drop procedure [ dbo ] . [ p_createjob ] GO create proc p_createjob @jobname varchar ( 100 ), -- 作業名稱 @sql varchar ( 8000 ), -- 要執行的命令 @dbname sysname = '' , -- 默認為當前的數據庫名 @freqtype varchar ( 6 ) = ' day ' , -- 時間周期,month 月,week 周,day 日 @fsinterval int = 1 , -- 相對于每日的重復次數 @time int = 170000 -- 開始執行時間,對于重復執行的作業,將從0點到23:59分 as if isnull ( @dbname , '' ) = '' set @dbname = db_name () -- 創建作業 exec msdb..sp_add_job @job_name = @jobname -- 創建作業步驟 exec msdb..sp_add_jobstep @job_name = @jobname , @step_name = ' 數據處理 ' , @subsystem = ' TSQL ' , @database_name = @dbname , @command = @sql , @retry_attempts = 5 , -- 重試次數 @retry_interval = 5 -- 重試間隔 -- 創建調度 declare @ftype int , @fstype int , @ffactor int select @ftype = case @freqtype when ' day ' then 4 when ' week ' then 8 when ' month ' then 16 end , @fstype = case @fsinterval when 1 then 0 else 8 end if @fsinterval <> 1 set @time = 0 set @ffactor = case @freqtype when ' day ' then 0 else 1 end EXEC msdb..sp_add_jobschedule @job_name = @jobname , @name = ' 時間安排 ' , @freq_type = @ftype , -- 每天,8 每周,16 每月 @freq_interval = 1 , -- 重復執行次數 @freq_subday_type = @fstype , -- 是否重復執行 @freq_subday_interval = @fsinterval , -- 重復周期 @freq_recurrence_factor = @ffactor , @active_start_time = @time -- 下午17:00:00分執行 -- 添加目標服務器 EXEC msdb.dbo.sp_add_jobserver @job_name = @jobname , @server_name = N ' (local) ' go
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
