CN104503880A - 一种MySQL数据库监控选项脚本的实现方法及装置 - Google Patents

一种MySQL数据库监控选项脚本的实现方法及装置 Download PDF

Info

Publication number
CN104503880A
CN104503880A CN201410785294.3A CN201410785294A CN104503880A CN 104503880 A CN104503880 A CN 104503880A CN 201410785294 A CN201410785294 A CN 201410785294A CN 104503880 A CN104503880 A CN 104503880A
Authority
CN
China
Prior art keywords
mysql
script
module
mysql database
database
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
Application number
CN201410785294.3A
Other languages
English (en)
Inventor
姚晓宏
周龚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xinyu Makes Country Prosperous Information Industry Co Ltd
Original Assignee
Xinyu Makes Country Prosperous Information Industry Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xinyu Makes Country Prosperous Information Industry Co Ltd filed Critical Xinyu Makes Country Prosperous Information Industry Co Ltd
Priority to CN201410785294.3A priority Critical patent/CN104503880A/zh
Publication of CN104503880A publication Critical patent/CN104503880A/zh
Priority to US14/709,492 priority patent/US20160170861A1/en
Priority to PCT/CN2015/087527 priority patent/WO2016095551A1/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Abstract

本发明提出了一种MySQL数据库监控选项脚本的实现方法,包括如下步骤:编写shell监控脚本;将所述shell监控脚本上传,并对其进行配置;修改所述shell监控脚本的执行权限;执行所述shell监控脚本;查看所述shell监控脚本的运行结果,并将所述shell监控脚本的运行结果进行保存或下载。本发明还涉及一种实现上述MySQL数据库监控选项脚本的实现方法的装置。实施本发明的MySQL数据库监控选项脚本的实现方法及装置,具有以下有益效果:安装简洁方便、容易维护、跨平台移植性较好、跨数据数据库版本较多。

Description

一种MySQL数据库监控选项脚本的实现方法及装置
技术领域
本发明涉及脚本实现领域,特别涉及一种MySQL数据库监控选项脚本的实现方法及装置。
背景技术
现有技术中,MySQL GA版本中没有自带的一些常用监控选项可直接得到结果。其就像Percona Toolkit工具一样,功能强大却不易上手,其安装复杂、维护相对复杂,目前还不能做到用单个脚本实现常用监控,另外,大部分监控产品为源码安装且一般为Linux版,其脚本跨平台移植性较差,此外,每种数据库监控都有一个稳定版本做测试,其跨数据数据库版本较少。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述安装复杂、维护相对复杂、跨平台移植性较差、跨数据数据库版本较少的缺陷,提供一种安装简洁方便、容易维护、跨平台移植性较好、跨数据数据库版本较多的MySQL数据库监控选项脚本的实现方法及装置。
本发明解决其技术问题所采用的技术方案是:构造一种MySQL数据库监控选项脚本的实现方法,包括如下步骤:
A)编写shell监控脚本;
B)将所述shell监控脚本上传,并对其进行配置;
C)修改所述shell监控脚本的执行权限;
D)执行所述shell监控脚本;
E)查看所述shell监控脚本的运行结果,并将所述shell监控脚本的运行结果进行保存或下载。
在本发明所述的MySQL数据库监控选项脚本的实现方法中,所述步骤A)进一步包括:
A1)设置全局变量,并判断所述全局变量是否设置成功,如是,执行步骤A2);否则,执行步骤A20);
A2)调用主函数;
A3)判断MySQL数据库是否正常启动,如是,进入MySQL进程监控,执行步骤A5);否则,执行步骤A4);
A4)检查MySQL数据库错误日志,执行步骤A20);
A5)检测MySQL Server是否正常,如是,获取MySQL数据库当前状态值,执行步骤A6);否则,返回步骤A4);
A6)获取MySQL数据库当前连接信息或连接数;
A7)显示所述MySQL数据库的运行时长;
A8)查看MySQL数据库内存的大小以及所述MySQL数据库的大小;
A9)查看所述MySQL数据库中前20张表的大小以及前20的索引的大小;
A10)查看某个表的列信息;
A11)查看所述MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本;
A12)依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询;
A13)检查所述MySQL Server是否为主从架构或Percona是否为多主架构,如是,查看多主基本信息,执行步骤A14),否则,查看主从基本信息,执行步骤A14);
A14)依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDBlog waits量;
A15)进行MySQL数据库中的长查询;
A16)检查工具程序;
A17)解释MySQL实例函数;
A18)查找MySQL配置参数文件函数;
A19)格式化输出配置参数文件函数;
A20)结束shell监控脚本的编写。
在本发明所述的MySQL数据库监控选项脚本的实现方法中,所述步骤B)中是将所述shell监控脚本上传到运行目录。
在本发明所述的MySQL数据库监控选项脚本的实现方法中,在所述步骤D)中,按生产库要求随时手工执行所述shell监控脚本查看当前MySQL数据库的状态,或者定时执行所述shell监控脚本。
本发明还涉及一种实现上述MySQL数据库监控选项脚本的实现方法的装置,包括:编写单元:用于编写shell监控脚本;
脚本上传单元:用于将所述shell监控脚本上传,并对其进行配置;
权限修改单元:用于修改所述shell监控脚本的执行权限;
脚本执行单元:用于执行所述shell监控脚本;
脚本运行单元:用于查看所述shell监控脚本的运行结果,并将所述shell监控脚本的运行结果进行保存或下载。
在本发明所述的实现上述MySQL数据库监控选项脚本的实现方法的装置中,所述编写单元进一步包括:
变量设置模块:用于设置全局变量,并判断所述全局变量是否设置成功;
调用模块:用于调用主函数;
启动模块:用于判断MySQL数据库是否正常启动,如是,进入MySQL进程监控;否则,检查数据库错误日志;
日志检查模块:用于检查MySQL数据库错误日志;
检测模块:用于检测MySQL Server是否正常,如是,获取MySQL数据库当前状态值;否则,返回;
获取模块:用于获取MySQL数据库当前连接信息或连接数;
显示模块:用于显示所述MySQL数据库的运行时长;
内存查看模块:用于查看MySQL数据库内存的大小以及所述MySQL数据库的大小;
数据库查看模块:用于查看所述MySQL数据库中前20张表的大小以及前20的索引的大小;列信息查看模块:用于查看某个表的列信息;
脚本调用模块:用于查看所述MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本;
查询模块:用于依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询;
架构检查模块:用于检查所述MySQL Server是否为主从架构或Percona是否为多主架构,如是,查看多主基本信息,否则,查看主从基本信息;
使用状况查看模块:用于依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDB log waits量;
长查询模块:用于进行MySQL数据库中的长查询;
程序检查模块:用于检查工具程序;
实例函数解释模块:用于解释MySQL实例函数;
函数查找模块:用于查找MySQL配置参数文件函数;
格式化模块:用于格式化输出配置参数文件函数;
结束模块:用于结束shell监控脚本的编写。
在本发明所述的实现上述MySQL数据库监控选项脚本的实现方法的装置中,所述调用模块中是将所述shell监控脚本上传到运行目录。
在本发明所述的实现上述MySQL数据库监控选项脚本的实现方法的装置中,在脚本执行单元中,按生产库要求随时手工执行所述shell监控脚本查看当前MySQL数据库的状态,或者定时执行所述shell监控脚本。
实施本发明的MySQL数据库监控选项脚本的实现方法及装置,具有以下有益效果:由于通过编写shell监控脚本,并将shell监控脚本上传后对其进行配置;修改shell监控脚本的执行权限后,执行shell监控脚本,最后将运行结果进行保存或下载,其安装简洁方便、容易维护、跨平台移植性较好、跨数据数据库版本较多。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明MySQL数据库监控选项脚本的实现方法及装置一个实施例中方法的流程图;
图2为所述实施例中编写shell监控脚本的具体流程图;
图3为所述实施例中装置的结构示意图;
图4为所述实施例中编写单元的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明MySQL数据库监控选项脚本的实现方法及装置实施例中,其MySQL数据库监控选项脚本的实现方法的流程图如图1所示。图1中,该MySQL数据库监控选项脚本的实现方法包括如下步骤:
步骤S01编写shell监控脚本:本步骤中,编写shell监控脚本。
步骤S02将shell监控脚本上传,并对其进行配置:本步骤中,将shell监控脚本上传到运行目录,同时配置监控脚本。
步骤S03修改shell监控脚本的执行权限:本步骤中,修改shell监控脚本的执行权限。
步骤S04执行shell监控脚本:本步骤中,执行shell监控脚本。可按生产库要求,随时手工执行shell监控脚本查看当前MySQL数据库的状态,或者crontab定时执行shell监控脚本。例如在每月内,每天的早上9点到21点中,每隔3个小时执行一次。具体多长时间执行一次,其可以根据具体情况进行相应设置。其可随意手工执行生成结果,也可以加入操作系统上自动执行,这样控制性更好。也可以集成到当前流行监控软件中,如nagios,cacti等。
步骤S05查看shell监控脚本的运行结果,并将shell监控脚本的运行结果进行保存或下载:本步骤中,查看shell监控脚本的运行结果,当对MySQL数据监控内容不理解时,可将shell监控脚本的运行结果保存到另一磁盘或下载后给更专业人员如DBA诊断人员。其安装简洁方便,容易维护,有无经验都可适用,跨平台移植性较好,可在大部分Linux/Unix操作系统上运行,跨数据数据库版本较多,可适用的MySQL版本从5.x到6.x。
本实施例中,上述步骤S01还可进一步细化,其细化后的流程图如图2所示。图2中,上述步骤S01进一步包括:
步骤S100设置全局变量,并判断全局变量是否设置成功:本步骤中,设置全局变量,并判断全局变量是否设置成功,如果判断的结果为是,则执行步骤S101;否则,执行步骤S123。
步骤S101调用主函数:如果上述步骤S100的判断结果为是,则执行本步骤。本步骤中,调用主函数。执行完本步骤,执行步骤S102。
步骤S102判断MySQL数据库是否正常启动:本步骤中,判断MySQL数据库是否正常启动,如果判断的结果为是,则执行步骤S103;否则,执行步骤S104。
步骤S103进入MySQL进程监控:如果上述步骤S102的判断结果为是,则执行本步骤。本步骤中,进入MySQL进程监控。执行完本步骤,执行步骤S105。
步骤S104检查MySQL数据库错误日志:如果上述步骤S102的判断结果为否,则执行本步骤。本步骤中,检查MySQL数据库错误日志。执行完本步骤,执行步骤S123。
步骤S105检测MySQL Server是否正常:本步骤中,检测MySQL Server是否正常,如果正常,则执行步骤S106;否则,返回步骤S104。
步骤S106获取MySQL数据库当前状态值:如果上述步骤S105的判断结果为是,则执行本步骤。本步骤中,获取MySQL数据库当前状态值。
步骤S107获取MySQL数据库当前连接信息或连接数:本步骤中,获取MySQL数据库当前连接信息或连接数。
步骤S108显示MySQL数据库的运行时长:本步骤中,显示MySQL数据库的运行时长。
步骤S109查看MySQL数据库内存的大小以及MySQL数据库的大小:本步骤中,查看MySQL数据库内存的大小以及MySQL数据库的大小。
步骤S110查看MySQL数据库中前20张表的大小以及前20的索引的大小:本步骤中,查看MySQL数据库中前20张表的大小以及前20的索引的大小。当然,在本实施例的一些情况下,也可以查看MySQL数据库中前几张表的大小以及前几的索引的大小。
步骤S111查看某个表的列信息:本步骤中,查看某个表的列信息。
步骤S112查看MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本:本步骤中,查看MySQL数据库的常用状态值,然后查看MySQL数据库的常用全局变量,并调用sql脚本。
步骤S113依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询:本步骤中,依次先后进行进行MySQL QPS、MySQLKey Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQLTable Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询。值得一提的是,本实施例中,MySQL Thread Cache命中率要在90%以上才算比较合理。对于MySQL锁定状态的查询,可以通过系统状态变量获得锁定总次数,锁定造成其他线程等待的,执行步骤S114。
步骤S114检查MySQL Server是否为主从架构或Percona是否为多主架构:本步骤中,检查MySQL Server是否为主从架构或Percona是否为多主架构,如果判断的结果为是,则执行步骤S116;否则,执行步骤S115。
步骤S115查看主从基本信息:如果上述步骤S114的判断结果为否,则执行本步骤。本步骤中,查看主从基本信息。执行完本步骤,执行步骤S117。
步骤S116查看多主基本信息:如果上述步骤S114的判断结果为是,则执行本步骤。本步骤中,查看多主基本信息。执行完本步骤,执行步骤S117。
步骤S117依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDB log waits量:本步骤中,依次先后查看MySQL Tmp table状况、MySQLBinlog Cache使用状况和MySQL InnoDB log waits量。
步骤S118进行MySQL数据库中的长查询:本步骤中,进行MySQL数据库中的长查询。
步骤S119检查工具程序:本步骤中,检查工具程序,例如:检查mysqlcheck工具程序等。
步骤S120解释MySQL实例函数:本步骤中,解释MySQL实例函数。
步骤S121查找MySQL配置参数文件函数:本步骤中,查找MySQL配置参数文件函数。
步骤S122格式化输出配置参数文件函数:本步骤中,格式化输出配置参数文件函数。
步骤S123结束shell监控脚本的编写:本步骤中,结束shell监控脚本的编写。本实施例中,MySQL监控每次运行会在同一目录下生成一个日志文件,方便查阅和传输,且目前日志文件监控内容达二十多项,如:MySQL进程监控、检测MySQL Server是否正常提供服务、获取MySQL数据库当前的几个状态值、获取MySQL数据库当前的连接信息、查看MySQL数据库分配的总内存大小、查看MySQL数据库大小、查看MySQL数据库中前20张表大小、查看MySQL当前数据库的常用全局变量、MySQL QPS查询、innodb_buffer_read_hits、MySQL Query Cache命中率、MySQL Table Cache状态量、检查MySQL Sever是否为主从架构或Percona是否为多主架构、MySQL nnodb_log_waits量、mysqlcheck工具程序可以检查(check)和修复(repair)等等。值得一提的是,MySQL监控内容还可按格式自行增加其它监控选项以丰富实际需要,其灵活性较强。
本实施例还涉及一种MySQL数据库监控选项脚本的实现方法的装置,其结构示意图如图3所示。图3中,该装置包括编写单元1、脚本上传单元2、权限修改单元3、脚本执行单元4和脚本运行单元5;其中,编写单元1用于编写shell监控脚本;脚本上传单元2用于将shell监控脚本上传,并对其进行配置;权限修改单元3用于修改shell监控脚本的执行权限;脚本执行单元4用于执行shell监控脚本;脚本运行单元5用于查看shell监控脚本的运行结果,并将shell监控脚本的运行结果进行保存或下载。其安装简洁方便,容易维护,有无经验都可适用,跨平台移植性较好,可在大部分Linux/Unix操作系统上运行,跨数据数据库版本较多,可适用的MySQL版本从5.x到6.x。
本实施例中,编写单元1还可进一步细化,其细化后的结构示意图如图4所示。图4中,该编写单元1进一步包括变量设置模块101、调用模块102、启动模块103、日志检查模块104、检测模块105、获取模块106、显示模块107、内存查看模块108、数据库查看模块109、列信息查看模块110、脚本调用模块111、查询模块112、架构检查模块113、使用状况查看模块114、长查询模块115、程序检查模块116、实例函数解释模块117、实例函数解释模块117、格式化模块119和结束模块120;其中,变量设置模块101用于设置全局变量,并判断全局变量是否设置成功;调用模块102用于调用主函数;启动模块103用于判断MySQL数据库是否正常启动,如是,进入MySQL进程监控;否则,检查数据库错误日志;日志检查模块104用于检查MySQL数据库错误日志;检测模块105用于检测MySQL Server是否正常,如是,获取MySQL数据库当前状态值;否则,返回;获取模块106用于获取MySQL数据库当前连接信息或连接数;显示模块107用于显示MySQL数据库的运行时长;内存查看模块108用于查看MySQL数据库内存的大小以及MySQL数据库的大小;数据库查看模块109用于查看MySQL数据库中前20张表的大小以及前20的索引的大小;列信息查看模块110用于查看某个表的列信息;脚本调用模块111用于查看MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本;查询模块112用于依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询;架构检查模块113用于检查MySQL Server是否为主从架构或Percona是否为多主架构,如是,查看多主基本信息,否则,查看主从基本信息;使用状况查看模块114用于依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDB log waits量;长查询模块115用于进行MySQL数据库中的长查询;程序检查模块116用于检查工具程序;实例函数解释模块117用于解释MySQL实例函数;函数查找模块118用于查找MySQL配置参数文件函数;格式化模块119用于格式化输出配置参数文件函数;结束模块120用于结束shell监控脚本的编写。
本实施例中,调用模块102中是将shell监控脚本上传到运行目录。在脚本执行单元4中,按生产库要求随时手工执行shell监控脚本查看当前MySQL数据库的状态,或者定时执行shell监控脚本。
总之,在本实施例中,由于现有的shell脚本逻辑不是很完善,代码性能不是很强,所以可参考更加专业的MySQL监控内容,可增加一些操作系统资源利用的监控。现有技术中,不能集成在同一个日志文件中,不能同时生成日志,不方面查阅和传输。而本实施例中,MySQL监控日志集中管理,每次运行会在同一目录下生成一个日志文件,方便查阅和传输,其跨平台移植性好、跨多个数据库版本、手工或自动执行都可以、监控日志集中,均涉及协议或格式的兼容性,不需要采用特定的技术上的改进就能实现。本实施例中,在小型机上MySQL数据库的常用监控内容可进行全自动实现,能够向同一个日志文件上写入众多监控内容。同时按照时间建立升序排列。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种MySQL数据库监控选项脚本的实现方法,其特征在于,包括如下步骤:
A)编写shell监控脚本;
B)将所述shell监控脚本上传,并对其进行配置;
C)修改所述shell监控脚本的执行权限;
D)执行所述shell监控脚本;
E)查看所述shell监控脚本的运行结果,并将所述shell监控脚本的运行结果进行保存或下载。
2.根据权利要求2所述的MySQL数据库监控选项脚本的实现方法,其特征在于,所述步骤A)进一步包括:
A1)设置全局变量,并判断所述全局变量是否设置成功,如是,执行步骤A2);否则,执行步骤A20);
A2)调用主函数;
A3)判断MySQL数据库是否正常启动,如是,进入MySQL进程监控,执行步骤A5);否则,执行步骤A4);
A4)检查MySQL数据库错误日志,执行步骤A20);
A5)检测MySQL Server是否正常,如是,获取MySQL数据库当前状态值,执行步骤A6);否则,返回步骤A4);
A6)获取MySQL数据库当前连接信息或连接数;
A7)显示所述MySQL数据库的运行时长;
A8)查看MySQL数据库内存的大小以及所述MySQL数据库的大小;
A9)查看所述MySQL数据库中前20张表的大小以及前20的索引的大小;
A10)查看某个表的列信息;
A11)查看所述MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本;
A12)依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询;
A13)检查所述MySQL Server是否为主从架构或Percona是否为多主架构,如是,查看多主基本信息,执行步骤A14),否则,查看主从基本信息,执行步骤A14);
A14)依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDBlog waits量;
A15)进行MySQL数据库中的长查询;
A16)检查工具程序;
A17)解释MySQL实例函数;
A18)查找MySQL配置参数文件函数;
A19)格式化输出配置参数文件函数;
A20)结束shell监控脚本的编写。
3.根据权利要求1或2所述的MySQL数据库监控选项脚本的实现方法,其特征在于,所述步骤B)中是将所述shell监控脚本上传到运行目录。
4.根据权利要求3所述的MySQL数据库监控选项脚本的实现方法,其特征在于,在所述步骤D)中,按生产库要求随时手工执行所述shell监控脚本查看当前MySQL数据库的状态,或者定时执行所述shell监控脚本。
5.一种实现如权利要求1所述的MySQL数据库监控选项脚本的实现方法的装置,其特征在于,包括:
编写单元:用于编写shell监控脚本;
脚本上传单元:用于将所述shell监控脚本上传,并对其进行配置;
权限修改单元:用于修改所述shell监控脚本的执行权限;
脚本执行单元:用于执行所述shell监控脚本;
脚本运行单元:用于查看所述shell监控脚本的运行结果,并将所述shell监控脚本的运行结果进行保存或下载。
6.根据权利要求5所述的实现上述MySQL数据库监控选项脚本的实现方法的装置,其特征在于,所述编写单元进一步包括:
变量设置模块:用于设置全局变量,并判断所述全局变量是否设置成功;
调用模块:用于调用主函数;
启动模块:用于判断MySQL数据库是否正常启动,如是,进入MySQL进程监控;否则,检查数据库错误日志;
日志检查模块:用于检查MySQL数据库错误日志;
检测模块:用于检测MySQL Server是否正常,如是,获取MySQL数据库当前状态值;否则,返回;
获取模块:用于获取MySQL数据库当前连接信息或连接数;
显示模块:用于显示所述MySQL数据库的运行时长;
内存查看模块:用于查看MySQL数据库内存的大小以及所述MySQL数据库的大小;
数据库查看模块:用于查看所述MySQL数据库中前20张表的大小以及前20的索引的大小;
列信息查看模块:用于查看某个表的列信息;
脚本调用模块:用于查看所述MySQL数据库的常用状态值以及常用全局变量,并调用sql脚本;
查询模块:用于依次进行MySQL QPS、MySQL Key Buffer命中率、MySQL Innodb Buffer命中率、MySQL Query Cache命中率、MySQL Table Cache状态量、MySQL Thread Cache命中率以及MySQL锁定状态的查询;
架构检查模块:用于检查所述MySQL Server是否为主从架构或Percona是否为多主架构,如是,查看多主基本信息,否则,查看主从基本信息;
使用状况查看模块:用于依次查看MySQL Tmp table状况、MySQL Binlog Cache使用状况和MySQL InnoDB log waits量;
长查询模块:用于进行MySQL数据库中的长查询;
程序检查模块:用于检查工具程序;
实例函数解释模块:用于解释MySQL实例函数;
函数查找模块:用于查找MySQL配置参数文件函数;
格式化模块:用于格式化输出配置参数文件函数;
结束模块:用于结束shell监控脚本的编写。
7.根据权利要求5或6所述的实现上述MySQL数据库监控选项脚本的实现方法的装置,其特征在于,所述调用模块中是将所述shell监控脚本上传到运行目录。
8.根据权利要求7所述的实现上述MySQL数据库监控选项脚本的实现方法的装置,其特征在于,在脚本执行单元中,按生产库要求随时手工执行所述shell监控脚本查看当前MySQL数据库的状态,或者定时执行所述shell监控脚本。
CN201410785294.3A 2014-12-16 2014-12-16 一种MySQL数据库监控选项脚本的实现方法及装置 Pending CN104503880A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410785294.3A CN104503880A (zh) 2014-12-16 2014-12-16 一种MySQL数据库监控选项脚本的实现方法及装置
US14/709,492 US20160170861A1 (en) 2014-12-16 2015-05-12 Method and a Device Thereof for Achieving the Monitoring Option Script of MySQL Database
PCT/CN2015/087527 WO2016095551A1 (zh) 2014-12-16 2015-08-19 一种MySQL数据库监控选项脚本的实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410785294.3A CN104503880A (zh) 2014-12-16 2014-12-16 一种MySQL数据库监控选项脚本的实现方法及装置

Publications (1)

Publication Number Publication Date
CN104503880A true CN104503880A (zh) 2015-04-08

Family

ID=52945280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410785294.3A Pending CN104503880A (zh) 2014-12-16 2014-12-16 一种MySQL数据库监控选项脚本的实现方法及装置

Country Status (3)

Country Link
US (1) US20160170861A1 (zh)
CN (1) CN104503880A (zh)
WO (1) WO2016095551A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105528275A (zh) * 2015-12-04 2016-04-27 广东电网有限责任公司信息中心 数据库安全检查方法
WO2016095551A1 (zh) * 2014-12-16 2016-06-23 新余兴邦信息产业有限公司 一种MySQL数据库监控选项脚本的实现方法及装置
CN106649950A (zh) * 2016-09-30 2017-05-10 北方电子研究院安徽有限公司 一种由器件版图生成剖面图的方法
CN107590253A (zh) * 2017-09-19 2018-01-16 郑州云海信息技术有限公司 一种针对MySQL数据库配置安全性的自动化检测方法
CN108255703A (zh) * 2017-11-07 2018-07-06 中国平安人寿保险股份有限公司 一种sql脚本的故障修复方法及其终端
CN110717194A (zh) * 2019-09-23 2020-01-21 上海擎感智能科技有限公司 MySQL数据库安全性检测方法、系统、介质及装置
CN111459905A (zh) * 2020-02-28 2020-07-28 上海维信荟智金融科技有限公司 MySQL数据库监控脚本的实现方法及系统
CN112804291A (zh) * 2020-12-21 2021-05-14 武汉虹旭信息技术有限责任公司 远程设备审计方法、装置及系统

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106353668B (zh) * 2016-07-06 2020-03-17 芯海科技(深圳)股份有限公司 一种在Strip Test测试工艺的MAP数据压缩/恢复方法和系统
CN107645423A (zh) * 2016-07-21 2018-01-30 中国科学院计算机网络信息中心 一种监控数据的展示系统及其方法
CN108683652A (zh) * 2018-05-04 2018-10-19 北京奇安信科技有限公司 一种基于行为权限的处理网络攻击行为的方法及装置
CN109101399B (zh) * 2018-08-15 2020-11-06 网宿科技股份有限公司 一种主机的监控方法及设备
CN109669835B (zh) * 2018-09-18 2022-05-20 平安科技(深圳)有限公司 MySQL数据库监控方法、装置、设备及可读存储介质
CN110427329B (zh) * 2019-08-13 2023-04-25 杭州有赞科技有限公司 一种数据库sql性能数据的采集方法及系统
CN111931471B (zh) * 2020-08-31 2024-04-16 平安银行股份有限公司 表单收集方法、装置、电子设备及存储介质
CN112835788B (zh) * 2021-01-13 2023-10-27 哈尔滨工程大学 一种评估Linux应用程序与操作系统兼容性的方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222650A (zh) * 2007-01-10 2008-07-16 中兴通讯股份有限公司 多余度监控方法和系统
CN101478445A (zh) * 2008-10-09 2009-07-08 卞旭东 用于信息系统监控的通用监控模型技术
US20130246796A1 (en) * 2011-09-29 2013-09-19 Mcafee, Inc. System and method for securing database activity

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9934388B2 (en) * 2004-06-01 2018-04-03 Ben-Gurion University Of The Negev Research And Development Authority Method and system for database encryption
US7801919B1 (en) * 2006-04-21 2010-09-21 Total System Services, Inc. Method and system for providing database management system tools
US9213740B2 (en) * 2007-10-11 2015-12-15 Sybase, Inc. System and methodology for automatic tuning of database query optimizer
US9015710B2 (en) * 2011-04-12 2015-04-21 Pivotal Software, Inc. Deployment system for multi-node applications
US9170798B2 (en) * 2012-03-02 2015-10-27 Vmware, Inc. System and method for customizing a deployment plan for a multi-tier application in a cloud infrastructure
US9432269B2 (en) * 2013-04-06 2016-08-30 Citrix Systems, Inc. Systems and methods for exporting application details using appflow
US9547675B2 (en) * 2013-07-10 2017-01-17 Oracle International Corporation Database diagnostics interface system
US9727611B2 (en) * 2013-11-08 2017-08-08 Samsung Electronics Co., Ltd. Hybrid buffer management scheme for immutable pages
US9871849B2 (en) * 2014-05-20 2018-01-16 Citrix Systems, Inc. Systems and methods for just-in-time state sharing
CN104503880A (zh) * 2014-12-16 2015-04-08 新余兴邦信息产业有限公司 一种MySQL数据库监控选项脚本的实现方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222650A (zh) * 2007-01-10 2008-07-16 中兴通讯股份有限公司 多余度监控方法和系统
CN101478445A (zh) * 2008-10-09 2009-07-08 卞旭东 用于信息系统监控的通用监控模型技术
US20130246796A1 (en) * 2011-09-29 2013-09-19 Mcafee, Inc. System and method for securing database activity

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WHSNOW: "mysql常用监控脚本命令整理", 《HTTP://WWW.JB51.NET/ARTICLE/37791.HTM》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016095551A1 (zh) * 2014-12-16 2016-06-23 新余兴邦信息产业有限公司 一种MySQL数据库监控选项脚本的实现方法及装置
CN105528275A (zh) * 2015-12-04 2016-04-27 广东电网有限责任公司信息中心 数据库安全检查方法
CN105528275B (zh) * 2015-12-04 2017-12-22 广东电网有限责任公司信息中心 数据库安全检查方法
CN106649950A (zh) * 2016-09-30 2017-05-10 北方电子研究院安徽有限公司 一种由器件版图生成剖面图的方法
CN107590253A (zh) * 2017-09-19 2018-01-16 郑州云海信息技术有限公司 一种针对MySQL数据库配置安全性的自动化检测方法
CN108255703A (zh) * 2017-11-07 2018-07-06 中国平安人寿保险股份有限公司 一种sql脚本的故障修复方法及其终端
CN108255703B (zh) * 2017-11-07 2020-01-14 中国平安人寿保险股份有限公司 一种sql脚本的故障修复方法及其终端
CN110717194A (zh) * 2019-09-23 2020-01-21 上海擎感智能科技有限公司 MySQL数据库安全性检测方法、系统、介质及装置
CN111459905A (zh) * 2020-02-28 2020-07-28 上海维信荟智金融科技有限公司 MySQL数据库监控脚本的实现方法及系统
CN112804291A (zh) * 2020-12-21 2021-05-14 武汉虹旭信息技术有限责任公司 远程设备审计方法、装置及系统

Also Published As

Publication number Publication date
US20160170861A1 (en) 2016-06-16
WO2016095551A1 (zh) 2016-06-23

Similar Documents

Publication Publication Date Title
CN104503880A (zh) 一种MySQL数据库监控选项脚本的实现方法及装置
CN107678907B (zh) 数据库业务逻辑监控方法、系统、及存储介质
US11163731B1 (en) Autobuild log anomaly detection methods and systems
US9575830B2 (en) Run-time error repairing method, device and system
US9355017B2 (en) Automated error checking system for a software application and method therefor
CN110795455B (zh) 依赖关系解析方法、电子装置、计算机设备及可读存储介质
US10223185B2 (en) Automated defect diagnosis from machine diagnostic data
US20130282739A1 (en) Generating a log parser by automatically identifying regular expressions matching a sample log
US8607152B2 (en) Management of test artifacts using cascading snapshot mechanism
CN110737594B (zh) 自动生成测试用例的数据库标准符合性测试方法及装置
CN110489310B (zh) 一种记录用户操作的方法、装置、存储介质及计算机设备
CN111158741B (zh) 监控业务模块对第三方类库依赖关系变化的方法及装置
CN107797823B (zh) 业务规则管理方法、装置、存储介质和计算机设备
US20210382785A1 (en) System and Methods for Diagnosing and Repairing a Smart Mobile Device by Disabling Components
US8606762B2 (en) Data quality administration framework
US11561886B2 (en) Open data protocol performance test automation intelligence (OPT-AI)
US20140114728A1 (en) Method and system for database benchmarking
CN109558300B (zh) 一种整机柜告警处理方法、装置、终端及存储介质
CN107273293B (zh) 大数据系统性能测试方法、装置及电子设备
CN111277425A (zh) 集中化数据传输管理的装置
US9773040B2 (en) Search token mnemonic replacement
CN110413496B (zh) 一种实现电子证照运行数据组件化收集的方法
CN107704362A (zh) 一种基于Ambari监控大数据组件的方法及装置
CN110569648B (zh) 版本漏洞库组织的方法和装置
CN112558982A (zh) 代码检测方法、装置及计算机设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
EXSB Decision made by sipo to initiate substantive examination
SE01 Entry into force of request for substantive examination
AD01 Patent right deemed abandoned

Effective date of abandoning: 20180608

AD01 Patent right deemed abandoned