CN108829782A - 数据表清理方法、服务器及计算机可读存储介质 - Google Patents
数据表清理方法、服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108829782A CN108829782A CN201810548332.1A CN201810548332A CN108829782A CN 108829782 A CN108829782 A CN 108829782A CN 201810548332 A CN201810548332 A CN 201810548332A CN 108829782 A CN108829782 A CN 108829782A
- Authority
- CN
- China
- Prior art keywords
- cleaning
- data
- tables
- allocation list
- clearance
- 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.)
- Granted
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 218
- 238000003860 storage Methods 0.000 title claims abstract description 98
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000013507 mapping Methods 0.000 claims abstract description 14
- 238000002347 injection Methods 0.000 claims description 33
- 239000007924 injection Substances 0.000 claims description 33
- 238000005192 partition Methods 0.000 claims description 23
- 238000012795 verification Methods 0.000 claims description 23
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000012423 maintenance Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 238000005201 scrubbing Methods 0.000 description 9
- 238000001914 filtration Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000012937 correction Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 239000000243 solution Substances 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012216 screening Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- 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
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据表清理方法,该方法包括:预先设置表类型和存储类型的映射关系;初始化清理配置表;扫描并确定待清理数据表并写入所述清理配置表;查询所述清理配置表,将所述清理配置表中的所述待清理数据表清除。本发明还提供一种服务器及计算机可读存储介质。本发明提供的数据表清理方法、服务器及计算机可读存储介质能够实现数据库中数据表的快速清理,有效的改善数据库***的运行性能,提高了运维效率,减少了运维成本。
Description
技术领域
本发明涉及数据处理域,尤其涉及一种数据表清理方法、服务器及计算机可读存储介质。
背景技术
在目前的业务***运行过程中,随着多个项目的实施,承载关键业务的核心业务***数据库变得日益庞大。随着时间的推移以及业务量的增长,数据库数量不断增加,数据量也日渐臃肿,数据库承载压力越来越大,严重影响了数据库***运行性能。
另一方面,现有的数据表清理过程中,需要管理人员实时监控数据表空间是否发出警告,在确认数据表空间不足后,需判断是否有扩展存储以增加表空间,或者进一步确认清理对象。然而,面对越来越多的数据***及日渐提升的数据复杂度,人员管理难度越来越大,管理人员无法完全掌控整个数据***,对需要清理的数据表也很难确认。因此,如何对数据库数据时效性加强管理,对历史数据表进行有效治理,成为一个尤为重要的问题。
发明内容
有鉴于此,本发明提出一种数据表清理方法、服务器及计算机可读存储介质,以解决如何对数据时效性加强管理,对历史数据进行有效治理的问题。
首先,为实现上述目的,本发明提出一种数据表清理方法,该方法包括步骤:
预先设置表类型和存储类型的映射关系;
建立清理配置表初始化清理配置表;
扫描并确定待清理数据表并写入所述清理配置表定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表;及
查询所述清理配置表,将所述清理配置表中的所述待清理数据表清除。可选地,所述扫描并确定待清理数据表并写入所述清理配置表定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表的步骤具体包括:
定时扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定与对应的存储分区或创建时间段;
确定清理条件;将本次需要删除的数据表作为所述待清理数据表写入所述清理配置表;
定时扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定对应的存储分区或创建时间段;
将满足所述清理条件的数据表作为所述待清理数据表写入所述清理配置表;
根据所述清理配置表中查询每一所述待清理数据表的对应的存储类型确定每一所述待清理数据表对应的清理方式,并写入所述清理配置表;
若待第一待清理数据表对应的存储类型为分区存储,则将所述第一待清理数据表的清理方式设置为清分区方式;
若第二待清理数据表对应的存储类型为普通存储,则将所述第二待清理数据表的清理方式设置为普通删除方式。
可选地,在所述查询所述清理配置表,将所述清理配置表中的待清理数据表清除的步骤之前还可以包括步骤:
对所述清理配置表的信息进行SQL注入校验;
若通过SQL注入校验,则按照所述清理配置表对待清理数据表进行清除。
可选地,若所述清理配置表的信息未通过SQL注入校验,则放弃此次清理操作,并删除现有清理配置表,并重新初始化清理配置表。
此外,为实现上述目的,本发明还提供一种服务器,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的数据表清理***,所述数据表清理***被所述处理器执行时实现如上述的数据表清理方法的步骤。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有数据表清理***,所述数据表清理***可被至少一个处理器执行,以使所述至少一个处理器执行如上述的数据表清理方法的步骤。
相较于现有技术,本发明所提出的数据表清理方法、服务器及计算机可读存储介质,可以通过预先设置表类型和存储类型的映射关系并初始化清理配置表,然后扫描并确定待清理数据表并写入所述清理配置表,,最后查询所述清理配置表,对所述清理配置表的信息进行SQL注入校验,在通过校验之后将所述清理配置表中的待清理数据表清除。实现了数据库中数据表的快速清理,有效的改善数据库***的运行性能,提高了运维效率,减少了运维成本。
附图说明
图1是本发明服务器一可选的硬件架构的示意图;
图2是本发明数据表清理***第一实施例的程序模块示意图;
图3是本发明数据表清理***第二实施例的程序模块示意图;
图4是本发明数据表清理***第三实施例的程序模块示意图;
图5是本发明数据表清理方法第一实施例的流程示意图;
图6是本发明数据表清理方法第二实施例的流程示意图。
附图标记:
服务器 | 2 |
存储器 | 11 |
处理器 | 12 |
网络接口 | 13 |
数据表清理*** | 200 |
映射模块 | 201 |
建立模块 | 202 |
扫描模块 | 203 |
清除模块 | 204 |
校验模块 | 205 |
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明服务器2一可选的硬件架构的示意图。
本实施例中,所述服务器2可包括,但不仅限于,可通过***总线相互通信连接存储器11、处理器12、网络接口13。需要指出的是,图1仅示出了具有组件11-13的服务器2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,所述服务器2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,该服务器2可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述服务器2的内部存储单元,例如该服务器2的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述服务器2的外部存储设备,例如该服务器2上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述服务器2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述服务器2的操作***和各类应用软件,例如数据表清理***200的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述服务器2的总体操作。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的数据表清理***200等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在所述服务器2与其他电子设备之间建立通信连接。
至此,己经详细介绍了本发明相关设备的硬件结构和功能。下面,将基于上述介绍提出本发明的各个实施例。
首先,本发明提出一种数据表清理***200。
参阅图2所示,是本发明数据表清理***200第一实施例的程序模块图。
本实施例中,所述数据表清理***200包括一系列的存储于存储器11上的计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的数据表清理操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,数据表清理***200可以被划分为一个或多个模块。例如,在图2中,所述数据表清理***200可以被分割成映射模块201、建立模块202、扫描模块203、清除模块204。其中:
所述映射模块201,用于预先设置表类型和存储类型的映射关系。
具体地,所述表类型包括普通表和分区表。
在一实施例中,可以通过查看数据表的表属性来判断所述数据表的表类型。
具体的,所述存储类型包括普通存储和分区存储。
在一实施例中,所述普通表对应的存储类型为普通存储,所述分区表对应的存储类型为分区存储。
所述建立模块202,用于初始化清理配置表。
具体地,所述清理配置表用于存储待清理数据表的表属性及清理方式。
在一实施例中,所述清理配置表中存储的待清理数据表的表属性可以包括:表名,列名,表类型,创建时间,清理时间周期,清理方式,表属主。其中,所述清理方式包括普通删除方式和清分区方式。
所述扫描模块203,用于扫描并确定待清理数据表并写入所述清理配置表。
具体地,所述扫描并确定待清理数据表并写入所述清理配置表的步骤具体包括:
确定清理条件;
在一实施例中,所述清理条件为待清理数据表的筛选条件,所述清理条件可以包括存储分区及创建时间段。所述筛选条件通过与维护人员的交互来确定,由维护人员确定待清理数据表的存储分区或创建时间段。
定时扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定对应的存储分区或创建时间;
在一实施例中,每隔一预设时间将对每一个数据表进行扫描,通过查询每一数据表的表属性确定每一数据表的创建时间及表类型,当表类型为分区表时进一步确定对应的存储分区。
将满足所述清理条件的数据表作为所述待清理数据表写入所述清理配置表;
根据所述清理配置表中每一所述待清理数据表的存储类型确定每一所述待清理数据表对应的清理方式,并写入所述清理配置表;
若第一待清理数据表对应的存储类型为分区存储,则将所述第一待清理数据表的清理方式设置为清分区方式。
在本实施例中,所述清分区方式为,确定所述待清理数据表的存储分区,将所述存储分区内的数据表进行删除。
若第二待清理数据表对应的存储类型为普通存储,则将所述第二待清理数据表的清理方式设置为普通删除方式。
在本实施例中,所述普通删除方式为根据所述待清理数据表的表属性确定表名,利用Drop函数将所述表名的待清理数据表删除。实现代码可以为:DROP TABLE table_name。
所述清除模块204,用于查询所述清理配置表,将所述清理配置表中的待清理数据表清除。
具体地,数据库会设置一个清理时间周期,所述数据清理周期可以设置为1天、1周或1月。
在一实施例中,当到达所述数据清理周期时间点时,查询所述清理配置表,将所述清理配置表中的待清理数据表按照设置的清理方式清除。
在另一实施例中,统计数据库中各个数据表在所述清理时间周期内的访问频率,当到达所述数据清理周期时间点时,查询所述清理配置表,将访问频率高于一阈值的待清理数据表从所述清理配置表中剔除,将所述清理配置表中的其他数据表按照设置的清理方式清除。
参阅图3所示,是本发明数据表清理***200第二实施例的程序模块图。本实施例中,所述的数据表清理***200除了包括第一实施例中的所述映射模块201、建立模块202、扫描模块203、清除模块204之外,还包括校验模块205。
所述校验模块205用于,并对所述清理配置表的信息进行SQL注入校验;
具体地,所述SQL注入校验可以防止SQL注入式攻击。所述SQL注入式攻击是攻击者把SQL命令***到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。如果攻击者知道应用会将表单中输入的内容直接用于验证身份的查询,他就会尝试输入某些特殊的SQL字符串篡改查询改变其原来的功能,欺骗***授予访问权限。***环境不同,攻击者可能造成的损害也不同,这主要由应用访问数据库的安全权限决定。如果用户的帐户具有管理员或其他比较高级的权限,攻击者就可能对数据库的表执行各种他想要做的操作,包括添加、删除或更新数据,甚至可能直接删除表。
所述校验模块205还用于当通过SQL注入校验时,按照所述清理配置表对待清理数据表进行清除。
在一实施例中,可以通过设置过滤字符串的方式对所述清理配置表进行SQL注入校验。其中,所述过滤的字符串可以包括and、exec、insert、select、delete、update、chr、mid、master、or、truncate、char、declare及join。
在一实施例中,所述SQL注入校验中过滤字符串的实现代码可以为:
所述校验模块205还用于当若所述清理配置表的信息未通过SQL注入校验,则放弃此次清理操作,删除现有清理配置表,并使所述建立模块202重新初始化清理配置表。
本发明所提出的服务器2,可以通过预先设置表类型和存储类型的映射关系并初始化清理配置表,然后定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表,最后查询所述清理配置表,对所述清理配置表的信息进行SQL注入校验,在通过校验之后将所述清理配置表中的待清理数据表清除。实现了数据库中数据表的快速清理,有效的改善数据库***的运行性能,提高了运维效率,减少了运维成本。
此外,本发明还提出一种数据表清理方法。
参阅图4所示,是本发明数据表清理方法第一实施例的流程示意图。在本实施例中,根据不同的需求,图4所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
步骤S400,预先设置表类型和存储类型的映射关系。
具体地,所述表类型包括普通表和分区表。
在一实施例中,可以通过查看数据表的表属性来判断所述数据表的表类型。
具体的,所述存储类型包括普通存储和分区存储。
在一实施例中,所述普通表对应的存储类型为普通存储,所述分区表对应的存储类型为分区存储。
步骤S402,初始化清理配置表。
具体地,所述清理配置表用于存储待清理数据表的表属性及清理方式。
在一实施例中,所述清理配置表中存储的待清理数据表的表属性可以包括:表名,列名,表类型,创建时间,清理时间周期,清理方式,表属主。其中,所述清理方式包括普通删除方式和清分区方式。
步骤S404,扫描并确定待清理数据表并写入所述清理配置表。
进一步的,所述扫描并确定待清理数据表并写入所述清理配置表的具体步骤将在本发明数据表清理方法的第二实施例(图5)进行详述。
步骤S406,查询所述清理配置表,将所述清理配置表中的待清理数据表清除。
具体地,数据库会设置一个清理时间周期,所述数据清理周期可以设置为1天、1周或1月。
在一实施例中,当到达所述数据清理周期时间点时,查询所述清理配置表,将所述清理配置表中的待清理数据表按照设置的清理方式清除。
在另一实施例中,统计数据库中各个数据表在所述清理时间周期内的访问频率,当到达所述数据清理周期时间点时,查询所述清理配置表,将访问频率高于一阈值的待清理数据表从所述清理配置表中剔除,将所述清理配置表中的其他数据表按照设置的清理方式清除。
如图5所示,是本发明数据表清理方法的第二实施例的流程示意图。在本实施例中,根据不同的需求,图5所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
在本实施例中,所述扫描并确定待清理数据表并写入所述清理配置表的步骤,具体包括:
步骤S500、确定清理条件;
在一实施例中,所述清理条件为待清理数据表的筛选条件,所述清理条件可以包括存储分区及创建时间段。所述筛选条件通过与维护人员的交互来确定,由维护人员确定待清理数据表的存储分区或创建时间段。
步骤S502、定时扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定对应的存储分区或创建时间,将满足所述清理条件的数据表作为所述待清理数据表写入所述清理配置表;
在一实施例中,每隔一预设时间将对每一个数据表进行扫描,通过查询每一数据表的表属性确定每一数据表的创建时间及表类型,当表类型为分区表时进一步确定对应的存储分区。
在另一实施例中,可以通过“information_schema.tables”获取数据表,通过读的
方式获取该数据表的文件数据量以及通过“(truncate(DATA_LENGTH/1024+INDEX_LENGTH/
1024,0))”、“TABLE_ROWS”获取数据表的实际数据量。根据该数据表的整体文件数据量和实
际有效数据的数据量确定是否需要对该数据表进行处理。根据该数据表的整体文件数据量
和实际有效数据的数据量可以获得无效数据的数据量,根据无效数据量的大小或者占用的
比例进行判断该数据表是否需要处理。当判断需要处理时,将所述数据表写入所述清理配
置表。
步骤S504、根据所述清理配置表中每一所述待清理数据表的存储类型确定每一所述待清理数据表对应的清理方式,并写入所述清理配置表;
步骤S506、若第一待清理数据表对应的存储类型为分区存储,则将所述第一待清理数据表的清理方式设置为清分区方式;
在本实施例中,所述清分区方式为,确定所述待清理数据表的存储分区,将所述存储分区内的数据表进行删除。
步骤S508、若第二待清理数据表对应的存储类型为普通存储,则将所述第二待清理数据表的清理方式设置为普通删除方式。
在本实施例中,所述普通删除方式为根据所述待清理数据表的表属性确定表名,利用Drop函数将所述表名的待清理数据表删除。实现代码可以为:DROP TABLE table_name。
如图6所示,是本发明数据表清理方法的第三实施例的流程示意图。本实施例中,所述数据表清理方法的步骤S600-S604与第一实施例的步骤S400-S404相类似,区别在于该方法还包括步骤S606-S612。
该方法包括以下步骤:
步骤S600,预先设置表类型和存储类型的映射关系。
具体地,所述表类型包括普通表和分区表。
在一实施例中,可以通过查看数据表的表属性来判断所述数据表的表类型。
具体的,所述存储类型包括普通存储和分区存储。
在一实施例中,所述普通表对应的存储类型为普通存储,所述分区表对应的存储类型为分区存储。
步骤S602,初始化清理配置表。
具体地,所述清理配置表用于存储待清理数据表的表属性及清理方式。
在一实施例中,所述清理配置表中存储的待清理数据表的表属性可以包括:表名,列名,表类型,创建时间,清理时间周期,清理方式,表属主。其中,所述清理方式包括普通删除方式和清分区方式。
步骤S604,扫描并确定待清理数据表并写入所述清理配置表。
步骤S606,对所述清理配置表的信息进行SQL注入校验。
具体地,所述SQL注入校验可以防止SQL注入式攻击。所述SQL注入式攻击是攻击者把SQL命令***到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。如果攻击者知道应用会将表单中输入的内容直接用于验证身份的查询,他就会尝试输入某些特殊的SQL字符串篡改查询改变其原来的功能,欺骗***授予访问权限。***环境不同,攻击者可能造成的损害也不同,这主要由应用访问数据库的安全权限决定。如果用户的帐户具有管理员或其他比较高级的权限,攻击者就可能对数据库的表执行各种他想要做的操作,包括添加、删除或更新数据,甚至可能直接删除表。
在一实施例中,可以通过设置过滤字符串的方式对所述清理配置表进行SQL注入校验。其中,所述过滤的字符串可以包括and、exec、insert、select、delete、update、chr、mid、master、or、truncate、char、declare及join。
在一实施例中,所述SQL注入校验中过滤字符串的实现代码可以为:
步骤S608,判断所述清理配置表的信息是否通过SQL注入校验。
具体的,当所述清理配置表的信息未通过SQL注入校验时,执行步骤S612,当所述清理配置表的信息通过SQL注入校验时,执行步骤S610。
步骤S610,当所述清理配置表的信息通过SQL注入校验时,查询所述清理配置表,将所述清理配置表中的待清理数据表清除。
具体地,数据库会设置一个清理时间周期,所述数据清理周期可以设置为1天、1周或1月。
在一实施例中,当到达所述数据清理周期时间点时,查询所述清理配置表,将所述清理配置表中的待清理数据表按照设置的清理方式清除。
在另一实施例中,统计数据库中各个数据表在所述清理时间周期内的访问频率,当到达所述数据清理周期时间点时,查询所述清理配置表,将访问频率高于一阈值的待清理数据表从所述清理配置表中剔除,将所述清理配置表中的其他数据表按照设置的清理方式清除。
步骤S612,当所述清理配置表的信息未通过SQL注入校验,放弃此次清理操作,并删除现有清理配置表。
在一实施例中,在所述清理配置表的信息未通过SQL注入校验之后,将会生成并保存错误报告,之后将返回步骤S602,重新初始化清理配置表。
本发明所提出的数据表清理方法,可以通过预先设置表类型和存储类型的映射关系并初始化清理配置表,然后定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表,最后查询所述清理配置表,对所述清理配置表的信息进行SQL注入校验,在通过校验之后将所述清理配置表中的待清理数据表清除。实现了数据库中数据表的快速清理,有效的改善数据库***的运行性能,提高了运维效率,减少了运维成本。
此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有数据表清理***,所述数据表清理***可被至少一个处理器执行,以使所述至少一个处理器执行如上所述的数据表清理方法的步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据表清理方法,应用于服务器,其特征在于,所述方法包括步骤:
预先设置表类型和存储类型的映射关系;
初始化清理配置表;
扫描并确定待清理数据表并写入所述清理配置表;及
查询所述清理配置表,将所述清理配置表中的所述待清理数据表清除。
2.如权利要求1所述的数据表清理方法,其特征在于,所述表类型包括普通表和分区表,所述存储类型包括普通存储和分区存储,所述普通表对应的存储类型为普通存储,所述分区表对应的存储类型为分区存储。
3.如权利要求2所述的数据表清理方法,其特征在于,所述扫描并确定待清理数据表并写入所述清理配置表的步骤具体包括:
确定清理条件;
扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定对应的存储分区或创建时间段;
将满足所述清理条件的数据表作为所述待清理数据表写入所述清理配置表;
根据所述清理配置表中每一所述待清理数据表的存储类型确定每一所述待清理数据表对应的清理方式,并写入所述清理配置表;
若第一待清理数据表对应的存储类型为分区存储,则将所述第一待清理数据表的清理方式设置为清分区方式;
若第二待清理数据表对应的存储类型为普通存储,则将所述第二待清理数据表的清理方式设置为普通删除方式。
4.如权利要求1所述的数据表清理方法,其特征在于,在所述查询所述清理配置表,将所述清理配置表中的待清理数据表清除的步骤之前还可以包括步骤:
对所述清理配置表的信息进行SQL注入校验;
若通过SQL注入校验,则按照所述清理配置表对待清理数据表进行清除。
5.如权利要求4所述的数据表清理方法,其特征在于,若所述清理配置表的信息未通过SQL注入校验,则放弃此次清理操作,删除现有清理配置表,并重新初始化清理配置表。
6.一种服务器,其特征在于,所述服务器包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的数据表清理***,所述数据表清理***被所述处理器执行时实现如下步骤:
预先设置表类型和存储类型的映射关系;
建立清理配置表初始化清理配置表;
扫描并确定待清理数据表并写入所述清理配置表定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表;及
查询所述清理配置表,将所述清理配置表中的所述待清理数据表清除。
7.如权利要求6所述的服务器,其特征在于,所述表类型包括普通表和分区表,所述存储类型包括普通存储和分区存储,所述普通表对应的存储类型为普通存储,所述分区表对应的存储类型为分区存储。
8.如权利要求7所述的服务器,其特征在于,所述扫描并确定待清理数据表并写入所述清理配置表定时扫描数据库中每一个数据表,确定本次需要删除的数据表并写入所述清理配置表的步骤具体包括:
定时扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定与对应的存储分区或创建时间段;
确定清理条件;将本次需要删除的数据表作为所述待清理数据表写入所述清理配置表;
扫描数据库中每一个数据表,根据所述每一个数据表的表属性确定对应的存储分区或创建时间段;
将满足所述清理条件的数据表作为所述待清理数据表写入所述清理配置表;
根据所述清理配置表中查询每一所述待清理数据表的对应的存储类型确定每一所述待清理数据表对应的清理方式,并写入所述清理配置表;
若待第一待清理数据表对应的存储类型为分区存储,则将所述第一待清理数据表的清理方式设置为清分区方式;
若第二待清理数据表对应的存储类型为普通存储,则将所述第二待清理数据表的清理方式设置为普通删除方式。
9.如权利要求8所述的服务器,其特征在于,在所述查询所述清理配置表,将所述清理配置表中的待清理数据表清除的步骤之前还可以包括步骤:
对所述清理配置表的信息进行SQL注入校验;
若通过SQL注入校验,则按照所述清理配置表对待清理数据表进行清除。
若所述清理配置表的信息未通过SQL注入校验,则放弃此次清理操作,并删除现有清理配置表,并重新初始化清理配置表。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有数据表清理***,所述数据表清理***可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5中任一项所述的数据表清理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810548332.1A CN108829782B (zh) | 2018-05-31 | 2018-05-31 | 数据表清理方法、服务器及计算机可读存储介质 |
PCT/CN2018/102406 WO2019227721A1 (zh) | 2018-05-31 | 2018-08-27 | 数据表清理方法、服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810548332.1A CN108829782B (zh) | 2018-05-31 | 2018-05-31 | 数据表清理方法、服务器及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108829782A true CN108829782A (zh) | 2018-11-16 |
CN108829782B CN108829782B (zh) | 2023-08-25 |
Family
ID=64145500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810548332.1A Active CN108829782B (zh) | 2018-05-31 | 2018-05-31 | 数据表清理方法、服务器及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108829782B (zh) |
WO (1) | WO2019227721A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109299115A (zh) * | 2018-11-30 | 2019-02-01 | 北京锐安科技有限公司 | 一种数据存储方法、装置、服务器及存储介质 |
CN110287183A (zh) * | 2019-05-23 | 2019-09-27 | 中国平安人寿保险股份有限公司 | 数据库表水位的处理方法、装置、计算机设备及存储介质 |
CN110457300A (zh) * | 2019-07-15 | 2019-11-15 | 中国平安人寿保险股份有限公司 | 一种公共测试库的清理方法及装置、电子设备 |
CN110532234A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普科技股份有限公司 | 一种漏洞扫描数据的存储方法及装置 |
CN112199364A (zh) * | 2020-10-16 | 2021-01-08 | 平安国际智慧城市科技股份有限公司 | 数据清洗方法、装置、电子设备及存储介质 |
CN112286922A (zh) * | 2020-10-29 | 2021-01-29 | 中国平安财产保险股份有限公司 | 一种数据清理方法、装置、设备及存储介质 |
CN112965665A (zh) * | 2021-03-09 | 2021-06-15 | 华泰证券股份有限公司 | 一种基于sas和ssd的gp数据库数据存储方法 |
CN113111055A (zh) * | 2021-04-19 | 2021-07-13 | 中国工商银行股份有限公司 | 一种数据表的数据清理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262121A1 (en) * | 1999-09-21 | 2005-11-24 | International Business Machines Corporation | Method, system, program, and data structure for cleaning a database table |
CN102096669A (zh) * | 2009-12-14 | 2011-06-15 | 深圳速浪数字技术有限公司 | 一种数据备份方法和数据备份装置 |
CN104036001A (zh) * | 2014-06-13 | 2014-09-10 | 上海新炬网络技术有限公司 | 基于热表动态优先调度的数据快速清理方法 |
CN105989270A (zh) * | 2015-09-25 | 2016-10-05 | 武汉安天信息技术有限责任公司 | 一种基于云计算的安卓数据库安全防护方法及*** |
CN106557578A (zh) * | 2016-11-23 | 2017-04-05 | 中国工商银行股份有限公司 | 历史数据查询方法及*** |
CN107203643A (zh) * | 2017-06-20 | 2017-09-26 | 郑州云海信息技术有限公司 | 一种删除文件的方法及*** |
CN107862097A (zh) * | 2017-12-21 | 2018-03-30 | 上海新炬网络技术有限公司 | 一种基于TimesTen内存库的表数据智能清理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106598487A (zh) * | 2016-11-21 | 2017-04-26 | 深圳市中博睿存科技有限公司 | 数据销毁方法及装置 |
-
2018
- 2018-05-31 CN CN201810548332.1A patent/CN108829782B/zh active Active
- 2018-08-27 WO PCT/CN2018/102406 patent/WO2019227721A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050262121A1 (en) * | 1999-09-21 | 2005-11-24 | International Business Machines Corporation | Method, system, program, and data structure for cleaning a database table |
CN102096669A (zh) * | 2009-12-14 | 2011-06-15 | 深圳速浪数字技术有限公司 | 一种数据备份方法和数据备份装置 |
CN104036001A (zh) * | 2014-06-13 | 2014-09-10 | 上海新炬网络技术有限公司 | 基于热表动态优先调度的数据快速清理方法 |
CN105989270A (zh) * | 2015-09-25 | 2016-10-05 | 武汉安天信息技术有限责任公司 | 一种基于云计算的安卓数据库安全防护方法及*** |
CN106557578A (zh) * | 2016-11-23 | 2017-04-05 | 中国工商银行股份有限公司 | 历史数据查询方法及*** |
CN107203643A (zh) * | 2017-06-20 | 2017-09-26 | 郑州云海信息技术有限公司 | 一种删除文件的方法及*** |
CN107862097A (zh) * | 2017-12-21 | 2018-03-30 | 上海新炬网络技术有限公司 | 一种基于TimesTen内存库的表数据智能清理方法 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109299115A (zh) * | 2018-11-30 | 2019-02-01 | 北京锐安科技有限公司 | 一种数据存储方法、装置、服务器及存储介质 |
CN110287183A (zh) * | 2019-05-23 | 2019-09-27 | 中国平安人寿保险股份有限公司 | 数据库表水位的处理方法、装置、计算机设备及存储介质 |
CN110287183B (zh) * | 2019-05-23 | 2024-02-02 | 中国平安人寿保险股份有限公司 | 数据库表水位的处理方法、装置、计算机设备及存储介质 |
CN110457300A (zh) * | 2019-07-15 | 2019-11-15 | 中国平安人寿保险股份有限公司 | 一种公共测试库的清理方法及装置、电子设备 |
CN110457300B (zh) * | 2019-07-15 | 2024-02-02 | 中国平安人寿保险股份有限公司 | 一种公共测试库的清理方法及装置、电子设备 |
CN110532234A (zh) * | 2019-08-30 | 2019-12-03 | 杭州迪普科技股份有限公司 | 一种漏洞扫描数据的存储方法及装置 |
CN112199364A (zh) * | 2020-10-16 | 2021-01-08 | 平安国际智慧城市科技股份有限公司 | 数据清洗方法、装置、电子设备及存储介质 |
CN112286922A (zh) * | 2020-10-29 | 2021-01-29 | 中国平安财产保险股份有限公司 | 一种数据清理方法、装置、设备及存储介质 |
CN112965665A (zh) * | 2021-03-09 | 2021-06-15 | 华泰证券股份有限公司 | 一种基于sas和ssd的gp数据库数据存储方法 |
CN112965665B (zh) * | 2021-03-09 | 2023-09-26 | 华泰证券股份有限公司 | 一种基于sas和ssd的gp数据库数据存储方法 |
CN113111055A (zh) * | 2021-04-19 | 2021-07-13 | 中国工商银行股份有限公司 | 一种数据表的数据清理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019227721A1 (zh) | 2019-12-05 |
CN108829782B (zh) | 2023-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108829782A (zh) | 数据表清理方法、服务器及计算机可读存储介质 | |
CN110096857B (zh) | 区块链***的权限管理方法、装置、设备和介质 | |
CN108829781B (zh) | 客户信息查询方法、装置、计算机设备和存储介质 | |
CN107480555A (zh) | 基于区块链的数据库访问权限控制方法及设备 | |
US11095675B1 (en) | System and method for identifying system vulnerabilities | |
US9361457B1 (en) | Use of decoy data in a data store | |
CN110147684A (zh) | 用于实现区块链数据隐私保护的方法及设备 | |
CN104731816A (zh) | 一种处理异常业务数据的方法和装置 | |
US11929985B2 (en) | Network-based authentication rule cleaning and optimization | |
CN105260639A (zh) | 一种脸部识别***的数据更新的方法及装置 | |
CN107402821A (zh) | 共享资源的访问控制方法、装置和设备 | |
CN112580093A (zh) | 基于用户权限的页面显示方法及装置 | |
CN112287400A (zh) | 超级账本中的交易排序方法、装置和计算机设备 | |
CN115203263A (zh) | 数据元件获取方法、***、设备及计算机可读存储介质 | |
CN103235918A (zh) | 可信文件的收集方法及*** | |
CN114356898A (zh) | 数据存储方法、装置、电子设备和存储介质 | |
CN103139136B (zh) | 一种密码的管理方法和设备 | |
CN105988998B (zh) | 关系网络构建方法及装置 | |
CN109493046A (zh) | 基于区块链的商机信息共享方法、电子装置及可读存储介质 | |
CN109725985A (zh) | 虚拟机模板的管理方法及装置 | |
CN109547427A (zh) | 黑名单用户识别方法、装置、计算机设备及存储介质 | |
CN110489416B (zh) | 一种基于数据处理的信息存储方法及相关设备 | |
CN108241732B (zh) | 电子装置、信息处理的方法及存储介质 | |
CN110263060A (zh) | 一种erp电子附件管理方法及计算机设备 | |
CN112118259B (zh) | 一种基于提升树的分类模型的越权漏洞检测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |