如何设置MSSQL数据库自动备份?(mssql设置自动备份)
如何设置MSSQL数据库自动备份?
在日常的工作中,数据库备份是非常重要的,它既可以保证数据的安全性,也可以为数据恢复提供支持。在MSSQL中,设置数据库自动备份非常简单,本文将为大家详细介绍具体的设置方法。
第一步:创建备份文件夹
在开始设置自动备份之前,我们需要先创建一个备份文件夹,并为其设置读写权限。你可以选择将备份文件夹放在MSSQL的安装目录下或者放在其他磁盘上,根据实际情况来定。为了方便备份文件管理,我选择将备份文件夹放在D盘,路径为”D:\MSSQL_Backup\”,并为其设置读写权限。
第二步:创建备份计划
在MSSQL中,我们可以通过SQL Server Management Studio的图形界面创建备份计划,也可以通过T-SQL代码创建。这里,我们以图形界面为例,演示如何创建备份计划。
1. 首先,打开SQL Server Management Studio,连接到需要设置自动备份的数据库实例上。
2. 在左侧对象资源管理器窗口中,展开 “SQL Server 代理” -> “计划任务”,右键选择 “新建计划任务”。
3. 在 “新建计划任务” 对话框中,输入计划任务的名称和描述,然后选择 “调度器” 选项卡。
4. 在调度器选项卡中,选择备份频率和时间,例如我选择每天凌晨2点备份一次。
5. 选择 “操作” 选项卡,单击 “新建” 按钮,选择 “数据库备份”。
6. 在 “面向” 下拉框中选择需要备份的数据库,然后选择备份类型,通常我们选择 “完整备份”。选择备份文件夹,注意要选择我们在第一步中创建的备份文件夹。
7. 在 “时间戳” 选项卡中,可以设置备份文件名称中的时间戳,方便区分不同备份文件。
8. 在 “选项” 选项卡中,可以设置备份的压缩方式和校验和等参数。
9. 点击 “确定” 按钮,完成备份计划的设置。
10. 最后,需要单击 “确定” 按钮,保存设置,并启用该备份任务。
至此,我们已经成功地设置了MSSQL数据库的自动备份,接下来我们可以在指定的备份文件夹中查看备份文件,并进行相关的数据恢复工作。
值得一提的是,我们还可以通过T-SQL代码来创建备份计划,具体可以参考以下代码:
USE [msdb]
GOEXEC msdb.dbo.sp_add_job
@job_name=N'BackupJob', @enabled=1,
@description=N'Backup databases every night', @start_step_id=1,
@owner_login_name=N'sa', @notify_level_eventlog=0,
@notify_level_email=0, @notify_level_netsend=0,
@notify_level_page=0, @delete_level=0,
@category_name=N'Database Maintenance', @job_id = @jobId OUTPUT
GOEXEC msdb.dbo.sp_add_jobstep
@job_id=@jobId, @step_name=N'BackupStep',
@step_id=1, @cmdexec_success_code=0,
@on_success_action=1, @on_fail_action=2,
@retry_attempts=0, @retry_interval=0,
@os_run_priority=0, @subsystem=N'SQLSERVERAGENT',
@command=N'BACKUP DATABASE [AdventureWorks2012] TO DISK = ''D:\MSSQL_Backup\AdventureWorks2012.bak'' WITH COMPRESSION', @database_name=N'master',
@flags=0GO
EXEC msdb.dbo.sp_add_schedule @schedule_name=N'DailyBackup',
@enabled=1, @freq_type=4,
@freq_interval=1, @freq_subday_type=1,
@freq_subday_interval=0, @freq_relative_interval=0,
@freq_recurrence_factor=1, @active_start_date=20200901,
@active_end_date=99991231, @active_start_time=20000,
@active_end_time=235959GO
EXEC msdb.dbo.sp_attach_schedule @job_name=N'BackupJob',
@schedule_name=N'DailyBackup'GO
EXEC msdb.dbo.sp_add_jobserver @job_name=N'BackupJob',
@server_name=N'(local)'GO
以上代码会在 “msdb” 数据库中创建一个名为 “BackupJob” 的任务,在每天晚上8点执行数据库备份任务,备份文件位于 “D:\MSSQL_Backup\” 目录下,备份文件名为 “AdventureWorks2012.bak”,且启用数据压缩。你可以根据自己的需要进行相应的修改。
总结:
通过本文的介绍,我们可以学会如何在MSSQL中设置自动备份的方法,实现数据的安全保障和数据恢复的支持。备份是数据库管理的重要手段之一,每个DBA在对数据库进行管理和运维时,操作备份数据非常重要。