CN106897173A - 一种查找和恢复SQL server数据库中被修改记录的方法 - Google Patents
一种查找和恢复SQL server数据库中被修改记录的方法 Download PDFInfo
- Publication number
- CN106897173A CN106897173A CN201710115434.XA CN201710115434A CN106897173A CN 106897173 A CN106897173 A CN 106897173A CN 201710115434 A CN201710115434 A CN 201710115434A CN 106897173 A CN106897173 A CN 106897173A
- Authority
- CN
- China
- Prior art keywords
- field
- file
- record
- changed
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于包括以下步骤,S1:查找并打开被修改的数据库文件;S2:解析所述被修改的数据库文件中的一个或多个记录;S3:查找并打开所述被修改的数据库文件所对应的日志文件;S4:解析所述日志文件中的一个或多个记录;S5:将所述被修改的数据库文件的解析结果与所述日志文件的解析结果进行对比,查找并恢复被修改的数据;本发明可以恢复SQL Server数据库被修改的数据及确定SQL Server数据库的修改痕迹,对数据库的恢复和取证具有有益的效果。
Description
技术领域
本发明属于数据恢复与电子取证领域,涉及数据库的数据恢复与取证,尤其涉及一种查找和恢复SQL server数据库中被修改记录的方法。
背景技术
SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2012的大型多处理器的服务器等多种平台使用,其最大的优势就是在于集成了Microsoft公司的各类产品及资源,提供了强大的可视化界面、高度集成的管理开发工具,在快速构建商业智能(BI)方面颇有建树。SQL Server是Microsoft公司在软件集成方案中的重要一环,在面向中小企业的数据库应用中具有广泛的基础和重要的地位。
但是,由于没有及时备份SQL Server数据库的数据,用户各种误操作而修改了数据库的数据后,想要恢复被修改的数据就变得比较困难。另一方面,由于操作者故意修改SQL Server数据库的数据,想要查找被修改的数据并取得确凿的证据也是比较困难的。
发明内容
本发明针对现有技术的不足和上述问题,提出一种查找和恢复SQL server数据库中被修改记录的方法,将被修改的数据库文件底层的解析结果与日志文件底层的解析结果进行对比,查找并恢复被修改的数据,所述方法包括以下步骤:
S1:查找并打开被修改的数据库文件,所述被修改的数据库文件打开后为十六进制文件;
S2:解析所述被修改的数据库文件中的一个或多个记录,每一记录由多个字段组成,每一所述记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段、字段间隔标识、……,、字段间隔标识、第n字段,其中,n为大于零的自然数;
S3:查找并打开所述被修改的数据库文件所对应的日志文件,所述日志文件打开后为十六进制文件;
S4:解析所述日志文件中的一个或多个记录,每一记录由多个字段组成,每一所述记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段、字段间隔标识、……,、字段间隔标识、第n字段,其中,n为大于零的自然数;
S5:将所述被修改的数据库文件的解析结果与所述日志文件的解析结果进行对比,查找并恢复被修改的数据。
作为优选,所述被修改的数据库文件为后缀mdf的文件,所述日志文件为后缀ldf的文件。
作为优选,所述被修改的数据库文件中的记录与所述日志文件中的记录具有相同的数据结构,不同之处在于,所述日志文件中的记录之间具有长度不等的填充数据,而所述被修改的数据库文件中的记录之间无填充数据。
作为优选,所述步骤S2中,解析所述被修改的数据库文件中的一个或多个记录包括以下步骤:
S201:查找所述记录特征头:每一所述记录前四个字节为所述记录特征头,每一所述数据库文件中的各个所述记录特征头均相同;
S202:查找所述字段及所述字段间隔标识:所述记录特征头后的一个或多个字节为所述第一字段,所述第一字段后连续11个字节为所述字段间隔标识,所述连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;所述字段间隔标识后为第二字段,各字段间均具有所述字段间隔标识,且各字段间依此格式循环。
作为优选,所述步骤S4中,解析所述日志文件中的一个或多个记录包括以下步骤:
S401:查找所述记录特征头:每一所述记录前四个字节为所述记录特征头,每一所述日志文件中的各个所述记录特征头均相同;
S402:查找所述字段及所述字段间隔标识:所述记录特征头后的一个或多个字节为所述第一字段,所述第一字段后连续11个字节为所述字段间隔标识,所述连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;所述字段间隔标识后为第二字段,各字段间均具有所述字段间隔标识,且各字段间依此格式循环。
作为优选,所述被修改的数据库文件中的所述记录特征头与所对应的所述日志文件中的所述记录特征头相同。
与现有技术相比,本发明的有益效果是可以恢复SQL Server数据库被修改的数据及确定SQL Server数据库的修改痕迹,对数据库的恢复和取证具有有益的效果。
附图说明
图1为本发明的主流程图。
图2为本发明中解析被修改的数据库文件的处理流程图。
图3为本发明中解析日志文件的处理流程图。
图4为本发明中被修改的数据库文件的数据结构图。
图5为本发明中日志文件保存的原数据库文件的数据结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步阐述。
如图1所示,一种查找和恢复SQL server数据库中被修改记录的方法,包括以下步骤:
S1:查找并打开被修改的数据库文件,该数据库文件名的后缀为mdf,打开后为十六进制文件,如图4中左侧的十六进制数据所示;
S2:解析该数据库文件中的一个或多个记录,此实施例中,每一记录由2个字段组成,每一记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段;步骤S2包括如图2所示的以下步骤:
S201:查找记录特征头:每一记录前四个字节为记录特征头,每一数据库文件中的各个记录特征头均相同;如图4所示,此实施例中,该记录特征头为30000C00,且每一记录均由该记录特征头30000C00开始;
S202:查找字段及字段间隔标识:记录特征头后的一个或多个字节为第一字段,第一字段后连续11个字节为字段间隔标识,该连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;字段间隔标识后为第二字段,各字段间均具有字段间隔标识,且各字段间依此格式循环;如图4所示,此实施例中,第一字段为80A4BF07,表示金额为13000,后面是11字节的字段间隔标识0000000002000001001700,随后的第二字段为CADFB2CB,表示项目为蔬菜,至此,第一条记录结束。
同理,如图4所示,下一记录特征头也为30000C00,第一字段为00EF1C0D,表示金额为22000,后面是11字节的字段间隔标识0000000002000001001900,随后的第二字段为7A6875726F75,表示项目为zhurou,至此,第二条记录结束。
S3:查找并打开该数据库文件所对应的日志文件,该日志文件名的后缀为ldf,打开后为十六进制文件,如图5中左侧的十六进制数据所示;
S4:解析该日志文件中的一个或多个记录,此实施例中,每一记录由2个字段组成,每一记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段;步骤S4包括如图3所示的以下步骤:
S401:查找记录特征头:每一记录前四个字节为记录特征头,每一日志文件中的各个记录特征头均相同,且被修改的数据库文件中的记录特征头与所对应的日志文件中的记录特征头相同,如图5所示,此实施例中,该记录特征头同被修改的数据库文件中的记录特征头一样为30000C00,且每一记录均由该记录特征头30000C00开始;
S401:查找字段及字段间隔标识:记录特征头后的一个或多个字节为第一字段,第一字段后连续11个字节为字段间隔标识,该连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;字段间隔标识后为第二字段,各字段间均具有字段间隔标识,且各字段间依此格式循环;如图5所示,此实施例中,第一字段为80D1F008,表示金额为15000,后面是11字节的字段间隔标识0000000002000001001700,随后的第二字段为CADFB2CB,表示项目为蔬菜,至此,第一条记录结束;随后为各记录之间长度不等的填充数据。
同理,如图5所示,查找下一记录特征头也为30000C00,此实施例中,第一字段为80B2E60E,表示金额为25000,后面是11字节的字段间隔标识0000000002000001001900,随后的第二字段为7A6875726F75,表示项目为zhurou,至此,第二条记录结束。
S5:将被修改的数据库文件的解析结果与日志文件的解析结果进行对比,查找并恢复被修改的数据。将如图4所示的被修改的数据库文件的解析结果和如图5所示的日志文件的解析结果进行对比,可以查出蔬菜项目的金额由15000改为了13000,而zhurou项目的金额由25000改为了22000。
应当理解的是,本发明不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (6)
1.一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于包括以下步骤:
S1:查找并打开被修改的数据库文件,所述被修改的数据库文件打开后为十六进制文件;
S2:解析所述被修改的数据库文件中的一个或多个记录,每一记录由多个字段组成,每一所述记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段、字段间隔标识、……,、字段间隔标识、第n字段,其中,n为大于零的自然数;
S3:查找并打开所述被修改的数据库文件所对应的日志文件,所述日志文件打开后为十六进制文件;
S4:解析所述日志文件中的一个或多个记录,每一记录由多个字段组成,每一所述记录顺序地包括记录特征头、第一字段、字段间隔标识、第二字段、字段间隔标识、……,、字段间隔标识、第n字段,其中,n为大于零的自然数;
S5:将所述被修改的数据库文件的解析结果与所述日志文件的解析结果进行对比,查找并恢复被修改的数据。
2.根据权利要求1所述的一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于,所述被修改的数据库文件为后缀mdf的文件,所述日志文件为后缀ldf的文件。
3.根据权利要求2所述的一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于,所述被修改的数据库文件中的记录与所述日志文件中的记录具有相同的数据结构,不同之处在于:所述日志文件中的记录之间具有长度不等的填充数据,而所述被修改的数据库文件中的记录之间无填充数据。
4.根据权利要求3所述的一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于,所述步骤S2中,解析所述被修改的数据库文件中的一个或多个记录包括以下步骤:
S201:查找所述记录特征头:每一所述记录前四个字节为所述记录特征头,每一所述数据库文件中的各个所述记录特征头均相同;
S202:查找所述字段及所述字段间隔标识:所述记录特征头后的一个或多个字节为所述第一字段,所述第一字段后连续11个字节为所述字段间隔标识,所述连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;所述字段间隔标识后为第二字段,各字段间均具有所述字段间隔标识,且各字段间依此格式循环。
5.根据权利要求4所述的一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于,所述步骤S4中,解析所述日志文件中的一个或多个记录包括以下步骤:
S401:查找所述记录特征头:每一所述记录前四个字节为所述记录特征头,每一所述日志文件中的各个所述记录特征头均相同;
S402:查找所述字段及所述字段间隔标识:所述记录特征头后的一个或多个字节为所述第一字段,所述第一字段后连续11个字节为所述字段间隔标识,所述连续11个字节为000000000200000100xxxx,其中,xxxx为2字节的任意十六进制数;所述字段间隔标识后为第二字段,各字段间均具有所述字段间隔标识,且各字段间依此格式循环。
6.根据权利要求5所述的一种查找和恢复SQL server数据库中被修改记录的方法,其特征在于,所述被修改的数据库文件中的所述记录特征头与所对应的所述日志文件中的所述记录特征头相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710115434.XA CN106897173A (zh) | 2017-03-01 | 2017-03-01 | 一种查找和恢复SQL server数据库中被修改记录的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710115434.XA CN106897173A (zh) | 2017-03-01 | 2017-03-01 | 一种查找和恢复SQL server数据库中被修改记录的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106897173A true CN106897173A (zh) | 2017-06-27 |
Family
ID=59184461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710115434.XA Pending CN106897173A (zh) | 2017-03-01 | 2017-03-01 | 一种查找和恢复SQL server数据库中被修改记录的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106897173A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108563535A (zh) * | 2018-04-27 | 2018-09-21 | 四川巧夺天工信息安全智能设备有限公司 | 一种对MySQL数据库全库的恢复方法 |
CN109388523A (zh) * | 2018-09-26 | 2019-02-26 | 四川巧夺天工信息安全智能设备有限公司 | 一种基于二进制日志文件恢复MySQL数据库的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102447575A (zh) * | 2011-10-08 | 2012-05-09 | 烽火通信科技股份有限公司 | 一种解析并管理十六进制数据日志文件的方法 |
CN105045817A (zh) * | 2015-06-26 | 2015-11-11 | 司法部司法鉴定科学技术研究所 | 基于事务日志的SQL Server数据库取证分析系统及方法 |
-
2017
- 2017-03-01 CN CN201710115434.XA patent/CN106897173A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102447575A (zh) * | 2011-10-08 | 2012-05-09 | 烽火通信科技股份有限公司 | 一种解析并管理十六进制数据日志文件的方法 |
CN105045817A (zh) * | 2015-06-26 | 2015-11-11 | 司法部司法鉴定科学技术研究所 | 基于事务日志的SQL Server数据库取证分析系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108563535A (zh) * | 2018-04-27 | 2018-09-21 | 四川巧夺天工信息安全智能设备有限公司 | 一种对MySQL数据库全库的恢复方法 |
CN109388523A (zh) * | 2018-09-26 | 2019-02-26 | 四川巧夺天工信息安全智能设备有限公司 | 一种基于二进制日志文件恢复MySQL数据库的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11194828B2 (en) | Method and system for implementing a log parser in a log analytics system | |
CN106649455B (zh) | 一种大数据开发的标准化系统归类、命令集系统 | |
US8918363B2 (en) | Data processing service | |
US8316012B2 (en) | Apparatus and method for facilitating continuous querying of multi-dimensional data streams | |
CN103246664B (zh) | 网页检索方法和装置 | |
US20050289138A1 (en) | Aggregate indexing of structured and unstructured marked-up content | |
EP1612704A1 (en) | Sorting and displaying search engine results by using page category information | |
US20220092062A1 (en) | Method and system for implementing a log parser in a log analytics system | |
US9959326B2 (en) | Annotating schema elements based on associating data instances with knowledge base entities | |
WO2016161381A1 (en) | Method and system for implementing a log parser in a log analytics system | |
JP2013531289A (ja) | 検索におけるモデル情報群の使用 | |
US11392606B2 (en) | System and method for converting user data from disparate sources to bitmap data | |
US7765219B2 (en) | Sort digits as number collation in server | |
JP2004030221A (ja) | 変更対象テーブル自動検出方法 | |
CN110990057A (zh) | 小程序子链信息的提取方法、装置、设备及介质 | |
CN106897173A (zh) | 一种查找和恢复SQL server数据库中被修改记录的方法 | |
US20200380048A1 (en) | Architecture and functional model of a generic data excavation engine | |
US20100205155A1 (en) | System and method for content management and determination of search conditions | |
Bawakid | A schema exploration approach for document-oriented data using unsupervised techniques | |
Dhar et al. | Web Mining: Concepts and Decision-Making Aid | |
Chandrama et al. | Survey on data preprocessing method of web usage mining | |
McCurley et al. | Mining and knowledge discovery from the Web | |
Vora et al. | Modelling architecture for multimedia data warehouse | |
Botes et al. | NoSQL: Revealing Hidden Data | |
Shah et al. | Enhanced Architecture of a Web Warehouse based on Quality Evaluation Framework to Incorporate Quality Aspects in Web Warehouse Creation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170627 |
|
RJ01 | Rejection of invention patent application after publication |