SqlServerExpress2005 自動備份
眾所周知SqlServerExpress2005 屬於簡裝版,安裝程式五六十兆,在客戶的伺服器上部署時很暢快。但該資料庫無Agent這樣對我們進行定時備份保護資料安全帶來了麻煩。為了定時備Express2005資料庫,可以採取以下方案:
1.編寫WindowsService,在服務內呼叫備份資料庫方法。
2.使用Windows自帶的計劃任務。(推薦使用)。
下面就由我來介紹一下如何用計劃任務實現資料庫備份的,操作步驟如下:
1. 首先建立一個windows任務計劃,開啟任務計劃嚮導,選擇指定的的exe檔案,該檔名為SQLCMD.EXE,位於x:\Program Files\Microsoft SQL Server\90\Tools\Binn 目錄下。
2.然後選擇執行週期,假設選擇每天上午9點,接著輸入Windows使用者名稱和密碼。
3.在任務計劃嚮導完成前勾選 “在單擊完成時,開啟此任務的高階屬性”這個CheckBox。
4.修改執行命令為:sqlcmd -S .\SQLEXPRESS -E -i e:\Backup\Backup.sql
注:.\SQLEXPRESS 是你的資料庫例項, e:\Backup\Backup.sql 磁碟位置可任意更改。Backup.sql 檔案內容為:
exec [sp_BackupDatabase] '需要備份的資料庫名','F'
go
6.在你Master資料庫內執行該段儲存過程,該儲存過程被Windows計劃呼叫。
<!--
Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/
-->-- =============================================
-- Author: RyanDing
-- Create date: 2010-10-10
-- Description: 備份資料庫
-- Parameter1: 資料庫名
-- Parameter2: 備份型別 F=全部, D=差異, L=日誌
-- =============================================
CREATE PROCEDURE [dbo].[sp_BackupDatabase]
@databaseName sysname, @backupType CHAR(1)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @sqlCommand NVARCHAR(1000)
DECLARE @dateTime NVARCHAR(20)
SELECT @dateTime = REPLACE(CONVERT(VARCHAR, GETDATE(),111),'/','') +
REPLACE(CONVERT(VARCHAR, GETDATE(),108),':','')
IF @backupType = 'F'
SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +
' TO DISK = ''C:\Backup\' + @databaseName + '_Full_' + @dateTime + '.BAK'''
IF @backupType = 'D'
SET @sqlCommand = 'BACKUP DATABASE ' + @databaseName +
' TO DISK = ''C:\Backup\' + @databaseName + '_Diff_' + @dateTime + '.BAK'' WITH DIFFERENTIAL'
IF @backupType = 'L'
SET @sqlCommand = 'BACKUP LOG ' + @databaseName +
' TO DISK = ''C:\Backup\' + @databaseName + '_Log_' + @dateTime + '.TRN'''
EXECUTE sp_executesql @sqlCommand
END
go
執行計劃任務後 檢視C盤Backup目錄下生成的bak資料庫備份檔案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16436858/viewspace-679378/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自動expftp備份FTP
- 自動備份指令碼指令碼
- 自動備份任務
- Linux自動備份MySQLLinuxMySql
- 資料庫自動備份資料庫
- Ms-SqlServer自動備份SQLServer
- MySQL自動備份指令碼MySql指令碼
- SQL Server定期自動備份SQLServer
- GitLab的自動備份、清理備份與恢復Gitlab
- 使用 restic 和 systemd 自動備份REST
- RMAN自動備份任務新增
- Mysql資料庫自動備份MySql資料庫
- oracle自動冷備份指令碼Oracle指令碼
- expdp備份+FTP自動上傳FTP
- ORACLE自動備份shell指令碼Oracle指令碼
- rman 自動備份指令碼-windows指令碼Windows
- 自動備份Oracle資料庫Oracle資料庫
- MySQL自動備份策略的方案MySql
- exp自動備份on linux and on windowsLinuxWindows
- Oracle自動備份資料(轉)Oracle
- 用友U8設定了自動備份,備份失效
- MySQL自動備份指令碼30天自動刪除MySql指令碼
- 每天自動備份Oracle資料庫Oracle資料庫
- windows下rman自動備份指令碼Windows指令碼
- svn dump 全自動備份指令碼指令碼
- oracle 自動冷備份指令碼(轉)Oracle指令碼
- MSsql每天自動備份自動清除日誌的操作方法SQL
- 使用 GitHub Actions 自動備份程式碼倉Github
- Linux下Mysql定時自動備份LinuxMySql
- shell 備份檔案指令碼+自動清理指令碼
- MySQL 自動備份併傳送到郵箱MySql
- LINUX 自動備份程式日誌(shell)Linux
- Oracle自動備份指令碼的實現Oracle指令碼
- Mysql--Linux Mysql定期自動備份MySqlLinux
- 自動備份檔案到GITHUB的方法Github
- redhat下部分聯機自動備份db!Redhat
- redhat下通過rman自動備份db!Redhat
- windows部分聯機自動備份指令碼!Windows指令碼