阅读:2558回复:6
如何自动定时备份数据库
步骤1:
创建用于执行备份的存储过程: USE [master] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO 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 您可以更改“C:\Backup\”到“你的目录”,您希望将备份存储在。 步骤2: 运行在你的SQL语句在Management Studio管理工具中。(打开的你的Management Studio库管工具,直接运行,无需再选择数据库运行了。) 步骤3: 建立你的备份脚本并保存为backup.sql。 你可以复制的行和编辑数据库名称: sp_BackupDatabase 'Account_DBF', 'F' GO sp_BackupDatabase 'Character_DBF', 'F' GO sp_BackupDatabase 'Logging_DBF', 'F' GO sp_BackupDatabase 'Ranking_DBF', 'F' GO 步骤4: 现在的的难点。 你需要创建一个计划任务。 预定任务必须运行以下命令: sqlcmd -S SQLINSTANCE -E -i PathToYourBackupSQL 例如 sqlcmd -S .\FLYFF -E -i C:\Things\Backup.sql 步骤5: 为您的预定任务创建一个触发器,并将其配置为在特定时间内的 步骤6: 确保在“创建任务”窗口的主选项卡中设置“以最高权限运行”。 |
|
最新喜欢:q87263... |