SQL Server 完整备份遇到的一个不常见的错误及解决方法

 更新时间:2019年05月08日 14:47:21   作者:东山絮柳仔  
这篇文章给大家介绍了SQL Server 完整备份遇到的一个不常见的错误及解决方法,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧

1. 错误详情

有一次在手动执行数据库完整备份时遇到如下错误:

执行多次都是这个错误信息。

提示无法生成检查点,原因可能是由于系统资源(如磁盘或内存空间)不足或者有时是由于数据库损坏而造成的。

我们检查数据库资源可以排除磁盘资源不足的情况。

2.检查点相关知识

事务日志、数据文件 和checkpoint的关系。

在SQL Server中,进行insert, update, delete时,数据并没有直接写入数据库对应的mdf文件中,而是写入了缓存里,这时,就要提到一个非常重要机制:CheckPoint,它主要作用是把缓存中的数据写入mdf文件中。

可以用下面的这个经典图来说明:

3.触发CheckPoint检查点的事件

1.在数据库备份之前,数据库引擎会自动执行检查点,以便在备份中包含对数据库页的全部更改。

2.日志的活动部分超出了服务器在 recovery interval 服务器配置选项中指定的时间内可以恢复的大小。

3.日志的 70% 已满,并且数据库处于日志截断模式。

4.停止服务器也会在服务器上的每个数据库中发出一个检查点命令。

4.手动执行检查点

所以这个错误很可能就是备份时出现了检查点的问题,那么我们手动执行一次检查点。

通常,我们很少需要手动执行checkpoint指令,checkpoint的语法为 :CHECKPOINT[checkpoint_duration],checkpoint_duration 为完成该checkppoint所需的秒数。正常情况下,我们不会指定checkpoint_duration 该值,而是用数据库自动调整的检查点持续时间,以降低对数据库的性能影响。因为数据库在执行checkpoint的时候,脏页数、修改数据的活动事务以及指定实际持续时间checkpoint_duration,都会影响资源的分配情况,假设指定了checkpoint_duration的值为50s,而正常情况下完成这个操作需要150s,那么这个时候,数据库为了满足指定的checkpoint_duration 50s,就会比正常情况下,分配更多的资源给该指令运行,那么就会影响到正常情况下的其他操作对资源的利用了。5.效果验证

运行了一下checkpoint 好了。

嘻嘻

总结

以上所述是小编给大家介绍的SQL Server 完整备份遇到的一个不常见的错误及解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言小编会及时回复大家的!

相关文章

  • mysql存储emoji表情步骤详解

    mysql存储emoji表情步骤详解

    在本篇内容中小编给大家整理了关于mysql存储emoji表情的详细步骤以及知识点,需要的朋友们学习下。
    2019-03-03
  • Ubuntu查看修改mysql的登录名和密码、安装phpmyadmin

    Ubuntu查看修改mysql的登录名和密码、安装phpmyadmin

    这篇文章主要介绍了Ubuntu查看修改mysql的登录名和密码、安装phpmyadmin,本文分步骤给大家讲解的非常详细,需要的朋友可以参考下
    2019-11-11
  • MySQL死锁问题排查与详细分析

    MySQL死锁问题排查与详细分析

    数据库管理系统中,死锁是指多个事务互相等待对方释放资源,导致事务僵持不前,影响系统稳定性,本文详细介绍了如何在MySQL中排查和分析死锁问题,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-09-09
  • Mysql索引选择以及优化详解

    Mysql索引选择以及优化详解

    这篇文章主要给大家介绍了关于Mysql索引选择以及优化的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Mysql使用存储过程快速添加百万数据的示例代码

    Mysql使用存储过程快速添加百万数据的示例代码

    这篇文章主要介绍了Mysql使用存储过程快速添加百万数据,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • MySQL 索引的优缺点以及创建索引的准则

    MySQL 索引的优缺点以及创建索引的准则

    这篇文章主要介绍了MySQL 索引的优劣以及创建索引的准则,帮助大家更好的理解和使用MySQL 索引,感兴趣的朋友可以了解下
    2020-09-09
  • MySQL中易被我们忽略的细节

    MySQL中易被我们忽略的细节

    这篇文章主要为大家介绍了几处MySQL中易被我们误会的地方,分享给大家,一来为了有趣,二来为了不让自己踩坑。
    2016-07-07
  • Ubuntu下取消MySQL数据库本机绑定限制方法

    Ubuntu下取消MySQL数据库本机绑定限制方法

    在Ubuntu系统中,添加了MySQL账户,赋予了数据库完全操作权限,并且允许数据库从外部链接 但是,还是无法远程访问MySQL数据库
    2013-06-06
  • win8.1安装mysql5.6时遇到问题解决方案

    win8.1安装mysql5.6时遇到问题解决方案

    本文主要记录的是作者在win8.1安装mysql5.6时遇到问题的解决方案,网上查了很多方法都没能解决,这里把最后的方法分享给大家
    2016-10-10
  • sql语句中日期相减的操作实例代码

    sql语句中日期相减的操作实例代码

    在工作中遇到时间处理,学习了一下SQL的日期处理方面,下面这篇文章主要给大家介绍了关于sql语句中日期相减操作的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09

最新评论