一种监视远程数据库运行状态的方法及系统的制作方法

文档序号:6576294阅读:182来源:国知局
专利名称:一种监视远程数据库运行状态的方法及系统的制作方法
技术领域
本发明涉及计算机通讯领域,尤其涉及一种监视远程数据库运 行状态的方法及系统。
背景技术
如今,计算机的数据库技术得到了越来越广泛的应用,国内外已 经开发建设了成千上万个数据库,它给人们带来了很大的便利,已 成为企业、部门乃至个人日常工作、生产和生活的基础设施。同时, 随着现代网络通信技术的发展,数据库技术的应用已经突破了地理 限制,实现了异地用户对数据库的数据与信息的共享。但计算机系 统是一个复杂的软硬件相结合的系统,由于具体的网络环境会因某 些突发事件发生变化,常常会影响到正常使用远程数据库,所以有 必要对使用中的远程数据库运行状态进行监视,以便及时发现并处 理故障问题。
中国专利文献"用来监视数据库环境的微监视器"(专利申请
号200410063992.9)描述了 一种用于监视数据库环境的方法及装 置。所述方法包括提供一微监视器及通信装置,所述微监视器包括 具有图形用户接口的应用程序。所述微监视器与数据库环境通信以 获取数据库环境的操作信息,所述微监视器处理接收到的数据库环 境的操作信息以产生监视信息并在所述微监视器显示所述监视信 息。所述方法虽然可以监视数据库环境,但是需要在监视端设置一 个专用的数据库监视装置,还要安装好监视应用程序以及周围一系 列的硬件配置,其方法及装置较复杂、成本较高,在未安装所述监 视应用程序及相关硬件配置情况下所述方法无法实现对数据库的 监视,即其移植性较差。

发明内容
本发明所要解决的技术问题是监视数据库环境的方法较复杂、成本较高且移植性较差的问题,提出一种简单可行、成本较低且移 植性较好监视远程数据库运行状态的方法及系统。
为了解决上述技术问题,本发明提供一种监视远程数据库运行
状态的方法,包括
在应用程序的主线程中设置用于连接远程数据库的触发条件,同 时在所述主线程中创建并启动监视线程,所述监视线程根据所述触发 条件连接所述远程数据库并获取其运行状态的信息。
进一步地,在上述方法中,所述在主线程中创建并启动监^f见线程 包括在所述主线程中创建监视线程,并在所述监视线程中建立死循 环,使所述监视线程不断运行。
进一步地,在上述方法中,所述设置连接远程数据库的触发条件 包括在所述主线程中设置定时器,以预定的时间间隔周期性地触发 所述监视线程连接所述远程数据库。
进一步地,在上述方法中,所述监视线程根据所述触发条件连接 所述远程数据库并获取其运行状态的信息包括
远程数据库,若所述监视线程连接所述远程数据库成功,所述监视线 程释放所述远程数据库;若所述监视线程连接所述远程数据库失败, 所述监视线程分析并打印出所述远程数据库的异常运行状态。
进一步地,在上述方法中,所述监视线程通过标准编程接口 ODBC开》t式数据库连接方式进行对所述远程数据库的连接。
一种监视远程数据库运行状态的系统,所述系统包括触发控制 模块及监视模块,所述触发控制模块用于以设定的触发条件触发所述 监视模块连接远程数据库,所述监视模块用于根据所述触发控制模块 的触发条件连接所述远程数据库并获取其运行状态的信息。
进一步地,在上述系统中,所述触发控制模块为定时器。
进一步地,在上述系统中,所述监^i^莫块用于以所述定时器预定 的时间间隔周期性地连接所述远程数据库,若所述监视才莫块连接所述 远程数据库成功,所述监视模块释放所述远程数据库;若所述监视才莫 块连接所述远程数据库失败,所述监一见模块分析并打印出所述远程数据库的异常运行状态。
采用本发明所述的监视远程数据库运行状态的方法及系统,只 需在主线程中设置定时器及创建监视线程,不需要另外专门配置相
应的硬件,故其操作简单方便,成本较低;而且本发明的所述方法
及系统不需要在监视端安装相应的监视应用程序,所述监视线程可 根据需要在监视端临时创建且在应用程序退出时释放,故其操作灵 活,移植性较好。


图l是本发明监视远程数据库运行状态的系统示意图; 图2是本发明监视远程数据库运行状态的方法流程示意图; 图3是本发明监视远程数据库运行状态的方法中监视线程的流 程示意图。
具体实施例方式
下面结合附图对本发明监视远程数据库运行状态的方法及系统 进行说明。
请参阅图1,本发明的监视远程数据库运行状态的系统包括触发 控制模块及监视模块,所述触发控制模块用于以设定的触发条件触发 所述监视模块连接远程数据库,所述监视模块用于根据所述触发控制 模块的触发条件连接所述远程数据库并获取其运行状态的信息。
本发明的所述方法在应用程序的主线程中设置定时器,用于以预 定的时间间隔周期性地触发连接远程数据库。其中,定时器的预定时 间间隔取决于所述远程数据库所处的网络环境。本发明还在所述主线 程中创建一子线程,用于监视所述远程数据库运行状态,定义为监视 线程。启动所述定时器和所述监视线程后,所述主线程执行其他任务,
数据库。其中,若某次所述监视线程连接所述远程数据库失败,所述 监视线程分析并打印出所述远程数据库的异常运行状态;若某次所述 监视线程连接所述远程数据库成功,所述监视线程释放所述远程数据库。当所述主线程完成所有任务,关闭整个应用程序时,所述应用程 序释放所述监视线程。
请参阅图2,其是本发明监视远程数据库运行状态的方法流程示 意图,包括以下步骤
步骤S1、在应用程序主线程中设置定时器,启动所述定时器;
步骤S2、在所述主线程中创建监视线程,启动所述监视线程, 且在所述监视线程中建立死循环,使所述监视线程不断运行;
步骤S3、所述监^L线程以所述定时器预定的时间间隔周期性地 连接远程数据库,获取所述远程数据库的运行状态。本实施例中, 所述定时器的预定时间间隔为3秒,所述监视线程根据用户输入的所 述远程数据库的数据源名、用户名、密码等信息,通过标准编程接口 ODBC (Open Database Connectivity开》丈式凄t据库连接)的方式对所 述远程数据库进行连接;
步骤S4、所述主线程完成所有任务后,所述应用程序退出时释 方文所述监#见线程,即所述监^L线程退出。
请参阅图3,其是本发明监视远程数据库运行状态的方法中监视 线程的流程示意图。
所述监视线程启动后,所述监视线程判断所述定时器的时间事件 (定时器计时到所设置的时间)是否发生,若所述时间事件未发生, 则所述监视线程继续等待。
当所述时间事件发生时,所述监视线程连接所述远程数据库。所 述监视线程连接所述远程数据库后,所述远程数据库会返回一结果 值,所述结果值用于判断所述远程数据库的运行状态。若所述监视线 程连接所述远程数据库失败,则表明所述远程数据库出现了异常,所 述监视线程根据所述远程数据库返回的结果值分析得出所述远程数 据库的异常运行状态,并打印出所述远程数据库的运行状态;若所述 监视线程连接所述远程数据库成功,则表明所述远程数据库运行正 常,所述监视线程释力文连"l妄上的所述远程数据库,其目的在于防止因 连接所述远程数据库的数量过多而降低其应用程序的效率及造成所 述远程数据系统崩溃的情况发生。所述监视线程连接所述远程数据库后,所述定时器将清零并重新计数,以使所述监视线程以每隔3秒 的时间间隔周期性地连接所述远程数据库。
可以理解,本发明中的所述定时器的预定时间间隔可根据需要设
定为其它值;所述定时器还可为根据实际需要设置其它触发控制模 块,例如根据当前网络环境设置触发控制模块的触发条件,当网络比 较拥堵时访问某服务器会需要较长的响应时间,根据所述响应时间设 置上限值来作为触发条件,以保证满足触发条件时所述监视线程连接 所述远程数据库。
相比于现有技术,本发明提供一种监视远程数据库运行状态的 方法及系统,只需在主线程中设置定时器及创建监视线程,不需要 另外专门配置相应的硬件,故其操作简单方便,成本较低;而且本 发明的所述方法不需要在监视端安装相应的监视应用程序,所述监 视线程可根据需要在监视端临时创建且在主线程完成任务后应用 程序关闭时释放,故其操作灵活,移植性较好。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,对 于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发 明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包 含在本发明的保护范围之内。
权利要求
1、一种监视远程数据库运行状态的方法,其特征在于,所述方法包括在应用程序的主线程中设置用于连接远程数据库的触发条件,同时在所述主线程中创建并启动监视线程,所述监视线程根据所述触发条件连接所述远程数据库并获取其运行状态的信息。
2、 根据权利要求1所述的方法,其特征在于,所述在主线程中 创建并启动监视线程包括在所述主线程中创建监视线程,并在所述 监视线程中建立死循环,使所述监视线程不断运行。
3、 根据权利要求1或2所述的方法,其特征在于,所述设置连 接远程数据库的触发条件包括在所述主线程中设置定时器,以预定 的时间间隔周期性地触发所述监^L线程连接所述远程数据库。
4、 根据权利要求3所述的方法,其特征在于,所述监视线程根 据所述触发条件连接所述远程数据库并获取其运行状态的信息包括所述监一见线程以所述定时器预定的时间间隔周期性地连^^妄所述 远程数据库,若所述监视线程连接所述远程数据库成功,所述监视线 程释放所述远程数据库;若所述监视线程连接所述远程数据库失败, 所述监视线程分析并打印出所述远程数据库的异常运行状态。
5、 根据权利要求1所述的方法,其特征在于,所述监视线程通 过标准编程接口 ODBC开放式数据库连接方式进行对所述远程数据 库的连接。
6、 一种监视远程数据库运行状态的系统,其特征在于,所述系 统包括触发控制模块及监视模块,所述触发控制模块用于以设定的触 发条件触发所述监视模块连接远程数据库,所述监视模块用于根据所 述触发控制模块的触发条件连接所述远程数据库并获取其运行状态的信息。
7、 根据权利要求6所述监视远程数据库运行状态的系统,其特征在于,所述触发控制模块为定时器。
8、 根据权利要求7所述监视远程数据库运行状态的系统,其特 征在于,所述监视模块用于以所述定时器预定的时间间隔周期性地连 接所述远程数据库,若所述监视模块连接所述远程数据库成功,所述 监视模块释放所述远程数据库;若所述监视一莫块连接所述远程数据库 失败,所述监视j莫块分析并打印出所述远程凄t据库的异常运行状态。
全文摘要
本发明提供一种监视远程数据库运行状态的方法,包括在应用程序的主线程中设置用于连接远程数据库的触发条件,同时在所述主线程中创建并启动监视线程,所述监视线程根据所述触发条件连接所述远程数据库并获取其运行状态的信息。本发明还提供一种监视远程数据库运行状态的系统,包括触发控制模块及监视模块,所述监视模块用于根据所述触发控制模块的触发条件连接所述远程数据库并获取其运行状态的信息。本发明的方法及系统简单可行、成本较低且移植性较好。
文档编号G06F9/44GK101551771SQ20091010726
公开日2009年10月7日 申请日期2009年5月8日 优先权日2009年5月8日
发明者涛 舒 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1