sqlserver数据库加密后无法使用MDF,LDF,log文件名称被修改的数据恢复

​故障:​

2个SQL server数据库被加密,无法使用。

数据库MDF、LDF、log日志文件名字被修改,

如下图:

数据库备份被加密,文件名字被修改。管理员联系北亚数据恢复中心进行数据修复。

​数据恢复过程:​

  • 1、备份数据库。为防止数据恢复过程中对原始数据库造成二次破坏,北亚数据恢复工程师为每个库做了备份。所有恢复数据的操作都在备份上进行, 避免了对原始数据造成损坏的可能。
  • 2、使用北亚自研的数据恢复软件打开被加密的SQL server数据库,发现数据库的头部已被破坏。

  • 3、经过检查,北亚数据恢复工程师确定sqlserver数据库页大小8K,按8K大小切块,向下查找。最终分析得出,bingdu对数据库文件每128K进行一次加密,加密大小为128字节。

  • 4、北亚数据恢复工程师打开数据库备份,发现也是每128K进行一次加密,加密大小为128字节。

  • 5、向下搜索数据库页起始标志01 0F, 北亚数据恢复工程师发现此处没有被加密。经过分析发现数据库与数据库备份加密方式一样,每128K进行一次加密,加密大小为128字节。由于数据库备份头部记录备份信息,数据库页起始向下偏移,因此数据库中加密的页与数据库备份中加密的页正好错开。

  • 6、修复加密数据库。北亚数据恢复工程师结合数据库备份对数据库中加密的页进行修复,通过数据库管理工具附加修改好的数据库,并进行查询验证,后经管理员验证,数据没有问题。

到此这篇关于sqlserver数据库加密后无法使用MDF,LDF,log文件名称被修改的数据恢复的文章就介绍到这了,更多相关sqlserver数据库数据恢复内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • SqlServer2008误操作数据(delete或者update)后恢复数据的方法

    实际工作中,有时会直接在数据库中操作数据,比如对数据进行delete或者update操作,当进行这些操作的时候,如果没有加上 where条件或者where条件不合理,那么导致的结果可想而知,如果操作的又是线上数据库,那么这个后果将会非常严重. 当事情发生后,我们要想办法补救,针对于sqlserver2005数据库,有个很出名的工具Log Exploer.具体操作使用大家可以自行搜索;针对于sqlserver2008也有这样的工具,但是大多是需要付费的...我们尝试用 sqlserver的事务日志

  • .NET多种数据库大数据批量插入、更新(支持SqlServer、MySql、PgSql和Oracle)

    功能介绍 (需要版本5.0.45) 大数据操作ORM性能瓶颈在实体转换上面,并且不能使用常规的Sql去实现 当列越多转换越慢,SqlSugar将转换性能做到极致,并且采用数据库最佳API 操作数据库达到极限性能 功能用法 BulkCopy性能远强于现有市场的 ORM框架,比 EFCore Efcore.Bulkextension快30% BulkUpdate吊打现有所有框架是EFCoreEfcore.Bulkextension 2-3倍之快 //插入 100万 10秒不到 db.Fastest<

  • mssqlserver恢复ldf文件数据的方法

    我们重要的数据是存放在MDF文件中的,如果LDF文件丢失,MDF文件没有丢失,那么数据也可以还原.如果LDF文件没有丢失,MDF文件丢失,且LDF文件是完整的,也是可以提供一定手段还原数据.现象描述我们现在要面对的问题是,针对wtlog_2008_m12这个数据库,只有MDF文件而LDF文件丢失了,SQL Server Management Studio中也没有这个数据库,附加上也会提示错误.解决方法(1)在SQL Server Management Studio删除状态为Recovery Pe

  • SQLServer恢复表级数据详解

    最近几天,公司的技术维护人员频繁让我恢复数据库,因为他们总是少了where条件,导致update.delete出现了无法恢复的后果,加上那些库都是几十G.恢复起来少说也要十几分钟.为此,找了一些资料和工作总结,给出一下几个方法,用于快速恢复表,而不是库,但是切记,防范总比亡羊补牢好. 在生产环境或者开发环境,往往都有某些非常重要的表.这些表存放了核心数据.当这些表出现数据损坏时,需要尽快还原.但是,正式环境的数据库往往都是非 常大的,统计数据表明,1T的数据库还原时间接近24小时,所以因为一个表

  • SqlServer数据库远程连接案例教程

    一.身份验证配置 在sqlserver服务端电脑打开SqlServer Managerment Studio管理工具,首先通过Windows身份验证登录sqlserver 登录成功之后,右键打开属性,在安全性选项卡勾选sql server和windows身份认证模式,在连接选项卡勾选允许远程连接到此服务器,如下图: 然后点击安全性-登录名,右击sa点击属性,设置sa账户密码,在状态选项卡中选择授予和启用 二.sqlserver开启1433端口 右击计算机,打开管理,如图: 找到服务和应用程序,然

  • sqlserver数据库加密后无法使用MDF,LDF,log文件名称被修改的数据恢复

    ​故障:​ 2个SQL server数据库被加密,无法使用. 数据库MDF.LDF.log日志文件名字被修改, 如下图: 数据库备份被加密,文件名字被修改.管理员联系北亚数据恢复中心进行数据修复. ​数据恢复过程:​ 1.备份数据库.为防止数据恢复过程中对原始数据库造成二次破坏,北亚数据恢复工程师为每个库做了备份.所有恢复数据的操作都在备份上进行, 避免了对原始数据造成损坏的可能. 2.使用北亚自研的数据恢复软件打开被加密的SQL server数据库,发现数据库的头部已被破坏. 3.经过检查,北

  • SQLSERVER数据库备份后无法还原的解决办法

    有时候完全备份, 当还原的时候说不时数据库文件不让还原, 解决办法: 可以直接复制数据库文件, xxx.mdf 和 xxx.ldf (实际复制过程中需要先停止sqlserver服务才可以) 用 sp_attach_db 存储过程 就能搞定. 示例 下面的示例将 pubs 中的两个文件附加到当前服务器. EXEC sp_attach_db @dbname = N'pubs', @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Da

  • sqlserver数据库迁移后,孤立账号解决办法

    复制代码 代码如下: declare @cmd nvarchar(4000) set @cmd = N'exec [?].sys.sp_change_users_login @Action = ''Auto_Fix'' , @UserNamePattern = ''qa'' , @LoginName = null , @Password = ''abc'' ' exec sp_msforeachdb @cmd

  • 修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库

    具体不废话了,请看下文代码详细说明吧. 向表中增加一个 varchar 列: ALTER TABLE distributors ADD COLUMN address varchar(30); 从表中删除一个字段: ALTER TABLE distributors DROP COLUMN address RESTRICT; 在一个操作中修改两个现有字段的类型: ALTER TABLE distributors ALTER COLUMN address TYPE varchar(80), ALTER

  • 开启SQLSERVER数据库缓存依赖优化网站性能

    很多时候,我们服务器的性能瓶颈会是在查询数据库的时候,所以对数据库的缓存非常重要,那么有没有一种方法,可以实现SQL SERVER数据库的缓存,当数据表没有更新时,就从缓存中读取,当有更新的时候,才从数据表中读取呢,答案是肯定的,这样的话我们对一些常用的基础数据表就可以缓存起来,比如做新闻系统的新闻类别等,每次就不需要从数据库中读取了,加快网站的访问速度. 那么如何开启SQLSERVER数据库缓存依赖,方法如下: 第一步:修改Web.Config的<system.web>节的配置,代码如下,让

  • sqlserver 数据库压缩与数据库日志(ldf)压缩方法分享

    Access 操作很简单,具体不步骤如下:打开你mdb数据库,工具-->数据库实用工具-->压缩和修复数据库(c)... SQL SERVER 一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大 1.设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQLServer-->SQLServer组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数

  • 使用 Salt + Hash 将密码加密后再存储进数据库

    (一) 为什么要用哈希函数来加密密码 如果你需要保存密码(比如网站用户的密码),你要考虑如何保护这些密码数据,象下面那样直接将密码写入数据库中是极不安全的,因为任何可以打开数据库的人,都将可以直接看到这些密码. 解决的办法是将密码加密后再存储进数据库,比较常用的加密方法是使用哈希函数(Hash Function).哈希函数的具体定义,大家可以在网上或者相关书籍中查阅到,简单地说,它的特性如下: (1)原始密码经哈希函数计算后得到一个哈希值 (2)改变原始密码,哈希函数计算出的哈希值也会相应改变

  • SQLServer数据库中开启CDC导致事务日志空间被占满的原因

    SQLServer中开启CDC之后,在某些情况下会导致事务日志空间被占满的现象为: 在执行增删改语句(产生事务日志)的过程中提示,The transaction log for database '***' is full due to 'REPLICATION'(数据库"***"的事务日志已满,原因为"REPLICATION"). CDC以及复制的基本原理粗略地讲,对于日志的使用步骤如下: 1,每当基础表(开启了CDC或者replication的表)产生事务性操作

  • SQLServer数据库误操作恢复的方法

    目录 前言 一.恢复数据实例 1.创建初始数据 2.保证数据恢复的前提条件 3.模拟不小心误操作 4.开始恢复 二.恢复数据原理 1.数据库文件类型 2.使用bak恢复数据原理 总结 参考 前言 在日常开发工作中,有可能会存在数据库的误操作,比如不小心删除了一个表或者删除了一堆数据,这个时候我们就需要将数据库进行恢复,恢复到误操作以前的状态,而这篇文章就是主要如何在误操作之后,恢复数据库的数据. 一.恢复数据实例 1.创建初始数据 use master if exists (select * f

  • sqlserver 2000数据库同步 同步两个SQLServer数据库的内容

    复制前要做好的准备工作: 1.发布服务器,订阅服务器都创建一个同名的windows用户,并设置相同的密码,做为发布快照文件夹的有效访问用户 我的电脑 控制面板 管理工具 计算机管理 用户和组 右键用户 新建用户 建立一个隶属于administrator组的登陆windows的用户 2.在发布服务器上,新建一个共享目录,做为发布的快照文件的存放目录,操作: 我的电脑 D:\ 新建一个目录,名为: PUB 右键这个新建的目录 属性 共享 选择"共享该文件夹" 通过"权限"

随机推荐