SYBASE数据库表容量管理参考

上传人:do****y1 文档编号:169597361 上传时间:2022-11-16 格式:DOCX 页数:8 大小:31.33KB
返回 下载 相关 举报
SYBASE数据库表容量管理参考_第1页
第1页 / 共8页
SYBASE数据库表容量管理参考_第2页
第2页 / 共8页
SYBASE数据库表容量管理参考_第3页
第3页 / 共8页
点击查看更多>>
资源描述
SYBASE 数据库表容量管理参考文/数据中心 邵大年 赖敏虹摘要目前通过 Myame、BMC 监控软件采集的 Sybase 数据库级别的 容量信息,例如库大小、日志大小等信息,可以对数据库的整体性 能有大致了解,但是对于数据库内部的一些细节情况的变化,例如 每张表中数据量的变化,系统管理员无法获得准确的信息,不利于 系统管理员对数据库运行状况进行精准的分析和管理。本文描述了数据库表容量管理的实现方法,通过此手段,系统 管理员可以更好地了解数据库运行情况,并以此作为数据库性能进 行调优的依据,从而优化数据库性能,并进一步定期表容量管理进 行日常检查,系统管理员也可以根据反馈结果明确数据库的增长规 模,从而能够更有效地执行数据库容量管理以及数据清理工作。一、概述本文的 Sybase 数据库容量管理是通过自行开发的存储过程, 来实现对表容量的统计。存储过程的调用顺序为:sp_statictable调 用sp_staticdatabase,而建立顺序则相反。其中对于数据库信息的监 控,可以通过调用 sp_staticdatabase 存储过程实现,而对于表容量 内容管理的具体操作,主要是通过调用 sp_statictable 存储过程来进 行实现的。 sp_staticdatabase 存储过程可以获取数据库 Server 名、新建sp statictable存储过程 建立lobnoms dbmsg, Lab, pdgxounls四张表将数据库表的信息获取到上 述四张表中将sp staticdatabase和 sp statictable的调用结果全 部输出到文件中存放数据库中所有对象除了syslogs) 的页面数信息分别获取resen/ed pages, data pages, index pages 以及unuscci pagcsW.累加页面数单独的数据对象来计算总 结结果将相关信息存到fmtpgcnts表中,执行sp sLaticdaLabasc存储过程获取数据库中所有表的相关信息字符集信息、数据库页面大小等于数据库相关的信息。创建sp sLaLiedaLabas e看储过程建立pgcounLs表初始化图 1 数据库表信息存储流程该存储过程的主要流程是,首先建立 pgcounts 表用来记录数据库信息,如 Figure 2 所示:pgeountsnameidindidres_pgslowdpgs ipgs unused图 2 数据库信息表获取 syslogs 表的页面数信息并保存到 slog_res_pgs 中 ,然后将当前数据库中所有对象(除了 syslogs )的页面数信息存放在pgcounts 表中。根据 indid 值为 0,1 及其他的情况分别获取 reservedpages, data pages, index pages 以及 unused pages 值,并更新到pgcounts表。之后再通过累加页面数单独的数据对象来计算总结果,并将 syslogs 的页面信息加到总结果中。最后将相关信息存到 fmtpgcnts 表中。通过执行 sp_staticdatabase 存储过程,便能获取到 数据库的相关信息。再新建 sp_statictable 存储过程用来获取数据库中所有表的相关 信息。建立 tabname、dbmsg、tab、pagecounts 四张表,如图 Figure 3 所示:pagecounts dbname dbid name t abid inname indid low rowtotal reserved data index_size unusedtabdbname dbid name id rowtotal reserved data index_size unused length图 3 数据库表信息在 sp_statictable 存储过程中,扫描整个数据库,并根据 indid=0 、 1 以及 1 的情况计算数据表的容量值,并将计算得到的数据值存 放到 tabname、dbmsg、tab 及 pagecounts 四张表中。执行sp_statictable存储过程,将数据库中所有表的相关信息获 取到之前定义的四张表中 最后 将sp_staticdatabase和sp_statictable 的调用结果全部输出到文件中,这样便能获取到表容量的相关信息.二、数据库表容量管理的表现方法过在 crontab 中定期调用 sp_statictable 存储过程,可以将数据库的信息及数据库中所有数据表在某一时间点的信息全部以文本 方式输出。可以通过对比不同时间点的输出文本结果来观察数据库 表容量值的变化情况。输出的内容主要包括两部分:数据库的相关信息以及数据库中 每一张表的信息,大致形式如下:数据库信息名称数据表信息库名称库id数据库id库大小表名称保留空间表id数据空间总行数索引空间保留空间未使用空间数据空间索引空间未使用空间表所有字段长度目前在数据中心已经在 OpenIMIS 中开发了表容量管理的分析 工具,可以对一段时间的表容量变化进行图形化展示,并且可以对 一个数据库中按照容量大小或者记录大小等方式进行排列,并可以 生成对应的报表等。输出信息实例:数据库信息:DATABASEOUTPUTBEGIN:DATABASEINFO:DATETIME=20110815043010DBSERVERNAME=HQs_ADMS02_SRVDBSERVERVERSION=Adaptive Server Enterprise/15.0.2/EBF 14780 ESD#1/P/Linux Intel/Linux 2.4.21-47.ELsmp i686/ase1502/2493/32-bit/FBO/Wed Aug 29 08:57:09 2007 DBSERVERVERSION_NUMBER=15020 DBSERVERLANGRAGE=us_englishCLIENTCODEING=utf8DBSERVERPAGESIZE=2048DBSERVERBOOTCOUNT=19DBSERVERBOOTTIME=20110319041915#DBSERVERDATABASEINFO: MBDBSERVERDATABASEINFO: db_adms_02,4,133000,64734,38651,22412,3669 dbccdb,31515,6000,1931,1603,320,7 master,1,280,51,40,1,9 model,3,12,6,0,0,5sybsystemdb,31513,332,6,0,0,5数据库表信息:DBSERVERDATATABLEINFO: db_adms_02,4,abc_adms_sys_s,219248905,0,192,8,16,168,48三、结论目前我行 Sybase 数据库大部分运行在类 UNIX 平台上,可以通过在“ crontab ”中定时调用相应表容量管理的脚本来实现数据库表容量的实时监控,并将结果反馈到 OpenIMIS 展现出来。也可以对 数据库表容量变化的关键时间点的表容量进行统计,例如清理前、 清理后、日终前、日终后、高峰前、高峰后等。【注】原文请参考:开放平台文档服务器 分行技术园地 系统技术汇编 运维篇 数据库 SYBASE数据库表容量管理参考
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!