一种数据库资源隔离测试方法、系统、终端及存储介质与流程

文档序号:20346783发布日期:2020-04-10 22:41阅读:248来源:国知局
本发明涉及数据库测试
技术领域
:,具体涉及一种数据库资源隔离测试方法、系统、终端及存储介质。
背景技术
::云海insight平台通过dataspace组件为不同的用户创建数据空间,后通过数据同步,将集群中所有的数据目录加载进来,并为相应的资源分别添加权限,从而实现数据及计算资源的隔离。所以在传统的测试方法上,需要进行用户、资源空间目录等信息的配置,并且需要登录后台服务器认证不同的数据空间用户,进行命令参数测试。在这个过程中,操作比较复杂,且容易出现错误,增大了测试的难度。技术实现要素:针对现有技术的上述不足,本发明提供一种数据库资源隔离测试方法、系统、终端及存储介质,以解决上述技术问题。第一方面,本发明提供一种数据库资源隔离测试方法,包括:在脚本中封装用户配置信息;利用所述脚本在集群dataspace组件设置具有数据空间目录的用户;对用户所属空间资源执行第一操作权限测试;对用户非所属空间资源执行第二操作权限测试。进一步的,所述利用脚本在集群dataspace组件设置具有数据空间目录的用户,包括:执行部署环境检查装置;获取服务器执行日期并根据所述执行日期创建日志文件;销毁当前系统用户已认证的用户身份;对设置的用户进行身份认证并校验认证是否成功。进一步的,所述对用户所属空间资源执行第一操作权限测试,包括:定位所述用户拥有的数据库;在用户所属数据库中创建表文件并将创建结果写入测试日志;在用户所属数据库中插入数据并查询表并将插入结果写入测试日志;在用户所属数据库中删除表文件并将创建结果写入测试日志。进一步的,所述对用户非所属空间资源执行第二操作权限测试,包括:进入用户非所属数据库;在所述非所属数据库中创建表文件并将创建结果写入测试日志。第二方面,本发明提供一种数据库资源隔离测试系统,包括:脚本封装单元,配置用于在脚本中封装用户配置信息;用户设置单元,配置用于利用所述脚本在集群dataspace组件设置具有数据空间目录的用户;第一测试单元,配置用于对用户所属空间资源执行第一操作权限测试;第二测试单元,配置用于对用户非所属空间资源执行第二操作权限测试。进一步的,所述用户设置单元包括:环境检查模块,配置用于执行部署环境检查装置;日志创建模块,配置用于获取服务器执行日期并根据所述执行日期创建日志文件;认证销毁模块,配置用于销毁当前系统用户已认证的用户身份;身份认证模块,配置用于对设置的用户进行身份认证并校验认证是否成功。进一步的,所述第一测试单元包括:目标定位模块,配置用于定位所述用户拥有的数据库;文件创建模块,配置用于在用户所属数据库中创建表文件并将创建结果写入测试日志;数据插入模块,配置用于在用户所属数据库中插入数据并查询表并将插入结果写入测试日志;文件删除模块,配置用于在用户所属数据库中删除表文件并将创建结果写入测试日志。进一步的,所述第二测试单元包括:目标进入模块,配置用于进入用户非所属数据库;创建测试模块,配置用于在所述非所属数据库中创建表文件并将创建结果写入测试日志。第三方面,提供一种终端,包括:处理器、存储器,其中,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。本发明的有益效果在于,本发明提供的数据库资源隔离测试方法、系统、终端及存储介质,以shell脚本为开发语言,在集群dataspace组件设置不同数据空间目录的用户,不同用户具有各自的数据库。通过自动化脚本认证用户,后采用用户对其数据库进行查看,并对其内的表进行增、删、改、查等操作,查看是否有权限操作;然后用户再对其他用户的数据库进行查看,并对其内的表进行增删改查等操作,查看是否有权限,并且以日志的形式记录测试结果。本发明通过自动化脚本的运用,不仅验证了insight平台对hbase数据库资源隔离的有效性,而且保留了执行日志,也提高了测试效率,节约人力资源,为集群的hbase数据库资源隔离测试提供了保证和依据。此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一个实施例的方法的示意性流程图。图2是本发明一个实施例的系统的示意性框图。图3为本发明实施例提供的一种终端的结构示意图。具体实施方式为了使本
技术领域
:的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种数据库资源隔离测试系统。如图1所示,该方法100包括:步骤110,在脚本中封装用户配置信息;步骤120,利用所述脚本在集群dataspace组件设置具有数据空间目录的用户;步骤130,对用户所属空间资源执行第一操作权限测试;步骤140,对用户非所属空间资源执行第二操作权限测试。可选地,作为本发明一个实施例,所述利用脚本在集群dataspace组件设置具有数据空间目录的用户,包括:执行部署环境检查装置;获取服务器执行日期并根据所述执行日期创建日志文件;销毁当前系统用户已认证的用户身份;对设置的用户进行身份认证并校验认证是否成功。可选地,作为本发明一个实施例,所述对用户所属空间资源执行第一操作权限测试,包括:定位所述用户拥有的数据库;在用户所属数据库中创建表文件并将创建结果写入测试日志;在用户所属数据库中插入数据并查询表并将插入结果写入测试日志;在用户所属数据库中删除表文件并将创建结果写入测试日志。可选地,作为本发明一个实施例,所述对用户非所属空间资源执行第二操作权限测试,包括:进入用户非所属数据库;在所述非所属数据库中创建表文件并将创建结果写入测试日志。为了便于对本发明的理解,下面以本发明数据库资源隔离测试方法的原理,结合实施例中对数据库资源隔离功能进行测试的过程,对本发明提供的数据库资源隔离测试方法做进一步的描述。具体的,所述数据库资源隔离测试方法包括:s1、在脚本中封装用户配置信息。本实施例采用双用户进行测试,便于区分分别命名为用户a和用户b。运行dataspace系统检测,检查服务是否异常。新建用户a,所属hbase数据库空间为testa;新建用户b,所属hbase数据库空间为testb。s2、利用所述脚本在集群dataspace组件设置具有数据空间目录的用户。#执行部署环境检查装置./autotest.sh#获取服务器执行日期al_date=“date+%y%m%d”#根据服务器日期创建日志文件if[!-f"$al_date.log"];thenecho“thelogisnotexist,andyouhavetocreatealog!”touch$al_date.logfi#销毁当前系统用户已认证的用户身份kdestroy#认证用户akinit-kt/etc/…/keytabs/usera.keytaba#检查身份认证是否成功usera_info=”klist”s3、对用户所属空间资源执行第一操作权限测试。#进入到hbase界面hbaseshell<<eof#查看hbase的库名,检查用户a是否拥有testa数据库namespaceinfo_a=list_namespace#在testa库中创建hbase表,确认用户a是否拥有权限info_a2=create“tablea”,”colname”#在testa库中插入数据并查询表put“tablea”,”r1”,”colname”,”name”info_a3=scan“tablea”#在testa库中删除hbase表,确认用户a是否拥有权限disable“tablea”info_a4=drop“tablea”#退出hbaseshell界面eofs4、对用户非所属空间资源执行第二操作权限测试。#进入到hbase界面hbaseshell<<eof#查看hbase的库名,检查用户a是否拥有用户b的数据库testbnamespaceinfo_b=list_namespace#在testb库中创建hbase表,确认用户a是否拥有权限info_b1=create“tableb”,”colname”#退出hbaseshell界面eof其中步骤s3和步骤s4中的执行结果都写入测试日志中。脚本以:tee–aal_date.log日志追加的方式记录步骤的执行结果。如图2示,该系统200包括:脚本封装单元210,配置用于在脚本中封装用户配置信息;用户设置单元220,配置用于利用所述脚本在集群dataspace组件设置具有数据空间目录的用户;第一测试单元230,配置用于对用户所属空间资源执行第一操作权限测试;第二测试单元240,配置用于对用户非所属空间资源执行第二操作权限测试。可选地,作为本发明一个实施例,所述用户设置单元包括:环境检查模块,配置用于执行部署环境检查装置;日志创建模块,配置用于获取服务器执行日期并根据所述执行日期创建日志文件;认证销毁模块,配置用于销毁当前系统用户已认证的用户身份;身份认证模块,配置用于对设置的用户进行身份认证并校验认证是否成功。可选地,作为本发明一个实施例,所述第一测试单元包括:目标定位模块,配置用于定位所述用户拥有的数据库;文件创建模块,配置用于在用户所属数据库中创建表文件并将创建结果写入测试日志;数据插入模块,配置用于在用户所属数据库中插入数据并查询表并将插入结果写入测试日志;文件删除模块,配置用于在用户所属数据库中删除表文件并将创建结果写入测试日志。可选地,作为本发明一个实施例,所述第二测试单元包括:目标进入模块,配置用于进入用户非所属数据库;创建测试模块,配置用于在所述非所属数据库中创建表文件并将创建结果写入测试日志。图3为本发明实施例提供的一种终端系统300的结构示意图,该终端系统300可以用于执行本发明实施例提供的数据库资源隔离测试方法。其中,该终端系统300可以包括:处理器310、存储器320及通信单元330。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中,该存储器320可以用于存储处理器310的执行指令,存储器320可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。当存储器320中的执行指令由处理器310执行时,使得终端300能够执行以下上述方法实施例中的部分或全部步骤。处理器310为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器320内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(integratedcircuit,简称ic)组成,例如可以由单颗封装的ic所组成,也可以由连接多颗相同功能或不同功能的封装ic而组成。举例来说,处理器310可以仅包括中央处理器(centralprocessingunit,简称cpu)。在本发明实施方式中,cpu可以是单运算核心,也可以包括多运算核心。通信单元330,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-onlymemory,简称:rom)或随机存储记忆体(英文:randomaccessmemory,简称:ram)等。因此,本发明以shell脚本为开发语言,在集群dataspace组件设置不同数据空间目录的用户,不同用户具有各自的数据库。通过自动化脚本认证用户,后采用用户对其数据库进行查看,并对其内的表进行增、删、改、查等操作,查看是否有权限操作;然后用户再对其他用户的数据库进行查看,并对其内的表进行增删改查等操作,查看是否有权限,并且以日志的形式记录测试结果。本发明通过自动化脚本的运用,不仅验证了insight平台对hbase数据库资源隔离的有效性,而且保留了执行日志,也提高了测试效率,节约人力资源,为集群的hbase数据库资源隔离测试提供了保证和依据,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本
技术领域
:的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1