统计sybase数据库碎片占用空间的sql脚本

chard 2003-10-10 03:06:52
统计sybase数据库碎片占用空间的sql脚本(如索引空间)
...全文
70 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ELAIN 2004-03-17
  • 打赏
  • 举报
回复
optdiag 是什么东东,还请 tolison解释清楚些
fbc 2004-03-16
  • 打赏
  • 举报
回复
请教:碎片??指的是什么呢。
楼上的脚本中统计了数据库中所有的表占用的情况。
有没有比他高一及的呢。我想查看一个用户或者一个数据库的站用的情况。
比如:a数据库有表20张,按照上边的脚本会把这20张表的占用情况列出来。
现在我想查看a的情况。怎么办啊。有没有别的什么方法。不用基于上边的脚本求和计算的。
tolison 2004-03-16
  • 打赏
  • 举报
回复
你使用optdiag 试试看,其中有很多非常有用的信息,你打算用于数据整理吧。
sql语句目前还没有研究出来怎么能出optdiag 的结果。
hkzhou 2003-10-11
  • 打赏
  • 举报
回复
学习
zyhlhx 2003-10-10
  • 打赏
  • 举报
回复
你是要看所有表/索引占用的空间,还是碎片的空间 如果是后者 我就不清楚了
前者 参看:(查询某个数据段上表占用的空间 )
SELECT USER_NAME(O.uid),O.name,I.name,I.indid,
STR(ROUND((RESERVED_PGS(I.id,doampg)+RESERVED_PGS(I.id,ioampg))*(2048/1024576.0),2),9,2), --reserved
STR(ROUND(CONVERT(numeric(20,9),DATA_PGS(I.id,doampg))*(2048/1024576.0),2),9,2), --data
STR(ROUND(CONVERT(numeric(20,9),DATA_PGS(I.id,ioampg))*(2048/1024576.0),2),9,2), --index
STR(ROUND(CONVERT(numeric(20,9),((RESERVED_PGS(I.id,doampg)+RESERVED_PGS(I.id,ioampg))-(DATA_PGS(I.id,doampg)+DATA_PGS(I.id,ioampg))))*(2048/1024576.0),2),9,2), --unused
I.status,
I.status2
FROM syssegments S,sysindexes I,sysobjects O
WHERE S.name='default' --段名
AND I.id!=8
AND I.segment=S.segment
AND I.id=O.id ORDER BY I.indid

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧