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

使用python自动生成数据库巡检报告

科讯华通 2021-05-11
3070



1. 介绍

介绍使用python来抽取数据库信息,并分析生成报告,文中提到一些有用的模块,分享出来希望对大家有所帮助。

2. 设计流程


 

3. 设计功能

包括信息采集入库并分析,excel读取模板,并生成表格和图示,邮件发送,口令加密,独立配置文件

4. 模块分析

数据库模块:在此模块定义写入和获取数据的SQL,并返回获取到的数据。使用cx_Oracle模块连接ORACLE数据库,针对oracle数据库较好的支持,模块依赖ORACLE客户端,必须安装oracle客户端linux可以使用oracle轻量客户端,然后编译安装此模块。

部分代码:

 

Excel模块:分析数据库返回的数据并生成excel报表,其中包含表格信息,以及趋势图设计中,使用了excel模板,依靠xlrd读取excel模板数据,并使用xlsxwriter模块写入和生成图表wlsxwrite官网为: http://xlsxwriter.readthedocs.io

部分代码:


 

 

邮件模块:发送自动生成的excel报告,使用smtplibemail模块邮件内容为html格式,带附件发送189邮箱smtp服务器默认是25,比如腾讯邮箱,需要制定端口,需要添加参数port=465

部分代码:


 

 

 

加密模块:针对程序中设计的密码加密,可以自己写加密方法

配置文件:配置数据库登陆信息和邮件信息,使用ConfigParser模块分析配置文件

配置文件内容:

 

 

程序:程序的执行入口,包括实例化数据库连接类,excel类,调用邮件发送。

部分代码:

 

 

 

5. 生成报告

样式如下:

 


 

 

 

 

两个颜色轮训,可以程序内控制,配色也是我一直用的配色

 

6. 功能扩展

如果需要采集其他信息,可以db类内添加方法并返回,另外监控oracle日志信息,也可以python分析,然后入库并展示。


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

评论