忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
12下一页
最近访问板块 发新帖
查看: 4994 | 回复: 10

有关如何找到一个对象所占有页的研究 [复制链接]

论坛徽章:
0
发表于 2011-04-01 20:21 |显示全部楼层
最近几天一直在思考以下几个问题
1、如何把一个对象的所有页全部找出来?
2、如何直观的展现?

对于上述的问题,初步思路如下:
1、使用两个dbcc命令,dbcc allocdump,dbcc listoam
2、读取分配页和OAM页的内容
3、展现的方式可以考虑使用扫雷的界面

初步实现展示如下:
bitmap.JPG

目前是挂靠在powersybedit上面,界面上不是特别好看,而且在powersybedit上,这项功能只能自己使用,因此在之后,考虑单独拉出来做一个。大家可以建议建议!另外的话,时间是实在有限,东西不一定能很好。

论坛徽章:
28
CU大牛徽章
日期:2013-04-17 10:59:39荣誉版主
日期:2015-02-04 10:04:082015年亚洲杯之阿联酋
日期:2015-02-06 17:15:532015亚冠之武里南联
日期:2015-06-06 15:40:252015亚冠之北京国安
日期:2015-06-17 15:42:412022北京冬奥会纪念版徽章
日期:2015-08-10 16:30:322015亚冠之阿尔纳斯尔
日期:2015-09-20 09:42:12数据库技术版块每日发帖之星
日期:2015-09-24 06:20:0015-16赛季CBA联赛之北京
日期:2016-01-15 10:03:59IT运维版块每日发帖之星
日期:2016-01-20 06:20:0015-16赛季CBA联赛之青岛
日期:2016-04-26 16:44:49数据库技术版块每日发帖之星
日期:2016-06-21 06:20:00
发表于 2011-04-02 07:59 |显示全部楼层
hobbylu每年都会给人一个惊喜!

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
发表于 2011-04-02 08:41 |显示全部楼层
请问一下,这些dbcc输出都是print出来的,而非结果集,请问lz是怎么捕捉到这些输出信息的阿?谢谢

论坛徽章:
0
发表于 2011-04-02 09:17 |显示全部楼层
sybase open client中提供了回调函数,可以捕捉相关输出

论坛徽章:
7
数据库技术版块每日发帖之星
日期:2015-08-09 06:20:00数据库技术版块每日发帖之星
日期:2015-11-03 06:20:00数据库技术版块每日发帖之星
日期:2016-02-20 06:20:00数据库技术版块每日发帖之星
日期:2016-07-13 06:20:00数据库技术版块每日发帖之星
日期:2016-07-31 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
发表于 2011-04-02 09:27 |显示全部楼层
哦。那请问JDBC可以吗?谢谢

论坛徽章:
0
发表于 2011-04-02 14:44 |显示全部楼层
没有研究过,按道理应该可以的

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2011-04-05 14:38 |显示全部楼层
这2个问题都是难点。
分析对象所占的页号,可以直接解析allocation page 和 extent page,也可按你说的接收open client回调的结果。这个对你来说,应该不是太难的问题了。

我觉得如何更好得展示出来,也是个难题。如果某个对象占用页面数很多的话,显示起来会是问题。 你可以参考sqlserver management studio中带的那个显示页面内容的插件。感觉那个显示效果挺好的。

论坛徽章:
6
水瓶座
日期:2014-06-04 03:34:37水瓶座
日期:2014-06-17 13:20:31数据库技术版块每日发帖之星
日期:2016-07-09 06:20:00数据库技术版块每日发帖之星
日期:2016-07-17 06:20:00数据库技术版块每日发帖之星
日期:2016-08-01 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
发表于 2011-04-05 14:41 |显示全部楼层
关于功能上的建议: 显示某个对象的占用页面位图的时候,能够做个链接,点某个页号就显示相应的页面真实数据。

论坛徽章:
0
发表于 2011-04-06 09:18 |显示全部楼层
andkylee的想法我都有考虑,果然是大家,不过目前主要的问题是在展现上,用VC编写界面总之不是很容易。

论坛徽章:
0
发表于 2011-04-06 14:16 |显示全部楼层
今天做了一个控件,感觉一个字“累”。 allocunit.JPG
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP