--創建一個每月最后一個工作日執行的作業,調用上述存儲過程實現自動創建數據庫
use mastergo
--設置 sql agent 服務為自動啟動exec msdb..sp_set_sqlagent_properties @auto_start=1go
--創建作業exec msdb..sp_add_job @job_name=n'自動建庫處理'
--創建作業步驟declare @sql varchar(800),@dbname varchar(250)select @sql=n'exec sp_proccopydb' --調用自動建庫的存儲過程,@dbname=db_name() --執行自動建庫處理的數據庫名
exec msdb..sp_add_jobstep @job_name=n'自動建庫處理',@step_name = '建庫處理',@subsystem = 'tsql',@[email protected],@command = @sql,@retry_attempts = 5, --重試次數@retry_interval = 5 --重試間隔
--添加作業調度(每月最后一個工作日)exec msdb.dbo.sp_add_jobschedule @job_name = n'自動建庫處理', @name = n'時間安排',@freq_type = 32, @active_start_time = 0, --0點開始執行@freq_interval = 9, --每月最后一個工作日@freq_subday_type = 1, @freq_subday_interval = 0, @freq_relative_interval = 16, @freq_recurrence_factor = 1
-- 添加目標服務器exec msdb.dbo.sp_add_jobserver @job_name = n'自動建庫處理' ,@server_name = n'(local)'
/*--已知問題
由于sql生成腳本的bug,有的數據庫可能無法用生成腳本的方法進行處理
--*/