ASE MDA表可以用于监视数据库的增长吗?

2020-09-21 22:12发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

Sybase/SAP中的MDA可以用于数据库空间增长吗?

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

Sybase/SAP中的MDA可以用于数据库空间增长吗?

付费偷看设置
发送
4条回答
xfwsx85
1楼-- · 2020-09-21 22:48

您需要考虑要监视数据库空间使用的级别。

如果您只是在寻找每个网段/设备使用的空间,则可以通过定期采样monDeviceSegmentUsage来解决。

如果您正在寻找对象级别的指标(例如,您想深入了解网段/设备的使用情况以查看哪个表,索引,blob链消耗了最多的空间),那么您也许可以 通过对monCachedObject进行采样,尽管这很可能是不完整的,因为在您采样时它不会报告不在缓存中的对象。

无论所需统计信息的粒度如何,滚动自己的代码都可能会更好。 如果您不熟悉与空间管理相关的系统表和/或内置函数,则应考虑查看与空间相关的系统proc的源代码... sp_spaceused,sp_helpsegment,sp_helpdb ...您在寻找什么 对于与空间相关的函数调用以及针对系统表的与空间相关的查询。

蓋茨
2楼-- · 2020-09-21 22:52

看看sp_spaceusage-它具有在以下位置记录,收集和报告摘要和详细信息的功能: 对象级别,这就是我们多年来跟踪表增长的方法。

对于数据库数据和日志空间的增长,Mark是正确的,最好自己编写。 我们读取sysdatabase,sysdevices,sysusages和一些spt_values以获得每日快照,然后将其收集,汇总并提供给我们的分析。

黑丝骑士
3楼-- · 2020-09-21 22:38

好,谢谢... 我正在寻找的是一种会随着时间推移收集数据库空间增长的工具或东西,我确实有一个"自己的代码",但是需要更多的手动工作

isql-美国-Ppwd -w 300 -o $ {LOG} << EOF

使用母版

从系统服务器中选择*

选择"数据库名称" = substring(d.name,1,20)," Owner" = substring(l.name,1,20)," Status" = d.status," Creation Date" = substring( d.crdate,1,20)," Last dump Tran" = substring(d.dumptrdate,1,20)," Size(MB)" = isull(sum(u.size)* 2/1024,0)," 未分配的(MB)" =来自sysdatabase d,syslogins l,sysusages u的isull(sum(u.unreservedpgs)* 2/1024,0),其中d.suid = l.suid和d.dbid = u.dbid按d分组。 dbid,l.suid按1,2

开始

选择"数据库名称" = substring(d.name,1,20)," Dbid" = d.dbid," Segmap" = u.segmap," LStart" = u.lstart," Seg。Size(MB )" = isnull(u.size/512,0)," vdevno" = convert(数字(2,0),u.vstart/power(2,24)),"免费(MB)" = isnull(u。 sysdatabase d,sysusages u中的unreservedpgs/512,0),其中d.dbid = u.dbid顺序为2,4

开始

从系统中选择*

选择"设备名称" = substring(d.name,1,15)," Physical Name" = substring(d.phyname,1,64),vdevno = convert(numeric(2,0),d.low/power(2,24))," Size(MB)" =(d.high-d.low +1)* 2/1024," Reserved(MB)" = isull(sum(u.size)* 2/1024,0)," Left(MB)" =(d.high-d.low +1)* 2/1024-isull(sum(u.size)* 2/1024,0)from sysdevices d,sysusages u其中 d.status&2 = 2和u.vstart/power(2,24)= * d.low/power(2,24)按子字符串(d.name,1,15),substring(d.phyname,1 ,64),d.low/power(2,24),(d.high-d.low +1)* 2/1024的顺序通过vdevno计算sum((d.high-d.low +1)* 2/1024),sum(isnull(sum(u.size)* 2/1024,0)),sum((d.high-d.low + 1)* 2/1024-isull(sum(u.size)* 2/1024,0))

选择" Sybase版本" = substring(@@ version,1,120)

大简至美
4楼-- · 2020-09-21 22:52

谢谢大家!

一周热门 更多>