暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

【数据库巡检】支持Oracle、MySQL、MSSQL、PG、OceanBase、TiDB、openGauss和达梦等9种数据库

DB宝 2021-12-02
1244


一、巡检脚本简介
二、巡检脚本特点
三、巡检结果展示
1、Oracle数据库
2、MySQL数据库
3、SQL Server数据库
4、PG数据库
5、达梦数据库
6、TiDB数据库
7、openGauss数据库
8、DB2数据库
9、OceanBase数据库
10、OS信息
四、脚本运行方式
1、Oracle数据库
2、MySQL数据库
3、SQL Server数据库
3.1、命令行方式
3.2SSMS图形界面
4、PG数据库
5、达梦数据库
6、TiDB数据库
7、openGauss数据库
8、DB2数据库
9、OceanBase数据库
10、OS信息
五、其它问题
六、软件著作权登记证书
七、版本重大更新历史
八、购买方式
复制


一、巡检脚本简介

该套数据库巡检脚本为纯SQL脚本开发,如下所示:

  • 目前一共包含15个脚本,若脚本的扩展名为“.sql”则表示该脚本为sql脚本;若脚本的扩展名为“.pl”则表示该脚本为perl脚本;若脚本的扩展名为“.sh”则表示该脚本为shell脚本。

  • 对于Oracle的SQL脚本而言,脚本DB_Oracle_HC_lhr_v7.0.0_10g.sql适用于Oracle 10g数据库,脚本DB_Oracle_HC_lhr_v7.0.0_11g.sql适用于Oracle 11g的数据库,脚本DB_Oracle_HC_lhr_v7.0.0_12c.sql适用于Oracle 12c及其以上版本,这3个脚本都是只读版本,这3个脚本只会对数据库做查询操作,不会做DML和DDL操作,这也是很多朋友所期待的功能。

  • 脚本DB_OS_HC_lhr_v7.0.0.pl是perl脚本,执行后会对OS的信息进行收集,并且输出到html中。脚本DB_OS_HC_lhr_v7.0.0.sh是shell脚本,执行后会对OS的信息进行收集。

  • 脚本DB_MySQL_HC_lhr_v7.0.0.sql是MySQL脚本,执行后会产生MySQL的健康检查html报告,该脚本为只读脚本。

  • 脚本DB_MSSQL_HC_lhr_v7.0.0_2005.sql和DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql是SQL Server脚本,存在部分DDL和DML操作,执行后会产生SQL Server的健康检查html报告。脚本DB_MSSQL_HC_lhr_v7.0.0_2005.sql最低支持2005版本,而脚本DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql最低支持2008R2版本。

  • 脚本DB_PG_HC_lhr_v7.0.0.sql是PG数据库脚本,执行后会产生PostgreSQL数据库的健康检查html报告。

  • 脚本DB_DM_HC_lhr_v7.0.0是达梦数据库脚本,执行后会产生达梦数据库的健康检查html报告。

  • 脚本DB_TiDB_HC_lhr_v7.0.0.sql是TiDB数据库脚本,执行后会产生TiDB数据库的健康检查html报告。

  • 脚本DB_openGauss_HC_lhr_v7.0.0.sql是openGauss数据库脚本,执行后会产生openGauss数据库的健康检查html报告。

  • 脚本DB_DB2_HC_lhr_v7.0.0.sql是DB2数据库脚本,执行后会产生DB2数据库的健康检查html报告。

  • 脚本DB_OceanBase_HC_lhr_v7.0.0.sql是DB2数据库脚本,执行后会产生OceanBase数据库的健康检查html报告。

二、巡检脚本特点

1、可以巡检Oracle、MySQL、SQL Server、PostgreSQL、OceanBase、TiDB、openGauss、DB2和国产达梦
9个数据库,也可以巡检Linux操作系统(后续会免费逐步增加MongoDB、PolarDB、TDSQL、GBase、人大金仓等数据库)

2、脚本为绿色版、免安装、纯SQL文本

3、跨平台,只要有SQL*Plus(Oracle)、mysql(MySQL、TiDB、OceanBase)、MSSQL客户端(SSMS、Navicat皆可)、psql(PG、openGauss)、gisql(国产达梦)、gsql(openGauss)、db2(DB2数据库)、obclient(OceanBase)环境即可运行脚本

4、脚本内容可视化,可以看到脚本内容,因此可供学习数据库使用

5、兼容Oracle 10g、11g、12c、18c、19c、20c、21c等高版本Oracle数据库

6、对Oracle 10g、11g、12c、18c、19c、20c、21c等版本分别提供了只读版(只对数据库查询,不做DDL和DML操作)

7、MySQL最低支持5.5版本

8、SQL Server最低支持2005版本

9、增删监控项非常方便,只需要提供相关SQL即可

10、一次购买,所有脚本终身免费升级

11、检查内容非常全面

12、针对每种数据库,只有1个SQL脚本,不存在嵌套调用脚本等其它问题

13、最终生成html文件格式的健康检查结果

14、Oracle数据库对巡检结果进行过滤,列出了数据库有问题的内容

15、对OS的信息提供了收集(单独脚本)

三、巡检结果展示

这里只列出部分结果,其它的详细内容可以参考:https://share.weiyun.com/5lb2U2M

1、Oracle数据库



鼠标经过相关连接时会有相应的解释,如下图所示:

该脚本检查的内容较多,所以我对结果进行了过滤,如下:

点击链接即可查看结果:

数据库基本信息一目了然:

其它不再列举。

2、MySQL数据库





其它不再列举。

3、SQL Server数据库




其它不再列举。

4、PG数据库

其它不再列举。

5、达梦数据库







其它不再列举。

6、TiDB数据库

其它不再列举。

7、openGauss数据库

其它不再列举。

8、DB2数据库



其它不再列举。

9、OceanBase数据库

10、OS信息

其它不再列举。

四、脚本运行方式

1、Oracle数据库

只要有sqlplus的客户端即可。

为了防止乱码,需要先配置环境变量。

1# Linux环境设置
2export LANG=en_US.GB2312
3export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
4
5# Windows环境配置
6set NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

复制

服务器端直接运行:

1sqlplus / as sysdba @DB_Oracle_HC_lhr_v7.0.0_12c.sql

复制

sqlplus客户端运行:

1sqlplus sys/lhr@192.168.59.130:1521/orcl as sysdba @DB_Oracle_HC_lhr_v7.0.0_12c.sql

复制

2、MySQL数据库

只要有mysql客户端即可,使用MariaDB的客户端也可以,如下:

1mysql -uroot -plhr -P3306 -s -f <  DB_MySQL_HC_lhr_v7.0.0.sql  > lhr_mysql_check.html

复制

3、SQL Server数据库

脚本DB_MSSQL_HC_lhr_v7.0.0_2005.sql和DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql是SQL Server脚本,存在部分DDL和DML操作,执行后会产生SQL Server的健康检查html报告。脚本DB_MSSQL_HC_lhr_v7.0.0_2005.sql最低支持2005版本,而脚本DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql最低支持2008R2版本。

3.1、命令行方式

1-- 在本机直接运行
2sqlcmd -d tempdb -y 0 -m 1 -i D:\DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql -o D:\MSSQL_CHECK_LHR_20210914.html
3
4-- 远程运行
5sqlcmd -S 192.168.1.28 -U sa -P lhr -d tempdb -y 0 -m 1 -i D:\DB_MSSQL_HC_lhr_v7.0.0_2008R2.sql -o D:\MSSQL_CHECK_LHR_20210914.html

复制

3.2、SSMS图形界面

需要使用SQL Server Management Studio (SSMS)或Navicat for SQLServer客户端软件,直接运行脚本,然后将输出结果保存为html文件即可。

4、PG数据库

需要有psql客户端,运行方式如下:

1psql -U postgres -h 192.168.66.35 -p 54324 -d postgres -W -H -f D:\DB_PG_HC_lhr_v7.0.0.sql > d:\a.html

复制

输入密码,回车即可。

注意:

1、该脚本的字符集为utf8,请使用utf8格式打开该文件。

5、达梦数据库

在Windows下运行:

1disql -S SYSDBA/SYSDBA@192.168.1.35 `d:\DB_DM_HC_lhr_v7.0.0.sql

复制

在Linux下运行:

1disql -S SYSDBA/SYSDBA \`/home/dmdba/DB_DM_HC_lhr_v7.0.0.sql > /dev/null

复制

6、TiDB数据库

只要有mysql客户端即可,使用MariaDB的客户端也可以,如下:

1mysql -uroot -plhr -P4000 -s -f <  DB_MySQL_HC_lhr_v7.0.0.sql  > lhr_mysql_check.html

复制

7、openGauss数据库

需要有华为的gsql客户端,或PostgreSQL数据库的psql客户端都可以,运行方式如下:

若是openGauss或华为的GaussDB数据库的gsql客户端,则执行:

1gsql -U gaussdb -h 192.168.66.35 -p 15432 -d postgres -W'lhr@123XXT' -H -f D:\DB_openGauss_HC_lhr_v7.0.0.sql > d:\a.html

复制

若是PostgreSQL数据库的psql客户端,则执行:

1psql -U gaussdb -h 192.168.66.35 -p 54324 -d postgres -W -H -f D:\DB_openGauss_HC_lhr_v7.0.0.sql > d:\a.html

复制

psql需要输入密码,回车即可。

注意:

1、该脚本的字符集为utf8,请使用utf8格式打开该文件。

2、建议使用omm用户在服务器本地跑脚本。

8、DB2数据库

需要有db2数据库客户端,运行方式如下:

① 客户端在Windows平台,连接到本地db2数据库:

1db2cmd
2db2 connect to lhrdb && db2 -txf D:\DB_DB2_HC_lhr_v7.0.0.sql >  d:\lhr_db2_health_check.html

复制

② 客户端在Linux平台,连接到本地db2数据库:

1db2 connect to lhrdb; db2 -txf DB_DB2_HC_lhr_v7.0.0.sql > lhr_db2_health_check_`date +'%Y%m%d%H%M%S'`.html

复制

③ 客户端在Windows平台,需要连接到远程的linux服务器:

1db2cmd
2db2 connect to test user db2inst1 using lhr && db2 -txf D:\DB_DB2_HC_lhr_v7.0.0.sql >  D:\lhr_db2_health_check.html

复制

注意:

1、建议直接在服务端运行,因为个别巡检命令只支持在服务端运行。

2、该脚本只能对当前的数据库进行检测,若需要检查其它数据库,请重新跑脚本,并修改连接到的数据库名称,例如:db2 connect to test
;

9、OceanBase数据库

有mysql客户端或者obclient都可以,如下:

1-- 使用obclient客户端
2obclient -uroot@sys#obdemo -p -h192.168.66.35 -P2883  -f --silent  <  DB_OceanBase_HC_lhr_v7.0.0.sql > lhr_OceanBase_check.html
3
4-- 使用mysql客户端
5mysql -uroot@sys#obdemo -p -h192.168.66.35 -P2883  -f --silent  <  DB_OceanBase_HC_lhr_v7.0.0.sql > lhr_OceanBase_check.html

复制

10、OS信息

操作系统信息的收集是perl脚本,运行方式如下所示。

1[root@OCPLHR lhr]# ll
2total 28
3-rw-r--r-- 1 oracle oinstall 25791 Jul 10 17:15 DB_OS_HC_lhr_v7.0.0.pl
4[root@OCPLHR lhr]# perl DB_OS_HC_lhr_v7.0.0.pl 
5[root@OCPLHR lhr]# ll
6total 56
7-rw-r--r-- 1 oracle oinstall 25791 Jul 10 17:15 DB_OS_HC_lhr_v7.0.0.pl
8-rw-r--r-- 1 root   root     26289 Jul 10 17:19 LHR_OSCHECK_REPORT_OCPLHR_20190710171939.html
9[root@OCPLHR lhr]

复制

五、其它问题

请看视频《小麦苗数据库健康检查脚本使用说明.wmv》或阅读《【DB健康巡检(Oracle+MySQL+MSSQL+OS)】小麦苗巡检脚本使用说明_LHR.pdf》,下载地址为:https://share.weiyun.com/5lb2U2M 。

视频观看地址:https://www.bilibili.com/video/BV1K54y1U7CE

六、软件著作权登记证书

小麦苗编写的该巡检系统已申请“中华人民共和国国家版权局计算机软件著作权登记证书”,请购买的朋友不要随意传播,否则将追究法律责任,并且收回脚本,不再提供免费更新,谢谢。

相关证书见下图:

七、版本重大更新历史

对于小的bug更新不再此列出,直接修改脚本:

1、2015.10月推出Oracle巡检脚本,中间经过N次更新,2018.12.06更新一次,支持12c

2、2019.07.02重大更新,添加了10g、11g、12c版本的只读版本

3、2019.07.10加上了OS信息的收集

4、2019.07.12加上了对MySQL数据库的巡检

5、2019.09.24对Oracle的展示做了优化,修改了个别内容

6、2020.09.30加上了对SQL Server数据库的巡检

7、2020.12.16加上了对PostgreSQL数据库的巡检

8、2021.10.13加上了对达梦数据库的巡检

9、2021.10.18加上了对TiDB数据库的巡检

10、2021.10.23加上了对TiDB数据库的巡检

11、2021.10.29加上了对db2数据库的巡检

12、2021.10.31加上了对OceanBase数据库的巡检,并且去掉了MySQL和TiDB之前只能在Linux上运行的限制

八、购买方式

目前售价99元,包括Oracle + MySQL + SQL Server + PG + 达梦 + TiDB + openGauss + DB2 + OS
的脚本,后续免费优化,加量不加价,支持以下购买方式:

1、微信红包,请加我微信:db_bao,或用微信扫描以下二维码加麦老师微信:

2、QQ红包,请加我QQ:646634621,或用QQ扫以下二维码加我QQ:

3、微店购买连接:https://k.weidian.com/o5iECboc

我的微店的二维码如下所示:

About Me


● 本文作者:小麦苗,部分内容整理自网络,若有侵权请联系小麦苗删除
● 本文在个人微信公众号(DB宝)上有同步更新
● QQ群号:230161599 、618766405,微信群私聊
● 个人QQ号(646634621),微 信号(db_bao),注明添加缘由
● 最新修改时间:2021年10月
● 版权所有,欢迎分享本文,转载请保留出处


●小麦苗的微店:https://weidian.com/?userid=793741433
●小麦苗出版的数据库类丛书:http://blog.itpub.net/26736162/viewspace-2142121/
●小麦苗OCP、OCM、高可用、DBA学习班(Oracle、MySQL、NoSQL):http://blog.itpub.net/26736162/viewspace-2148098/
●数据库笔试面试题库及解答:https://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w


使用微信客户端扫描下面的二维码来关注小麦苗的微信公众号(DB宝)及QQ群(DBA宝典)、添加小麦苗微信, 学习最实用的数据库技术。



文章转载自DB宝,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

palosky
暂无图片
3年前
评论
暂无图片 1
做广告,卖脚本的
3年前
暂无图片 1
评论