DM数据库运行中监控并渐进改善的几个指标

        DM数据库在业务系统进行投产之后,结合程序和应用的执行,数据库的性能、容量以及一些运行过程中的警告和故障都会随时有所变化。所以要对DM数据库的某些重要指标进行关注和监控,以对DM数据库进行存储,性能以及架构层面的管理和优化。

达梦技术社区 https://eco.dameng.com

        本文此次主要从三个方面进行说明,分别是故障、容量、性能。其中故障指的是一般性的通常的实例运行故障。

一、数据库实例通用故障巡检

1、首先是日志,尤其是ERROR报警和HA

DM 数据库系统在运行过程中,会在 log 子目录下产生一个“dm数据库名日期.log”命名的系统日志文件。其中YYYY表示年份,MM表示月份。例如,dm_DMSERVER_202102.log

事件日志文件对 DM 数据库运行时的关键事件进行记录,如系统启动、关闭、内存申请失败、IO 错误等一些致命错误。这个文件就是我们所说的DM数据库的告警日志文件,也就是全局日志文件。

以dm_DMSERVER_202201.log 日志为例,

使用命令 grep  -i error  dm_DMSERVER_202201.log ,如下图:

作为一个重要指标,不是ERROR报警指标,是需要长期统计增长规律,后期是要进行下一步工作安排的。

  • 数据库数据容量方面;

数据库容量监控,需要关注的数据库对象主要有三个方面,表空间、表、索引。

首先,检查数据库总容量,如下图:

2、表空间容量巡检检查语句:

使用如下语句查询各表空间容量,示例如下:

select ts.name,df.path,df.total_size,df.free_size, df.total_size-df.free_size as used from v$datafile df,v$tablespace ts where df.GROUP_ID=ts.id;

3、数据表容量巡检检查语句:

使用系统函数TABLE_USED_SPACE查看表占用的空间,示例语句如下,查询容量是以M为单位。如下图:

4、表的索引容量巡检检查语句:

使用系统函数INDEX_USED_SPACE查看表占用的空间,示例语句如下,查询容量是以M为单位。如下图:

可以使用系统函数INDEX_USED_SPACE得到索引占用空间的大小,函数参数为索引ID,返回值为占用的页的数目。

5、统计容量当然也可以有其他的角度,比如查看某个用户占用的空间。

查看用户占用的空间:

容量统计巡检完成后,其后期的工作包括,根据表中数据业务需求情况进行表的变更,也可以说是对数据库的表对象进行整理。比如,定期的大表数据清理,比如某些表包含历史数据的清除,尤其是记录log日志的表,一般保留半年或者一年的log数据就可以。另外可以把某些大表根据业务查询情况,将表变更为分区表等。

这些都可以整体上,整个系统层面获得良好的性能和存储资金投入收益。

  • 数据库性能方面。

性能方面主要关注慢SQL语句。

通过V$SQL_HISTORY视图可以查询执行SQL的历史记录信息,找到执行时间长的SQL语句记录进行保存。

 死锁巡检检查语句:

通过V$DEADLOCK_HISTORY 视图查询死锁的历史信息。

 查看返回结果集数量大的SQL语句。

通过查询V$PRE_RETURN_HISTORY视图,查看需要返回结果集量大的SQL信息。

数据库慢SQL语句的执行除了语句质量和实现方式,也和数据库的统计信息由重要关系。

收集统计信息的方法如下所示:

--收集指定用户下所有表所有列的统计信息:
DBMS_STATS.GATHER_SCHEMA_STATS('DEM',100,TRUE,'FOR ALL COLUMNS SIZE AUTO');


--收集指定用户下所有索引的统计信息:
DBMS_STATS.GATHER_SCHEMA_STATS('DEM',1.0,TRUE,'FOR ALL INDEXED SIZE AUTO');

收集表上的某列的统计信息,示例如下图:
STAT 100 ON table_name(column_name);

四、DM数据库实例运维,运行状态实时查看

1、当前实例中,运行状态活动会话情况。

检查当前实例运行中活动会话数,示例如下:

SELECT COUNT(*) FROM V$SESSIONS WHERE STATE='ACTIVE';

查询实例运行中总得连接数:

SELECT COUNT(*) FROM V$SESSIONS ;

 

达梦技术社区 https://eco.dameng.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值