鸿萌数据恢复服务:SQL Server 中的 GAM、SGAM、IAM,及数据库损坏的修复方法

server/2024/9/23 4:40:47/

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

+

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

在 SQL Server 中,页面是存储数据的基本单位,而扩展是帮助有效管理页面的基本单位。扩展是八个物理连接的页面的组合。在 SQL Server 中,有两种类型的分配映射用于记录分配的范围 - 全局分配映射(GAM) 和共享全局分配映射 (SGAM)。还有另一个页面,称为索引分配映射 (IAM),它映射分配单元使用的 SQL Server 数据库文件 4 GB 部分中的扩展。有时,这些 SQL 数据库页面会由于各种原因而受到损坏,需要修复数据库损坏。

什么是 GAM、SGAM 和 IAM 页面?

全局分配映射 (GAM) 负责处理数据库内的分配区,有助于在需要时识别空闲区。

共享分配映射 (SGAM) 页类似于粒度图,处理数据库中特定文件组的扩展分配。

索引分配映射 (IAM) 页是特殊的内部页,其作用类似于数据存储的注册表,跟踪数据页在数据库文件中的位置。

如何诊断 GAM、SGAM 和 IAM 页面错误?

运行查询时,您可能会遇到类似以下的错误消息:

Msg 8905, Level 16, State 1, Line 1

Extent (5678:1234) in database ID 10 is marked allocated in the GAM, but no SGAM or IAM has allocated it.

此错误表明 GAM 页面已损坏。

检测数据库页中的错误的另一种方法是是使用 DBCC CHECKDB 命令(参见下面的示例)。

DBCC CHECKDB (stellardb)

GO

有一个未记录的命令,名为 dbcc PAGE。这是 Microsoft 使用的内部命令。但是,可以使用它来诊断数据库页面。以下是使用此命令的代码。

DBCC PAGE (stellardb, 1, 354, WITH NOHEADER)

GO

这里,stellardb 是数据库名称,1 是文件编号,354 是页码。

如何修复 SQL 数据库 GAM、SGAM 和 IAM 页面中的损坏?

从备份恢复数据库

如果有备份,可以使用它来恢复数据。以下是使用 SQL Server Management Studio (SSMS) 恢复数据库备份的步骤:

  • 在 SQL Server Management Studio (SSMS) 中,转到对象资源管理器并右键单击数据库
  • 然后,选择恢复数据库选项。

转到对象资源管理器并右键单击<a class=数据库。然后,选择“恢复数据库”选项。" class="apply-gradient-on-post-images lazyloaded wp-image-165281" height="504" id="MTY5NTo3NTM=-1" src="https://img-blog.csdnimg.cn/img_convert/635a20a3c5c730569baa4434bb0033be.png" width="591" />​

  • 在常规页面上选择设备选项,然后按浏览按钮选择备份并按确定。

常规页面上的设备选项

使用 DBCC CHECKDB 命令

要修复 GAM、SGAM 和 IAM 页面错误以及数据库损坏,可以使用 SQL Server 中的 DBCC CHECKDB 命令。以下是使用 DBCC CHECKDB 命令修复数据库的代码:

USE master;
GO
ALTER DATABASE stellar
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO

DBCC CHECKDB('stellar',REPAIR_REBUILD)
GO
ALTER DATABASE stellar
SET MULTI_USER;
GO

上述代码将转到主系统数据库,将数据库设置为单用户模式,修复数据库,然后将其恢复到多用户模式。

使用Stellar Repair for MS SQL 数据库修复软件

如果 DBCC CHECKDB 命令无法修复数据库,您可以使用 Stellar Repair for MS SQL。该软件可以轻松修复 SQL Server 数据库 (mdf 和 ndf) 文件。它可以从损坏的数据库文件中恢复所有数据并将其保存在新的数据库文件或其他各种格式中。

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

注意:在启动修复过程之前,请使数据库脱机。

  • 从官方网站下载该软件。
  • 安装软件并启动它。
  • 单击“浏览”选择数据库文件(如果您不知道数据文件存储在哪里,可以使用“查找”按钮)。

浏览选择<a class=数据库文件" class="apply-gradient-on-post-images lazyloaded wp-image-165285" height="525" id="MTcyMjo3Njc=-1" src="https://img-blog.csdnimg.cn/img_convert/f215b5cdef9658840aecd5c0a1e70ca2.png" width="778" />​

  • 选择数据文件后,按修复按钮。

浏览损坏的 SQL <a class=数据库并单击修复以修复数据库" class="apply-gradient-on-post-images lazyloaded wp-image-165286" height="525" id="MTcyNTo3OTI=-1" src="https://img-blog.csdnimg.cn/img_convert/763b07ab2a7825a42c38a10077c6491b.png" width="778" />​

  • 修复后,您可以将数据保存在新数据库或其他格式(如 CSV、HTML 和 Excel)中。

保存选项以保存已修复的 SQL <a class=数据库" class="apply-gradient-on-post-images lazyloaded wp-image-165295" height="552" id="MTcyODo3MTE=-1" src="https://img-blog.csdnimg.cn/img_convert/82993e87fd09df6cde614ec676aa46d9.png" width="730" />​

防止 GAM、SGAM 和 IAM 页面损坏的最佳实践

您可以遵循以下一些有用的提示来防止 SQL Server 数据库页面损坏:

  • 检查硬件,尤其是硬盘,确保它们没有问题。如果磁盘太旧或出现错误,请更换磁盘。如果可能,请为您的 SQL Server 数据创建镜像 RAID。
  • 避免病毒和恶意软件攻击。确保安装防病毒和反垃圾邮件软件。
  • 使用最佳防火墙和网络分段保护您的网络,并加密您的数据。如果适用,请创建安全的 VPN 网络。
  • 确保使用最新更新来更新您的操作系统和软件。

联系专业的数据恢复公司

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

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

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

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

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

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

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

http://www.ppmy.cn/server/101397.html

相关文章

Nginx+Tomcat负载均衡、动静分离群集

Tomcat重要目录 bin: 存放启动和关闭tomcat脚本 conf:存放Tomcat不同的配置文件 doc:存放Tomcat文档 lib&#xff1a;存放Tomcat运行需要的库文件 logs&#xff1a;存放Tomcat执行时的LOG文件 src&#xff1a;存放Tomcat的源代码 webapps&#xff1a;T…

Visual Studio Code 安装与 C/C++ 语言运行总结

​ 大家好&#xff0c;我是程序员小羊&#xff01; 前言&#xff1a; Visual Studio Code&#xff08;简称 VS Code&#xff09;是由微软开发的一款轻量级、强大的代码编辑器&#xff0c;支持多种编程语言和开发框架。由于其丰富的插件生态系统和灵活的配置选项&#xff0c;VS…

Android CheckBox

设置 checkbox 文字与图标的间距 android:layoutDirection"rtl"android:paddingStart"dimen/x15"android:paddingEnd"dimen/x15"注意 是否 设置了 图标按钮的方向

Linux/C 高级——shell脚本

1. shell脚本基础概念 1.1概念 shell使用方式&#xff1a;手动下命令和脚本 脚本本质是一个文件&#xff0c;文件里面存放的是特定格式的指令&#xff0c;系统可以使用脚本解析器翻译或解析指令并执行&#xff08;它不需要编译&#xff09;。 shell脚本本质&#xff1a;shell命…

强!小目标检测全新突破!检测速度快10倍,GPU使用减少73.4%

强&#xff01;小目标检测全新突破&#xff0c;提出Mamba-in-Mamba结构&#xff0c;通过内外两层Mamba模块&#xff0c;同时提取全局和局部特征&#xff0c;实现了检测速度快10倍&#xff0c;GPU使用减少73.4&#xff05;的显著效果&#xff01; 【小目标检测】是近年来在深度…

Linux下简单快捷高效的用五笔打出特殊符号(含Emoji)-基于fcitx5

Linux下简单快捷高效的用五笔打出特殊符号&#xff08;含Emoji&#xff09;-基于fcitx5 官网地址&#xff1a;https://github.com/devome/wubi-symbols/tree/main 如何使用&#xff1f;以Fcitx5为例。 1. 下载特殊符号库 下载 output 下面的文件&#xff0c;或者直接从 rel…

大数据系列之:Doris Kafka Connector,实时消费Kafka Topic中的数据同步到Doris数据库

大数据系列之:Doris Kafka Connector,实时消费Kafka Topic中的数据同步到Doris数据库 一、使用 Doris Kafka 连接器二、独立模式启动三、分布式模式启动四、访问SSL认证的Kafka集群五、死信队列六、配置项七、类型映射八、最佳实践九、常问问题Kafka Connect 是一个可扩展且可…

three.js 几何体、材质和网格模型

场景Scene、相机Camera、渲染器Renderer初始化完成之后&#xff0c;可以向场景中添加一个简单的模型进行展示。在此之前需要了解三个概念&#xff1a;几何体、材质、网格模型。 几何体&#xff1a;表示物体的几何形状。材质&#xff1a;表示物体的外观效果。网格模型&#xff…