Backup all databases in a Server except system DBs in Sql Server
Please compile this SP on Sql Server and whenever you want to take the backup of all existing databases, plz Execute this SP once. It will automatically take backup and it will place in specified location.
CREATE PROCEDURE [dbo].[DataBase_BackUp_SP](@OutputPath NVARCHAR(4000)='\\Server1\Shared Docs\Others\')
AS
BEGIN
SET NOCOUNT ON
DECLARE @BackFileName NVARCHAR(4000)
DECLARE @BackPath NVARCHAR(4000)
DECLARE @BackFullPath NVARCHAR(4000)
DECLARE @DBName NVARCHAR(4000)
DECLARE @ServerName NVARCHAR(4000)
-- GETTING SERVER NAME
SELECT @ServerName = Name
FROM SYS.SERVERS
WHERE Server_id = 0
DECLARE DB_Cur CURSOR FOR SELECT NAME FROM SYS.DATABASES WHERE Database_Id>4
OPEN DB_Cur
FETCH NEXT FROM DB_Cur INTO @DBName
WHILE @@FETCH_STATUS=0
BEGIN
SELECT @BackPath=@OutputPath
SELECT @BackFileName='Backup_'+ @DBName +'_'+ @ServerName +'_' + CONVERT(NVARCHAR(10),GetDate(),105) + '.bak'
SELECT @BackFullPath =@BackPath + @BackFileName
BACKUP DATABASE @DBName
TO DISK=@BackFullPath
WITH INIT
FETCH NEXT FROM DB_Cur INTO @DBName
END
CLOSE DB_Cur
DEALLOCATE DB_Cur
SET NOCOUNT OFF
END
No comments:
Post a Comment