查询达梦监控服务器数据库各表大小(清理)

文章介绍了如何通过数据库脚本监控DEM服务目录下的表空间使用情况,特别是针对表DMA_DATABASE_LOCK进行了清理。同时,文章还提供了定时删除ApacheTomcat日志的命令示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、数据库监控DEM
服务目录:/data/dem/bin/DmServiceDEM
/data/dem/bin
./disql SYSDBA/SYSDBA:5236(默认)
在apache的bin目录下,通过sh start.sh启动dem查询DEM下各表大小,对占用空间最大的表DMA_DATABASE_LOCK进行清理

WITH FUNCTION GET_SIZE_BY_PAGES(NUM_OF_PAGE BIGINT, KB_MB_GB VARCHAR(2) DEFAULT 'KB') RETURN NUMBER(15, 2) AS
    V_SIZE_KB NUMBER(15, 2) := ROUND(PAGE() * NUM_OF_PAGE / 1024.00, 2);
BEGIN
    IF KB_MB_GB = 'MB' THEN
        RETURN V_SIZE_KB / 1024.00;
    ELSIF KB_MB_GB = 'GB' THEN
        RETURN V_SIZE_KB / 1024.00 / 1024.00;
    END IF;
    RETURN V_SIZE_KB;
END;
SELECT 
       T.OWNER,
       T.TABLE_NAME,
       GET_SIZE_BY_PAGES(INDEX_USED_PAGES(T.OWNER, T.INDEX_NAME), 'MB') AS TABLE_USED_SPACE_MB,
       GET_SIZE_BY_PAGES(INDEX_USED_PAGES(T.OWNER, T.INDEX_NAME), 'GB') AS TABLE_USED_SPACE_GB,
       TABLE_ROWCOUNT(T.OWNER, T.TABLE_NAME)                            AS TABLE_ROWCOUNT
FROM DBA_INDEXES T
WHERE T.OWNER IN ('DEM') AND T.INDEX_TYPE='CLUSTER' and t.TABLE_NAME in (select table_name from dba_tables where owner='DEM')
ORDER BY TABLE_USED_SPACE_MB DESC, TABLE_ROWCOUNT DESC;

--DEM.DMA_DATABASE_LOCK表最大,对其进行清理
truncate table DEM.DMA_DATABASE_LOCK

2、定时删除apache的log日志

find /data/apache-tomcat/logs -mtime +62 -type f -name *.txt -exec rm -rf {} \;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嗜甜兔星人

创作不易,球球各位看官支持一下

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值