CN106648985A - 一种文本数据库的容灾修复方法及装置 - Google Patents
一种文本数据库的容灾修复方法及装置 Download PDFInfo
- Publication number
- CN106648985A CN106648985A CN201611200793.7A CN201611200793A CN106648985A CN 106648985 A CN106648985 A CN 106648985A CN 201611200793 A CN201611200793 A CN 201611200793A CN 106648985 A CN106648985 A CN 106648985A
- Authority
- CN
- China
- Prior art keywords
- database
- disaster tolerance
- script
- operation log
- backup
- 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/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- 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/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- 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
本发明提供了一种文本数据库的容灾修复方法和装置,所述方法主要包括:检测数据库是否存在数据损坏;若所述数据库存在数据损坏,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。通过本发明,无需引入新的资源,在没有大规模增加***开销的情况下,解决了现有技术中缺少针对文本数据库的容灾修复,提高了文本数据库的可用性。
Description
技术领域
本发明涉及数据库存储领域,具体而言,涉及一种文本数据库的容灾修复方法及装置。
背景技术
在目前的移动通信网管监控***中,会大量的运用数据库进行数据缓存。基于成本、易用性等多方面因素的考虑。目前***使用开源的文本数据库(FB、Sqlite)的方式已经非常普遍。文本数据库具有体积小、资源占用少、操作维护简单等便利,但是它的最大缺陷是数据库在异常情况下的损坏后的恢复,由于没有商业数据库的比较成熟的数据恢复机制。往往数据库损坏后,意味着数据的丢失。
在正常的数据库损坏后的恢复中,都是需要人工进行干预的,通过人工的操作把之前备份的数据导入到事后数据库中。这种处理的弊端很明显:
1、无法在***出现问题的第一时间就将数据进行恢复,特别是如果***问题发生在无人值守的情况下,将大大延误***的解决。
2、人工的干预人为地降低了***的可靠性,增加了故障的隐患。
发明内容
本发明实施例提供了一种文本数据库的修复方法及装置,以至少解决相关技术中缺少针对文本数据库损坏后能够及时、自动和稳定的对数据库修复的问题。
根据本发明的一个实施例,提供了一种文本数据库的容灾修复方法,包括:
检测数据库是否存在数据损坏;
若所述数据库存在数据损坏,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
优选地,若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
优选地,根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
根据本发明的另一个实施例,提供了一种文本数据库的容灾修复的装置,包括:
检测模块,用于检测数据库是否存在数据损坏;
修复模块,用于在所述数据库存在数据损坏时,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
优选地,若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
优选地,根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
有益效果:通过本发明的技术方案,在数据库存在数据损坏时,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复,无需引入新的资源,在没有大规模增加***开销的情况下,解决了现有技术中缺少针对文本数据库的容灾修复,并能使用***自动、及时和稳定的对数据库进行数据修复,大大提高了文本数据库的可用性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例文本数据库容灾修复方法的示意图;
图2是根据本发明实施例文本数据库容灾修复方法的流程图;
图3是根据本发明实施例文本数据库容灾修复中间文件清理流程图;
图4是根据本发明实施例文本数据库容灾修复装置的示意图;
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
方法实施例
结合上述提到的问题,在本发明实施例中提供了一种文本数据库容灾修复方法,如图1所示,该方法示意图包括:
S101:检测数据库是否存在数据损坏;
S102:若所述数据库存在数据损坏,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
可选地,若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
可选地,根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
通过上述方法步骤,数据库***能够依据现有的数据备份规则找到近期的数据库完整备份,并利用日志库的时间排序查找到备份库生成后用户执行的命令,通过去除其中未对数据库进行写操作的查询命令,生成一份增、删、改操作的批命令数据。然后再将这些数据重新导入到文本数据库中来保证数据库数据的完整性和准确性。并且能够通过告警的方式直接通过展示给运维任务,从而使运维人员能够快速进行数据核对,保证数据的准确性。
本发明实施例提供了一种文本数据库的容灾修复方法的流程图,如图2所示,包括:
S201:进入数据库巡检,读取知识库内容,执行巡检命令;
S202:返回结果是否正常;若正常,则进入S203;进异常则进入S204;
S203:流程结束;
S204:是否存在备份的脚本文件,若存在,则进入S206;若不存在,则进入S205;
S205:获取最新备份库生成时间;
S206:获取最新备份库,获取备份脚本文件;
S207:执行脚本,结果导入数据库中;
S208:生成新库,计算数据库文件校验和;
S209:查询操作日志库,并导出文件;
S210:剔除查询类命令,保留增删改命令日志;
S211:将文件中的日志记录导成批处理命令;
S212:执行批处理;
S213:和保存的文件校验和进行比较;
S214:触发告警。
本发明实施例提供了文本数据库容灾修复中间文件清理流程图,如图3所示,包括:
S301:接收用户操作;
S302:是否导致数据变理(增删改)操作;若否,则流程结束;若是,则进入S303;
S303:数据入库操作;
S304:判断入库是否成功;若成功,则进入S305;进失败,***则提示错误;
S305:是否需要保存入库脚本;若保存,则进入S306;若不保存,则入S307;
S306:将入库脚本缓存文件;
S307:记录操作日志;
数据库***在每次传送后(保证网管服务器上的数据和前台数据是一致的),都需要对现有文本数据库进行保存,作为基础数据恢复库。在***资源允许的情况下,配置成入库脚本文件缓存机制。这样每个入库动作都将生成Sql脚本制动保存在缓存文件中。如果数据脚本无法缓存则通过操作日志中记录的动作进行恢复。缓存文件在进行数据传送后,作用就已经失去。因此数据传送后需要删除,后续的操作会生成新的缓存文件。
装置实施例
该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是本发明实施例提供的一种文本数据库容灾修复的装置,包括:
检测模块41:用于检测数据库是否存在数据损坏;
修复模块42:用于在所述数据库存在数据损坏时,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
可选地,若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
可选地,根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
上述装置不限于存在于数据库自身内部,只要能满足检测数据损坏以以及实现对数据库的容灾修复即可。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
另外本发明还提供一种存储介质,用于执行上述方法。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种文本数据库的容灾修复方法,其特征在于,
检测数据库是否存在数据损坏;
若所述数据库存在数据损坏,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
2.如权利要求1所述的方法,其特征在于,根据所述数据库是否设置备份容灾脚本对数据库进行容灾修复包括:
若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
3.如权利要求2所述的方法,所述根据所述备份库中的操作日志对所述数据库进行容灾修复包括:
根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
4.一种文本数据库的容灾修复装置,所述装置包括:
检测模块,用于检测数据库是否存在数据损坏;
修复模块,用于在所述数据库存在数据损坏时,根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复。
5.如权利要求4所述的装置,其特征在于,所述根据所述数据库是否设置备份容灾脚本对所述数据库进行容灾修复包括:
若所述数据库设置了容灾脚本,则采用最新备份库和容灾脚本的方式对所述数据库进行容灾修复;
若所述数据库没有设置容灾脚本,则根据所述备份库中的操作日志对所述数据库进行容灾修复。
6.如权利要求5所述的装置,其特征在于,所述根据所述备份库中的操作日志对所述数据库进行容灾修复包括:
根据所述备份库生成时间,采集所述时间后的所有操作日志;
对所述操作日志进行处理,保留对所述数据库修改的操作日志数据;
通过所述备份库执行所述操作日志数据完成对所述数据库的容灾修复。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611200793.7A CN106648985A (zh) | 2016-12-22 | 2016-12-22 | 一种文本数据库的容灾修复方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611200793.7A CN106648985A (zh) | 2016-12-22 | 2016-12-22 | 一种文本数据库的容灾修复方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106648985A true CN106648985A (zh) | 2017-05-10 |
Family
ID=58826438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611200793.7A Pending CN106648985A (zh) | 2016-12-22 | 2016-12-22 | 一种文本数据库的容灾修复方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106648985A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681495A (zh) * | 2018-05-28 | 2018-10-19 | 郑州云海信息技术有限公司 | 一种坏块修复方法及装置 |
CN116737467A (zh) * | 2023-08-15 | 2023-09-12 | 金篆信科有限责任公司 | 数据库自动检测和修复的方法、装置、***及介质 |
-
2016
- 2016-12-22 CN CN201611200793.7A patent/CN106648985A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108681495A (zh) * | 2018-05-28 | 2018-10-19 | 郑州云海信息技术有限公司 | 一种坏块修复方法及装置 |
CN116737467A (zh) * | 2023-08-15 | 2023-09-12 | 金篆信科有限责任公司 | 数据库自动检测和修复的方法、装置、***及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107506451B (zh) | 用于数据交互的异常信息监控方法及装置 | |
US9465685B2 (en) | Identifying solutions to application execution problems in distributed computing environments | |
CN104965754A (zh) | 任务调度方法及任务调度装置 | |
US20150169430A1 (en) | Selecting webpage test paths | |
US9378078B2 (en) | Controlling method, information processing apparatus, storage medium, and method of detecting failure | |
CN105930226B (zh) | 一种数据处理方法及装置 | |
CN106201788A (zh) | 用于分布式存储集群的副本修复方法及*** | |
CN107423090B (zh) | 一种Flash播放器异常日志管理方法及*** | |
CN114077518A (zh) | 数据快照方法、装置、设备及存储介质 | |
CN106648985A (zh) | 一种文本数据库的容灾修复方法及装置 | |
CN110716804A (zh) | 无用资源的自动删除方法、装置、存储介质及电子设备 | |
US20150363414A1 (en) | Processing large xml files by splitting and hierarchical ordering | |
CN112433888A (zh) | 数据处理方法及装置、存储介质和电子设备 | |
US11762821B2 (en) | Moving window data deduplication in distributed storage | |
CN115454958A (zh) | 基于人工智能的数据处理方法、装置、设备、***及介质 | |
US9141460B2 (en) | Identify failed components during data collection | |
US20240061701A1 (en) | Memory sharing method and device for virtual machines | |
CN115115062A (zh) | 机器学习模型建立方法、相关装置及计算机程序产品 | |
US10291700B2 (en) | Network optimized scan with dynamic fallback recovery | |
CN112235332B (zh) | 一种集群的读写切换方法和装置 | |
CN113485872A (zh) | 故障处理方法、装置及分布式存储*** | |
CN113467941A (zh) | 用于分享信息的方法和装置 | |
CN113810242A (zh) | ***日志分析方法及装置 | |
CN104239182A (zh) | 一种集群文件***脑裂处理方法和装置 | |
US20120233224A1 (en) | Data processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170510 |
|
WD01 | Invention patent application deemed withdrawn after publication |