一种检测数据库连通性的方法、系统及电子设备与流程

文档序号:24406018发布日期:2021-03-26 17:09阅读:242来源:国知局
一种检测数据库连通性的方法、系统及电子设备与流程

1.本发明实施例涉及数据库技术领域,具体来说涉及一种检测数据库连通性的方法、系统及电子设备。


背景技术:

2.基于网络安全的要求,防火墙对网络的限制日益严格,对数据走向、数据包的大小也都提出了明确的限制,进而导致业务软件或中间件等软件可能因此出现不能正常访问数据库的情况,为此,各数据库都对应具有检查网络是否畅通的功能。sybase数据库是一款企业级关系型数据库,isql为sybase数据库自带的,以命令行方式连接数据库、执行sql语句的客户端工具,dsedit为sybase数据库自带的,用于配置服务名、数据库ip及端口的图形工具。dsedit软件具有网络检测的功能,可用于初步检测数据库客户端即各应用服务器是否可以连接到数据库服务。
3.现有技术中,虽然sybase数据库的dsedit软件具有检测网络的功能,但其只是对数据库服务器进行一个connect连接操作,并没有实际发送数据真正检查客户端与服务器之间数据传输是否正常。尤其是当客户端可以向服务器发送数据、而服务器无法向客户端返回数据时,客户端软件处于无响应或是正在检测中的状态,不会明确提示网络不通,导致该问题极为隐蔽且不易被发现,仍然存在网络连通性检查不彻底的问题。


技术实现要素:

4.本发明实施例提供了一种检测数据库连通性的方法、系统及电子设备,通过使用网络socket抓取及发送二进制数据,解决现有技术中存在的网络连通性检查不彻底的问题。
5.为实现上述目的,本发明公开了如下技术方案:
6.本发明一方面提供一种检测数据库连通性的方法,所述方法包括以下步骤:
7.在数据库服务器使用socket抓取双向传输的数据包;
8.将抓取的二进制数据拷贝到应用服务器上,并使用网络socket向数据库服务器发送数据;
9.检测是否可以接收到数据库服务器返回的数据,若是,则判断网络连通正常。
10.基于上述方案,进一步的,所述在数据库服务器使用socket抓取双向传输的数据包,包括下述步骤:
11.在数据库服务器设置抓取软件的监听端口和数据库服务的端口;
12.启动抓取软件的socket监听功能;
13.使用数据库客户端工具连接抓取软件的监听端口;
14.抓取软件记录客户端工具发送的连接请求数据,并将该数据转发给数据库服务;
15.数据库服务向抓取软件发送同意连接的回执数据,同时抓取软件记录所述回执数据。
16.进一步的,上述步骤中,所述使用数据库客户端工具连接抓取软件的监听端口,具体可使用sybase数据库的客户端工具isql连接抓取软件的监听端口。
17.进一步的,所述使用网络socket向数据库服务发送数据,包括下述步骤:
18.在应用服务器读取捕捉到的数据;
19.使用socket连接数据库服务的ip和端口,发送捕捉到的数据,并打印其中的可显示字符。
20.作为一种优选,所述检测是否可以接收到数据库服务器返回的数据,检测方式可以为接收数据库服务返回的数据并打印其中的可显示字符,若能正常打印,则判断网络连通正常。
21.作为另一种优选,所述检测是否可以接收到数据库服务器返回的数据,检测方式还可以为检测是否与数据库服务保持连接,若能正常连接,则判断网络连通正常。
22.本发明另一方面提供一种检测数据库连通性的系统,所述系统包括:
23.数据包抓取单元,用于在数据库服务器使用socket抓取双向传输的数据包;
24.数据包发送单元,用于将抓取的二进制数据拷贝到应用服务器上,并使用网络socket向数据库服务器发送数据;
25.连通性检测单元,用于检测是否可以接收到数据库服务器返回的数据并判断网络是否正常。
26.基于上述系统,进一步的,所述数据包抓取单元在数据库服务器使用socket抓取双向传输的数据包,具体包括:在数据库服务器设置抓取软件的监听端口和数据库服务的端口;启动抓取软件的socket监听功能;使用数据库客户端工具连接抓取软件的监听端口;抓取软件记录客户端工具发送的连接请求数据,并将该数据转发给数据库服务;数据库服务向抓取软件发送同意连接的回执数据,同时抓取软件记录所述回执数据。
27.进一步的,所述数据包发送单元使用网络socket向数据库服务器发送数据,具体包括:首先在应用服务器读取捕捉到的数据;然后使用socket连接数据库服务的ip和端口,发送捕捉到的数据,并打印其中的可显示字符。
28.进一步的,所述连通性检测单元检测是否可以接收到数据库服务器返回的数据并判断网络是否正常,其检测方式为通过接收数据库服务返回的数据并打印其中的可显示字符,或者通过检测是否与数据库服务保持连接检测网络是否正常,若能正常打印或者能正常连接,则判断网络连通正常。
29.此外,本发明还提供一种电子设备,所述电子设备包括至少一个处理单元、以及与所述处理单元通信连接的至少一个存储单元:
30.所述存储单元存储有可在处理单元上运行的程序指令;
31.所述处理单元调用所述程序指令能够执行如上所述的检测数据库连通性方法的具体步骤。
32.发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
33.本申请实施例提供的一种检测数据库连通性的方法,首先在数据库服务器使用socket抓取双向传输的数据包;然后将抓取的二进制数据拷贝到应用服务器上,并使用网络socket向数据库服务器发送数据;接下来检测是否可以接收到数据库服务器返回的数
据,若是,则判断网络连通正常。本实施例方法通过使用网络socket抓取、发送二进制数据,解决了现有技术中存在的网络连通性检查不彻底的问题。本方法可以在软件中快速、清晰的展示连接数据库时数据的传输过程,清楚的显示网络连通情况,提高公司分析sybase数据库网络连通性的能力。此外,本方法同样适用于其他数据库的连通性检测,扩展性强,应用广泛。
34.本申请实施例提供的一种检测数据库连通性的系统及电子设备,能够实现上述的检测数据库连通性的方法,并取得上文所述的技术效果。
附图说明
35.此处的附图被并入说明书中并构成说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
36.图1为本申请实施例提供的一种检测数据库连通性的方法流程示意图;
37.图2为图1中步骤s1的实现过程流程示意图;
38.图3为本申请实施例提供的一种检测数据库连通性的系统结构示意图。
具体实施方式
39.为使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
40.图1示出了本发明实施例一种检测数据库连通性的方法流程示意图。
41.参照图1,本实施例的方法,包括以下步骤:
42.s1、在数据库服务器使用socket抓取双向传输的数据包;
43.具体的,如图2所示,本步骤中所述在数据库服务器使用socket抓取双向传输的数据包,具体工作流程包括:
44.s11、在数据库服务器设置抓取软件的监听端口和数据库服务的端口;
45.s12、启动抓取软件的socket监听功能;
46.s13、使用数据库客户端工具连接抓取软件的监听端口;
47.s14、抓取软件记录客户端工具发送的连接请求数据,并将该数据转发给数据库服务;
48.s15、数据库服务向抓取软件发送同意连接的回执数据,同时抓取软件记录所述回执数据。
49.上述步骤s13中,所述使用数据库客户端工具连接抓取软件的监听端口,具体可使用sybase数据库的客户端工具isql连接抓取软件的监听端口。应当说明的是,本步骤同样可也扩展应用于其它数据库的相应客户端工具。
50.s2、将抓取的二进制数据拷贝到应用服务器上,并使用网络socket向数据库服务器发送数据;
51.具体来说,在本步骤中,使用网络socket向数据库服务器发送数据,具体工作流程
包括:
52.在应用服务器读取捕捉到的数据;
53.使用socket连接数据库服务的ip和端口,发送捕捉到的数据,并打印其中的可显示字符。
54.s3、检测是否可以接收到数据库服务器返回的数据,若是,则判断网络连通正常。
55.在本步骤中,所述检测是否可以接收到数据库服务器返回的数据,其检测方式可以为通过接收数据库服务返回的数据并打印其中的可显示字符,若能正常打印,则判断网络连通正常;或者通过检测是否与数据库服务保持连接,若能正常连接,则判断网络连通正常。
56.图3示出了本发明实施例一种检测数据库连通性的系统结构示意图。
57.参照图3,本实施例的系统包括:
58.数据包抓取单元1,用于在数据库服务器使用socket抓取双向传输的数据包;
59.数据包发送单元2,用于将抓取的二进制数据拷贝到应用服务器上,并使用网络socket向数据库服务器发送数据;
60.连通性检测单元3,用于检测是否可以接收到数据库服务器返回的数据并判断网络是否正常。
61.具体来说,本实施例系统中,所述数据包抓取单元1在数据库服务器使用socket抓取双向传输的数据包,具体包括:在数据库服务器设置抓取软件的监听端口和数据库服务的端口;启动抓取软件的socket监听功能;使用数据库客户端工具连接抓取软件的监听端口;抓取软件记录客户端工具发送的连接请求数据,并将该数据转发给数据库服务;数据库服务向抓取软件发送同意连接的回执数据,同时抓取软件记录所述回执数据。
62.进一步的,所述数据包发送单元2使用网络socket向数据库服务器发送数据,具体包括:首先在应用服务器读取捕捉到的数据;然后使用socket连接数据库服务的ip和端口,发送捕捉到的数据,并打印其中的可显示字符。
63.进一步的,所述连通性检测单元3检测是否可以接收到数据库服务器返回的数据并判断网络是否正常,其检测方式为通过接收数据库服务返回的数据并打印其中的可显示字符,或者通过检测是否与数据库服务保持连接检测网络是否正常,若能正常打印或者能正常连接,则判断网络连通正常。
64.基于同一发明构思,本实施例还提供了一种电子设备。所述电子设备包括至少一个处理单元、以及与所述处理单元通信连接的至少一个存储单元:所述存储单元存储有可在处理单元上运行的程序指令;所述处理单元调用所述程序指令能够执行上述实施例中所述检测数据库连通性方法的具体步骤。关于各单元及其组合所实现的具体功能,以及所达到的技术效果,可以参照上述方法实施例相应部分的描述,在此不再赘述。
65.以上所述仅为本发明的较佳实施例而已,并不用以限定本发明,对于本技术领域的技术人员来说,在不脱离本发明原理的前提下所作的任何修改、改进和等同替换等,均包含在本发明的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1