为什么 SQL Server备份失败?

为什么按正常步骤备份 SQL Server 会失败,如何解决? 事实上,数据库备份出错的可能原因有很多,如存储介质故障、误操作、软件更新后不兼容等。

在本文中,我将分析一些常见的案例并提供相应的解决方案。 如果您厌倦了一项一项地尝试它们,或者不幸的是它们都无法正常工作,您也可以求助于专业软件,以减少故障并简化操作。

sql备份失败

案例一、操作系统错误5(拒绝访问)

当您的 SQL Server 备份失败并出现错误“操作系统错误 5(访问被拒绝。)”时,这通常意味着您无权将数据写入目标路径。 那么可以针对以下原因一一排查:

  • 您的 MSSQL 登录帐户没有目标目录的完全权限。
  • 目标目录下已有同名备份文件,且为只读。

修复 1 - 完全控制您的 SQL 登录帐户

要修复此 SQL Server 备份失败访问被拒绝,首先您可以找到您的目标文件夹,右键单击它并选择 Properties> Security以查看 Group 或 usernames

如果您登录 SQL Server 的帐户未在此处列出,或者它对该文件夹的权限有限,这应该是您的 SQL 备份失败的原因。 要修复它,您应该提供对该帐户的完全控制(或至少写入权限)。

1. 按 Win + R,在输入框中键入“services.msc”,然后单击 “确定”以调用 “服务”窗口。 找到对应实例的SQL Server服务,然后在Log On As栏下可以看到它的登录账号(或者直接从 Properties中复制 )。

sql登录账号

2. 如果此帐户已包含在目标文件夹的 “组或用户名”中,则只需对其进行 “编辑”并赋予其 “完全控制权”

完全控制

否则,您可能需要手动添加此帐户。 单击 “编辑”> “添加”> 复制输入框中的帐户名称,然后单击 “确定”> 选择要添加的匹配名称 > 给它 Full control

新增帐户

“取消备份文件的只读属性”

如果您的登录账户已经对目标文件夹拥有完全控制权,或者上述步骤没有解决您的问题,那么您也可以考虑这种可能:

您已经在相同的目标路径下创建了一个同名的备份文件,并且它具有只读属性,因此您新创建的备份不能覆盖它。

如果是这种情况,您只需右键单击备份文件,在 “属性中取消选中其”“只读”属性 并“应用”更改。

只读备份文件

更多详情,您可以参考 SQL Server 备份到网络共享的访问被拒绝 .

案例 2. SQL Server 错误 3023 日志文件收缩失败

当您在 SQL Server 中执行备份或收缩操作时,您可能会收到以下错误消息:

日志文件收缩失败…
备份、文件操作操作(例如 ALTER DATABASE ADD FILE)和数据库上的加密更改必须序列化。 在当前备份或文件操作操作完成后重新发出该语句。 (微软 SQL 服务器,错误:3023)

如提示所述,问题通常是由于备份、文件操作和加密更改之间的冲突引起的。

例如,在进行差异备份、日志备份、向数据库添加或删除文件、收缩文件等操作时,您可能会遇到此类错误(如 3023、3013、3041)。

修复 - 找出冲突并重试操作

为了解决这个问题,一个常见的解决方案是检查正在进行的进程,并在停止或完成冲突操作后重试备份。

此外,您还可以检查 SQL Server 中所有维护作业的计划,确保它们不会相互冲突。

要检查每个数据库的状态,这里有一个查询可能会有所帮助:

select name,
state_desc
state_desc from sys.databases

检查数据库状态

此外,SQL Server 记录了每个数据库备份的开始和结束时间。 因此,当您尝试执行增量备份时,您还可以使用以下查询来检查备份历史并确定是否正在执行完整数据库备份。

select database_name, type, backup_start_date, backup_finish_date
from msdb.dbo.backupset
order by database_name, type, backup_start_date, backup_finish_date
Go

*结果中D为数据库备份,I为增量备份,L为日志备份,F为文件备份。

检查备份状态

案例 3. SQL Server 错误 14234 指定的 '@subsystem' 无效

如果在创建维护计划时SQL Server备份失败,并提示你这样的信息,那很可能是因为没有安装SQL Integration Services。

修复 - 安装 SQL Server Integration Services (SSIS)

要安装 SSIS,首先在 Windows 中搜索“SQL Server 配置管理器”并启动它。

在弹出的窗口中,点击 SQL Service 服务,然后在右侧 可以找到 SQL Server Integration Services 。右键单击它并 “启动”它。

启动sql server集成服务

错误少,操作简单的备份SQL数据库

.

这种集中式数据管理工具为 LAN 内的所有 PC 和服务器提供 SQL Server 备份功能  。 它允许您直观地创建备份任务并直接从创建的任务中恢复数据库。

此外,其图形界面使您可以一次选择多个数据库,并设置每天/每周/每月执行备份任务的计划任务。 大大简化了操作,减少了过程中可能出现的错误。

下载 180天免费试用版进行试用:

分别在中心机和客户端安装傲梅企业备份网络版和客户单包,就可以控制所有你想管理的电脑,继续创建任务。

请求控制

1. 导航到 “任务”> “新任务”> SQL Server 备份

sql服务器备份

2. 点击  + “添加计算机”,检测并选择带有SQL实例的受控计算机。

添加计算机

3. 转到第 2 步,然后点击 + “添加”选择要备份的实例和数据库。 您可以根据需要选择任意数量的数据库。

添加数据库

4. 点击第 3 步,然后点击  添加存储指定网络共享或 NAS 的目标路径。 添加的路径将被保存以供您直接使用。

添加存储

5.您可以添加 一个 “计划任务”自动备份SQL数据库 ,或单击 “设置”以加密或压缩备份。 设置完成后,单击 “开始备份”> “创建并执行任务”

开始备份

创建的备份任务将显示在 “任务”选项卡中,您可以直接从中恢复数据库。

从备份恢复数据库

补充:更好地保护 SQL 数据库的技巧

以上分析了SQL Server备份失败的一些原因,但是还有很多其他可能导致问题的可能。 为维护数据库安全,避免备份失败,除了谨慎操作外,还要考虑一些不可控因素。

☛  “防止介质故障”

  • 注意磁盘维护和可靠性。
  • 确保备份使用多个存储介质。

 防止软件问题

  • 注意应用更新。 大多数更新不会影响备份,但可能会产生潜在影响。
  • 监控安全配置。 安全设置和策略的更新会影响备份系统的连接性,进而影响备份。

结论

如果SQL Server备份失败,您可以尝试上述方法来修复一些常见的错误,或者干脆采用可靠的程序来保护数据库,错误更少,操作更容易。

恢复多个 SQL 数据库 等。除了SQL数据库外,它还适用于Windows操作系统等其他计算机数据。