鸿萌数据恢复服务:SQL Server 中的“PFS 可用空间信息不正确”错误

天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据恢复、数据备份、网络及终端数据安全等解决方案与服务。

+

同时,鸿萌是国际主流数据恢复软件(Stellar、UFS、R-Studio、ReclaiMe Pro 等)的授权代理商,为专业用户提供正版的数据恢复软件。

页是 SQL Server 中的主要存储单元。服务器在页级别执行所有磁盘 I/O 操作。PFS(指页面可用空间)是 SQL 数据库文件中维护每个页面分配状态的页面之一。它记录每个页面上有多少可用空间的信息。SQL Server 数据库引擎使用 PFS 页来查找哪些页面已分配或空闲。PFS 记录 SQL 数据库中页面的分配状态、页面类型和可用空间量。

有时,由于数据库不一致,页面中存储的信息与实际类型不匹配。这可能导致页面可用空间错误。“PFS 可用空间信息不正确”错误就是这样一种错误。当使用 DBCC CHECKDB 命令检查数据库完整性,并且由于数据库不一致或损坏导致完整性检查失败时,就会发生此错误。

PFS 可用空间信息错误的原因

数据库文件(.MDF/.NDF)损坏可能导致“PFS 可用空间信息不正确”错误。数据库文件损坏可能由于以下原因而发生:

  • 系统突然关闭
  • MS SQL Server 中的错误
  • 大型或超大的数据库文件
  • 数据库打开时 MS SQL Server 错误或意外关闭
  • 保存数据库的硬盘存在问题
  • 保存数据文件的系统感染了病毒

修复PFS 可用空间信息不正确的错误的方法

当 DBCC CHECKDB 命令检测到数据库损坏时,会出现“PFS 可用空间信息不正确”错误。它显示对象名称、表名称、对象 ID、分区 ID 和页面 ID,并推荐适当的修复选项。因此,用户可以将数据移动到新页面,从备份中恢复数据库,或修复数据库以尝试解决错误。方法如下。

1 – 将数据移动到新页面

DBCC CHECKDB 命令显示有问题的 PFS 页所在的表名。可以尝试将数据从源表复制到新表。这将分配新的数据页和 PFS 条目。此后,删除源表并将新表重命名为与源表相同的名称。这有助于排除错误。

注意:只有当用户知道有问题的 PFS 页所属的表名时,此方法才有效。

2 – 从备份恢复数据库

如果数据库损坏或无法读取,可以从上次更新的备份中恢复数据库。可以使用 SQL Server Management Studio (SSMS) 恢复 SQL 数据库备份。请按照以下步骤操作:

  • 打开 SSMS 并转到 对象资源管理器。
  • 右键单击 数据库 并选择恢复数据库选项。

  • 在 “常规” 页面的“源” 部分下 ,选择“设备”以指定要恢复的备份集的源和位置。

  • 在 目标 部分,选择数据库名称。
  • 在 “还原到” 字段中,您可以保留默认设置“ 还原到上次进行的备份”
  • 在要恢复的备份集网格中 ,单击需要恢复的备份。
  • 在 “选项”页面的“恢复选项”部分 下 ,您可以选择所需的选项。然后单击 “确定”。

或者,可以通过运行以下 T-SQL 代码从备份中恢复数据库:

RESTORE DATABASE [employee] FROM DISK = N'C:\Backup\employee.bak' WITH FILE = 1, NOUNLOAD, STATS = 10

其中,'employee' 为数据库名称,'N'C:\Backup\employee.bak' 为备份存储位置。文件为 FILE 1,STAT = 10 将每 10% 显示一次恢复进度。

3 – 使用 DBCC CHECKDB 命令修复数据库

如果没有更新的备份,可以使用 DBCC CHECKDB 命令修复数据库。它可以修复损坏的 SQL 数据库中的所有对象,包括索引页、PFS 页和其他分配页。可以运行带有REPAIR_ALLOW_DATA_LOSS选项的DBCC CHECKDB命令,如下所示:

注意:在使用该命令之前,建议备份您的 SQL 数据库。

DBCC CHECKDB ('employee', REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS;

GO

注意:使用 DBCC CHECKDB REPAIR_ALLOW_DATA_LOSS 命令修复 SQL 数据库会重新分配 PFS 页或一系列页。这可能会导致数据丢失。

如果 DBCC CHECKDB 命令失败,则可以使用可靠的 SQL 修复工具 Stellar Repair for MS SQL。此工具可以轻松修复 SQL 数据库文件 (.mdf 和 .ndf) 而不会丢失任何数据。它可以从损坏的数据库中恢复所有对象,包括页面、索引、表和存储过程。然后,它将恢复的数据保存到新的健康数据库文件 (.mdf)。这有助于解决由于数据库文件损坏而发生的问题。该工具支持修复和恢复在 SQL Server 2022、2019、2017、2016 和更早版本中创建的数据库。

鸿萌是 Stellar 系列数据恢复软件的授权代理商,为用户提供官方正版软件产品。同时,需要时,可协助进行售后服务及寻求官方远程技术指导。

联系专业的数据恢复公司

以上解决方案针对专业的数据库人员。对于非专业人员,为了保护数据不受二次损坏,请及时联系专业的数据恢复公司。

天津鸿萌科贸发展有限公司提供专业的数据库恢复及修复服务,凭借二十余年的良好行业口碑,为客户高效解决数据安全问题。

7x24小时在线紧急数据救援服务,及时向客户提供专业的应急响应。

易备数据备份软件:数据库备份,为任何危机做好风险防范

易备数据备份软件支持对 SQL Server、Oracle、MySQL、PostgreSQL、MariaDB、泛微 OA 等数据库进行快速备份,备份过程不会对任何服务造成中断。

使用一份授权,可以备份无限量的数据库,不管数据库服务器是否在本机、本地网络、或是远程网络。可以从网络中的任何一个 Windows 系统中执行数据库的备份任务。软件可以将数据库自动备份到任何目标设备:本地磁盘、NAS、磁带,以及自动通过 FTP、FTPS 和 SFTP 进行传送备份文件,或发送到天翼云、华为云、信服云或 Amazon S3 等云服务。使用本软件可以备份及截断事务日志。

  • 实时备份, 不需要任何中断或数据库锁定
  • 基于日期和时间的备份任务计划
  • 可恢复到一个已存在的数据库或创建一个新数据库
  • 内置压缩
  • AES 256 位加密
  • 多账户和多数据库并行备份
  • 自定义备份文件名
  • 可以为每一个数据库保存多个备份副本
  • 备份校验
  • 标准格式的备份文件
  • 多副本备份,同时支持云端、FTP、磁带、NAS 等多种备份目的地
  • 邮件提醒备份结果
  • 防勒索备份检测

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/52055.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫案例3——爬取彩票双色球数据

简介:个人学习分享,如有错误,欢迎批评指正 任务:从500彩票网中爬取双色球数据 目标网页地址:https://datachart.500.com/ssq/ 一、思路和过程 目标网页具体内容如下: ​​​​​ 我们的任务是将上图中…

使用AWS Lambda轻松开启Amazon Rekognition之旅

这是本系列文章的第一篇,旨在通过动手实践,帮助大家学习亚马逊云科技的生成式AI相关技能。通过这些文章,大家将掌握如何利用亚马逊云科技的各类服务来应用AI技术。 那么让我们开始今天的内容吧! 介绍 什么是Amazon Rekognition&…

前端宝典之五:React源码解析之深度剖析Diff算法

本文主要针对React源码进行解析,内容有: 1、Diff算法原理、两次遍历 2、Diff瓶颈及限制 3、Diff更新之单节点和多节点原理 一、Diff源码解析 以下是关于 React Diff 算法的详细解析及实例: 1、React Diff 算法的基本概念和重要性 1.1 概念…

【LeetCode每日一题】——301.删除无效的括号

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 广度优先搜索 二【题目难度】 困难 三【题目编号】 301.删除无效的括号 四【题目描述】 给…

ROS 2中,CMakeList.txt常见语法

在ROS 2中,CMakeList.txt 文件扮演着配置和管理构建过程的重要角色。这个文件遵循CMake的语法,用于定义如何编译和链接源代码。下面是一些在ROS 2项目CMakeList.txt文件中常见的语法和用法。 1. 基本结构和命令 cmake_minimum_required(VERSION )&…

【设计模式】装饰器模式和适配模式

装饰器模式 装饰器模式能够很好的对已有功能进行拓展,这样不会更改原有的代码,对其他的业务产生影响,这方便我们在较少的改动下对软件功能进行拓展。 类似于 router 的前置守卫和后置守卫。 Function.prototype.before function (beforeFn)…

【C++】————智能指针

作者主页: 作者主页 本篇博客专栏:C 创作时间 :2024年8月20日 一,什么是智能指针 在C中没有垃圾回收机制,必须自己释放分配的内存,否则就会造成内存泄露。解决这个问题最有效的方法是使用智能指针&…

异常信息转储预研笔记-堆栈地址转换

addr2line命令 addr2line -e <exec> <addr> -f | xargs cfilt<exec>: 进程名 <addr>&#xff1a;堆栈地址eg&#xff1a; addr2line -e backtrace 0x4009d2 -f | xargs cfilt此方案测试了&#xff0c;不知道什么原因只显示?? ??:0 &#xff0c;而…

Java面试题--分布式锁

分布式锁 你说一下什么是分布式锁 分布式锁是在分布式/集群环境中解决多线程并发造成的一系列数据安全问题.所用到的锁就是分布式锁&#xff0c;这种锁需要被多个应用共享才可以&#xff0c;通常使用Redis和zookeeper来实现。 分布式锁有哪些解决方案 常用的三种方案 基于…

Spring模块详解Ⅱ

目录 Spring Beans模块详解1. 什么是 Bean?2. Spring Bean的配置方式2.1 基于 XML 配置例子&#xff1a; 2.2 基于注解配置例子&#xff1a; 2.3 基于 Java 配置&#xff08;JavaConfig&#xff09;例子&#xff1a; 3. Bean 的生命周期生命周期回调的例子&#xff1a; 4. Bea…

Oracle+ASM+High冗余详解及空间计算

Oracle ASM&#xff08;Automatic Storage Management&#xff09;的High冗余模式是一种提供高度数据保护的策略&#xff0c;它通过创建多个数据副本来确保数据的可用性和安全性。 以下是关于Oracle ASM High冗余的详细解释&#xff1a; 一、High冗余的特点 1.数据冗余度 在Hi…

极速闪存启动:SD与SPI模式的智能初始化指南

最近很多客户朋友在询问我们 CS 创世 SD NAND 能不能使用 SPI 接口&#xff0c;两者使用起来有何区别&#xff0c;下面为大家详细解答。 SD MODE: CS 创世 SD NAND 支持 SD 模式和 SPI 模式&#xff0c;SD NAND 默认为 SD 模式&#xff0c;上电后&#xff0c;其初始化过程如下…

链游:基于telegram和TON wallet在mac本地运行Flappy bird项目

【好看的灵魂千篇一律,有趣的鲲志一百六七!】- 可查看详情~~ 作者:鲲志说 (公众号、B站同名,视频号:鲲志说996) 后端研发:java、go,前电商、现web3 博客专家:阿里云社区、CSDN博客专家 超级个体:COC杭州开发者社区主理人 AI爱好者: AI电影共创社杭州核心成员…

【Word多级标题完整设置】设置各级标题样式将多级列表链接到各级标题样式中

Word多级标题完整设置 一、设置各级标题样式主标题样式设置中英文字体、字形以及字号设置段落设置&#xff08;缩进、间距和行距&#xff09; 一级标题样式设置中英文字体、字形以及字号设置段落设置&#xff08;缩进、间距和行距&#xff09; 二级标题样式设置中英文字体、字形…

深度学习基础—Batch Norm

对于一个神经网络我们知道&#xff0c;归一化输入特征是加速网络训练的技巧之一&#xff0c;因为归一化后&#xff0c;损失函数的图像就会由狭长变得更圆&#xff0c;那么这是否启发我们&#xff0c;在深度更深模型中&#xff0c;对各层的输出进行归一化&#xff0c;有益于下一…

day6 测试基础知识积累

JMeter 服务端系统性能测试是针对服务器端应用程序或服务 在特定负载下的运行能力和稳定性进行评估的方法。 产品文档应该有产品的性能指标&#xff0c;做性能测试前&#xff0c;如果需求文档没有性能指标则要向产品团队要。服务端系统性能测试 的常见指标有&#xff1a;TPS、…

Go 1.21在性能方面有哪些提升?

Go 1.21版本在性能方面取得了多项重要进展&#xff0c;主要体现在以下几个方面&#xff1a; 1. Profile-Guided Optimization (PGO) Go 1.21正式推出了PGO功能&#xff0c;使用PGO构建的Go程序性能通常可提升2-7%[2][5]。编译器本身也采用了PGO优化&#xff0c;使得编译速度提…

Abstract Class抽象类

抽象类&#xff08;Abstract Class&#xff09;在面向对象编程中是一种特殊的类&#xff0c;它不能被实例化&#xff0c;即不能创建该类的对象。抽象类主要用于定义一组接口&#xff08;即方法&#xff09;&#xff0c;这些方法的具体实现由子类来完成。抽象类通常用于表示一种…

ebpf教程(4.1):XDP程序的加载

文章目录 前言环境准备加载XDP程序源码构建过程运行 前言 前置阅读要求&#xff1a; ebpf教程(3):使用cmake构建ebpf项目-CSDN博客[译] [论文] XDP (eXpress Data Path)&#xff1a;在操作系统内核中实现快速、可编程包处理&#xff08;ACM&#xff0c;2018&#xff09;xdp-t…

C++中数据类型的学习

目录 一、整形 二、sizeof关键字 三、实型&#xff08;浮点型&#xff09; 四、字符型 五、转义字符 六、字符串型 七、布尔类型bool 八、数据的输入 数据类型 C规定在创建一个变量或者常量时&#xff0c;必须要指定出相应的数据类型&#xff0c;否则无法给变量分配内…