Quick Contact

Backup SQL server Agent

Agent service for backup

Agent service for backup all DB

1)  Change @owner_login_name to relevant name

2)  Change backup path to relevant @path

 

--

--Valentin XGlobe 2013

--

 

USE [msdb]

GO

 

 

BEGIN TRANSACTION

DECLARE @ReturnCode INT

SELECT @ReturnCode = 0

 

IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)

BEGIN

EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

 

END

 

DECLARE @jobId BINARY(16)

EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'BDBAckup',

                             @enabled=1,

                             @notify_level_eventlog=0,

                             @notify_level_email=0,

                             @notify_level_netsend=0,

                             @notify_level_page=0,

                             @delete_level=0,

                             @description=N'Backup DB',

                             @category_name=N'[Uncategorized (Local)]',

                             @owner_login_name=N'IL3wv3562\1host', @job_id = @jobId OUTPUT

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

 

EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'Backup cursor',

                             @step_id=1,

                             @cmdexec_success_code=0,

                             @on_success_action=1,

                             @on_success_step_id=0,

                             @on_fail_action=2,

                             @on_fail_step_id=0,

                             @retry_attempts=0,

                             @retry_interval=0,

                             @os_run_priority=0, @subsystem=N'TSQL',

                             @command=N'--

--Valentin XGlobe 2013

--

DECLARE @name VARCHAR(50) -- database name 

DECLARE @path VARCHAR(256) -- path for backup files 

DECLARE @fileName VARCHAR(256) -- filename for backup 

DECLARE @fileDate VARCHAR(20) -- used for file name

 

 

-- specify database backup directory

SET @path = ''C:\SQLBackups'' 

 

 

-- specify filename format

SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112)

 

 

DECLARE db_cursor CURSOR FOR 

SELECT name

FROM master.dbo.sysdatabases

WHERE name NOT IN (''model'',''msdb'',''tempdb'')  -- exclude these databases

 

 

OPEN db_cursor  

FETCH NEXT FROM db_cursor INTO @name  

 

 

WHILE @@FETCH_STATUS = 0  

BEGIN  

       SET @fileName = @path + @name + ''_'' + @fileDate + ''.BAK'' 

       BACKUP DATABASE @name TO DISK = @fileName 

       FETCH NEXT FROM db_cursor INTO @name  

END  

 

 

CLOSE db_cursor  

DEALLOCATE db_cursor',

                             @database_name=N'master',

                             @flags=0

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'BAckup all db''s',

                             @enabled=1,

                             @freq_type=4,

                             @freq_interval=1,

                             @freq_subday_type=1,

                             @freq_subday_interval=0,

                             @freq_relative_interval=0,

                             @freq_recurrence_factor=0,

                             @active_start_date=20130218,

                             @active_end_date=99991231,

                             @active_start_time=10000,

                             @active_end_time=235959,

                             @schedule_uid=N'74ed7208-f9ee-4bb5-ab0e-c2fc71d14257'

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'

IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback

COMMIT TRANSACTION

GOTO EndSave

QuitWithRollback:

    IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION

EndSave:

 

GO

 

Additional Articles
X

Partners

© 2013 XGlobe Online Ltd.