DM 数据库监控

DM 数据库监控

1.概念

    

2.状态与资源监控

CPU:

top 

查看进程运行时间

ps -eo pid,lstart,etime,cmd | grep 要查的进程

[root@enmoedu3 log]# ps -eo pid,lstart,etime,cmd | grep dmserver

3260 Mon Aug 29 09:46:23 2022     01:08:41 /opt/dm8/bin/dmserver path=/opt/dm8/data/PROD/dm.ini -noconsole

内存

free -h

[root@enmoedu3 log]# free -h

              total        used        free      shared  buff/cache   available

Mem:           3.9G        2.4G        262M        491M        1.2G        668M

Swap:          4.0G        531M        3.5G

centos 6

真正使用内存: used - cached - buffers

centos 7 

真正可用内存: available

swappines  取值(1-100)  值越底, 内存使用越倾斜使用内存

cat /proc/sys/vm/swappiness

修改 vim /etc/sysctl.conf

vm.swappiness=10     --物理内存使用90%后开始使用swap分区

sysctl -p

===================

arena问题: MALLOC_ARENA_MAX=1

磁盘: 使用率 + io指标

df -Th

[root@enmoedu3 log]# df -Th

文件系统       类型      容量  已用  可用 已用% 挂载点

/dev/sda2      xfs        40G  8.6G   32G   22% /

devtmpfs       devtmpfs  2.0G     0  2.0G    0% /dev

tmpfs          tmpfs     2.0G     0  2.0G    0% /dev/shm

tmpfs          tmpfs     2.0G   19M  2.0G    1% /run

tmpfs          tmpfs     2.0G     0  2.0G    0% /sys/fs/cgroup

/dev/sda5      xfs        50G  6.0G   45G   12% /opt

/dev/sda1      xfs       197M  121M   77M   62% /boot

tmpfs          tmpfs     396M  4.0K  396M    1% /run/user/42

tmpfs          tmpfs     396M   84K  395M    1% /run/user/0

/dev/loop0     iso9660   911M  911M     0  100% /mnt

规划专用的数据库程序目录

数据,归档,备份分开放

空间使用率.

iostat

[root@enmoedu3 log]# iostat -d -x -m 2 5

Linux 3.10.0-957.el7.x86_64 (enmoedu3.enmotech.com)     2022年08月29日     _x86_64_    (2 CPU)

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util

sda               1.10    13.41   24.31    8.62     0.76     0.77    94.97     1.57   47.58   16.31  135.74   0.80   2.62

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util

sda               0.00     0.00    0.50    0.50     0.00     0.00    12.00     0.00    0.50    1.00    0.00   0.50   0.05

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util

sda               0.00     1.00    0.00    6.50     0.00     0.05    14.77     0.01    1.15    0.00    1.15   0.46   0.30

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util

sda               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

%util : 繁忙程度.有并行能力的磁盘100%,不一定到瓶颈.

await,svctm : await 等待时间, svctm: 服务时间 .这两个指标相近,表示实际工作中.

查看磁盘写入速度

dd if=/dev/zero of=test bs=8k count=64k oflag=dsync

网络

ethtool --查看网卡速度

服务器时间同步

影响集成mal系统. 影响时间戳相关服务.


实例资源监控 

会话监控

--会话数量

select count(*) from v$sessions ;

--空闲和活动的会话数

select a.STATE ,count(*) from SYS."V$SESSIONS" a

group by a.STATE ;

活动会话太多: 业务繁忙,慢sql ,数据异常,应用重连机制缺失.

空闲会话太多: 业务空闲期 ,连接池会话上线高,应用释放连接机制异常.

操作系统命令查看会话

lsof -i:5236 

netstat -nat | awk '{print $4}' | grep 5236 | wc -l

慢sql与阻塞

长耗时sql

select a.SESS_ID ,a.SQL_TEXT ,a.LAST_RECV_TIME  ,a.LAST_SEND_TIME from SYS."V$SESSIONS" a  ;

--查看指定session的sql

select sf_get_session_sql(116150400) ;

select t1.SQL_TEXT ,t1.STATE ,t1.TRX_ID

from SYS."V$SESSIONS" t1 ,SYS."V$TRX" t2

where t1.TRX_ID = t2.id and t1.STATE='IDLE' and t2.STATUS =  'ACTIVE' ;

SELECT a.SESS_ID ,a.SQL_TEXT ,a.STATE ,a.TRX_ID

from v$sessions a , SYS."V$TRXWAIT" b

where a.TRX_ID = b.WAIT_FOR_ID ;

开启ENABLE_MONITOR和MONITOR_TIME

SP_SET_LONG_TIME(1000)设置记录最小时间

释放会话

SP_CLOSE_SESSION ()


内存监控

达梦数据使用的内存大致等于BUFFER+MPOOL .

buffer ,物理内存的60% 

select a.NAME ,sum(free) from SYS."V$BUFFERPOOL" a group by  a.NAME order by 2 ;  -- 根据free 列调整大小

mem_pool需要关注使用大小和名称

select a.NAME,count(*) ,SUM(a.ORG_SIZE)  ,SUM(a.TOTAL_SIZE),SUM(a.RESERVED_SIZE)  ,SUM(a.DATA_SIZE),sum(a.TARGET_SIZE)

from SYS."V$MEM_POOL" a group by a.NAME

order by 4

;

SHARE_POOL 共享池

session 会话池

sql_CACHE_MANAGEMENT SQL缓存区

MAL_SYS 邮件系统池

监视使用内存的多的sql:

v$sql_stat  -- 前提 ENABLE_MONITOR=1, 关注 MAX_MEM_USED

v$sql_stat_history  -- 通过SP_SET_SQL_STAT_THRESHOLD()设置监控阀值


表空间监控

注意监控ROLL和TEMP

不同业务数据有独立表空间,不要使用MAIN表空间

可以对表空间设置阈值上限

ROLL设置上限

--查看表空间

select * from SYS."V$TABLESPACE

--roll设置上限:

select * from SYS."V$TABLESPACE" a ;

select * from SYS.DBA_DATA_FILES a where a.TABLESPACE_NAME =  'ROLL';

alter TABLESPACE ROLL DATAFILE 'ROLL.DBF' AUTOEXTEND ON  MAXSIZE 512000 ;

TEMP设置上限

TEMP_SIZE 设置TEMP大小

TEMP_SPACE_LIMIT 设置TEMP大小上限

select a.TABLESPACE_NAME ,A.BYTES/power(2,20) from  SYS.DBA_FREE_SPACE a ; -- 查看数据文件剩余空间


数据库日志

信息分类: INFO ,WARNNING ,ERROR ,FATAL 

数据库sql日志:

1.如果开启sql日志,则必须配置日志切换模式SWITCH_MODE和FILE_NUM,防止日志无限增长.

2.同步日志影响系统效率,生成环境建议配置异步.

3.合理设置sql过滤规则: SQL_TRACE_MASK


数据库备份检查

合理规划数据库备份周期和策略.

设置任务定期清理历史备份.

定期校验数据库备份有效性.

https://eco.dameng.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值