前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[打造自己的监控系统之执行Oracle命令]获取Oracle数据文件创建的时间

[打造自己的监控系统之执行Oracle命令]获取Oracle数据文件创建的时间

作者头像
bsbforever
发布2020-08-19 14:41:09
1.1K0
发布2020-08-19 14:41:09
举报
文章被收录于专栏:时悦的学习笔记

上节讲到如何建立一个Oracle命令的界面,这节讲述如何利用Django获取Oracle数据文件的建立时间并显示出来

开发环境

操作系统:CentOS 7.3 Python版本 :2.7 Django版本: 1.10.5 操作系统用户:oracle


建立页面的步骤

我们还是通过这张图的步骤来说明如何建立页面


urls.py页面

首先编辑 monitor/urls.py

urlpatterns = [ url(r'^$', views.index, name='index'), url(r'^oracle_command/$',views.oracle_command, name='oracle_command'), url(r'^commandresult/$',views.commandresult, name='commandresult'), ]

oracle_command为执行Oracle命令的页面

commandresult为执行完Oracle命令显示结果的页面


views.py

首先import后面用到的函数

from monitor.command.getoraclecommandresult import *

下面为commandresult对应的函数在views.py里面的写法

1. 首先获取到表单中的数据,如 ipaddress,tnsname以及执行的命令

2. 然后通过ipaddress,tnsname从数据库中查找获得用户密码用于连接

3. 再判断命令内容,如果是check_datafile_time则执行下面语句

这里的getdatafilecreationtime函数获取Oracle文件的建立时间,详情看具体代码

4. 最后把页面的标题以及表格的数据放到dic变量中传到oracle_command_result_5.html模板文件中


getdatafilecreationtime函数

这里我们引用getdatafilecreationtime函数来获取Oracle数据文件的建立时间

导入方法见上面views.py文件的讲解

在monitor目录下建立 command目录用于存放相关程序

注意:这里需要建立一个名为__init__.py的空文件,否则会提示无法找到函数

def getdatafilecreationtime(cursor): fp=open('/home/oracle/mysite/oracle/command/oracle_command/getdatafilecreationtime.sql','r') fp1=fp.read() s=cursor.execute(fp1) fp.close() row=s.fetchall() return row


getdatafilecreationtime.sql

这个SQL是查询所有数据文件的相关信息并按照时间倒序排序

select a.file_name, a.bytes / 1024 / 1024 Bytes, a.tablespace_name, a.autoextensible, to_char(b.creation_time, 'yyyy-mm-dd') creation_time from dba_data_files a, v$datafile b where a.file_id = b.file# order by creation_time desc


template文件

这里我们用到ajax的功能,其实页面还是oracle_command.html页面,只是将oracle_command_result_5.html页面嵌入了oracle_command.html页面中,全程无页面跳转。

oracle_command_result_5.html

该模板是一个table ,通过将传过来的变量显示在前端页面


实际效果

http://10.65.202.218:8081/monitor/oracle_command/


源码地址

源码请查看我的GitHub主页

https://github.com/bsbforever/wechat_monitor


下期将介绍如何如何通过Django获取表的分析时间然后显示出来

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅必备 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档