linux下得磁盘信息,如何导出Linux下磁盘信息

如何导出Linux下磁盘信息

[日期:2006-09-28]

来源:

作者:

[字体:大 中 小]

如何导出Linux下磁盘信息

--将disk使用信息保存到数据库中

create table disk_status(snap_id date,USED_STATUS varchar2(4000));

alter table disk_status add constraint pk_ds_snapid primary key(snap_id);

[Oracle@data1 backup]$ more auto_collect_disk.sh

#!/bin/bash

rm /home/oracle/sql/backup/disk_status.lst

df>/home/oracle/sql/backup/disk_status.lst

DISK_STATUS=`cat /home/oracle/sql/backup/disk_status.lst`

echo $DISK_STATUS

sqlplus -s xxxx/yyyy<

insert into disk_status values(trunc(sysdate),'$DISK_STATUS');

commit;

exit

!

[oracle@data1 oracle]$ crontab -l

# DO NOT EDIT THIS FILE - edit the master and reinstall.

# (/tmp/crontab.21703 installed on Mon Nov 22 09:46:47 2004)

# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

00 05 * * * /home/oracle/sql/backup/auto_collect_disk.sh >> /home/oracle/sql/backup/tmp.lst 2>&1

[oracle@www1 sql]$ more backup/auto_send_disk.sh

#!/bin/sh

. ~oracle/.bash_profile

/home/oracle/product/9.2.0/bin/sqlplus -s xxxx/yyyy@zzzz<

set timing off

spool /home/oracle/sql/backup/disk_status.lst

set linesize 81

col used_status format a69

select to_char(snap_id,'yyyy-mm-dd') snap_id,used_status from disk_status where snap_id = trunc(sysdate);

set linesize 101

set pagesize 999

col "表空间名" format a12

col mbytes format 9999.99

col "已使用空间(M)" format 99999.99

col 使用比 format a8

col "空闲空间(M)" format 9999.99

col "最大块(M)" format 9999.99

SELECT F.TABLESPACE_NAME "表空间名",

D.TOT_GROOTTE_MB "表空间大小(M)",

D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",

TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES)/D.TOT_GROOTTE_MB*100,2),'990.99') 使用比,

F.TOTAL_BYTES "空闲空间(M)",F.MAX_BYTES "最大块(M)"

FROM (SELECT TABLESPACE_NAME,ROUND(SUM(BYTES)/(1024*1024),2) TOTAL_BYTES,ROUND(MAX(BYTES)/(1024*1024),2) MAX_BYTES

FROM SYS.DBA_FREE_SPACE GROUP BY TABLESPACE_NAME) F,

(SELECT DD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES)/(1024 * 1024), 2) TOT_GROOTTE_MB

FROM SYS.DBA_DATA_FILES DD GROUP BY DD.TABLESPACE_NAME) D

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME ORDER BY 4 DESC;

spool off

exit

!

mail -s "磁盘信息发布" ####@###.## < /home/oracle/sql/backup/disk_status.lst

rm /home/oracle/sql/backup/disk_status.lst

[oracle@www1 sql]$crontab -l

# DO NOT EDIT THIS FILE - edit the master and reinstall.

# (/tmp/crontab.32619 installed on Mon Nov 22 09:51:02 2004)

# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)

30 05 * * * /home/oracle/sql/backup/auto_send_disk.sh >> /home/oracle/sql/backup/disk.lst 2>&10b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值