본문 바로가기
다른 DBMS/Tibero

Daily Check 스크립트

by 취미툰 2021. 2. 22.
반응형

제가 사용하는 Daily Check 스크립트입니다.

사용방법을 아래에 순서대로 포스팅하였습니다.

 

1..bash_profile에 아래 명령어 추가 (디렉토리 위치에 따라 다르게 설정 가능)

##daily check

export CHKHOME=/home/tibero

alias dchk='sh $CHKHOME/dailycheck/daily_chk.sh'

 

2.dailycheck 디렉토리 생성 및 sh 파일생성

 

mkdir /home/tibero/dailycheck

 

log check 영역은 티베로의 sys.log에서 error라고 발생된 log 중에 특정 에러 번호(21012,5074,15112)를 제외하고 300개만 보겠다라는 의미입니다. (에러번호는 변경하셔서 사용하시면 됩니다.)

밑에 sql은 버퍼캐시히트율,세션카운트,테이블스페이스 사용량입니다.

 

$vi daily_chk.sh

##log check

cd /home/tibero/tibero6/instance/tibero/log/slog

tail -300 sys.log |grep -E -i "ec=error"|grep -Ev '21012|5074|15114'  

 

 

##

tbsql  sys/tibero <<EOF

 

@/home/tibero/dailycheck/sql/bchr.sql

 

@/home/tibero/dailycheck/sql/sess_cnt.sql

 

 

@/home/tibero/dailycheck/sql/tbs.sql

exit

EOF

 

 

3.sql 디렉토리 생성 후 sql 파일 생성

mkdir /home/tibero/dailycheck/sql

 

vi bchr.sql

더보기

set linesize 132

set feedback off

 

col "Time" format a19

 

SELECT  TO_CHAR(sysdate,'yyyy/mm/dd hh24:mi:ss') "Time"

                         ,"Physical read"

       ,"Logical read"

       ,"Hit"

       ,CASE WHEN "Hit" > 90 then 'Good'

             WHEN "Hit" between 70 and 90 then 'Average'

             ELSE 'Not Good'

        END as "Status"

FROM

(

 SELECT  pr1.value + pr2.value  "Physical read"

        ,bg1.value + bg2.value + bg3.value "Logical read"

        ,ROUND( (1 - (pr1.value + pr2.value) / (bg1.value + bg2.value + bg3.value) ) * 100, 2) "Hit"

 FROM v$sysstat pr1, v$sysstat pr2,

      v$sysstat bg1 , v$sysstat bg2 , v$sysstat bg3

 WHERE pr1.name = 'block disk read'

  and pr2.name = 'multi block disk read - blocks'

  and bg1.name = 'consistent block gets'

  and bg2.name = 'consistent multi gets - blocks'

  and bg3.name = 'current block gets'

)

/

 

vi sess_cnt.sql

더보기

select count(*) from v$session

vi tbs.sql

더보기

set feedback off

set linesize 150

set pagesize 100

 

col "Tablespace Name" format a20

col "Bytes(MB)"       format 999,999,999

col "Used(MB)"        format 999,999,999

col "Percent(%)"      format 9999999.99

col "Free(MB)"        format 999,999,999

col "Free(%)"         format 9999.99

col "MaxBytes(MB)"       format 999,999,999

 

SELECT ddf.tablespace_name "Tablespace Name",

       ddf.bytes/1024/1024 "Bytes(MB)",

       (ddf.bytes - dfs.bytes)/1024/1024 "Used(MB)",

       round(((ddf.bytes - dfs.bytes) / ddf.bytes) * 100, 2) "Percent(%)",

       dfs.bytes/1024/1024 "Free(MB)",

       round((1 - ((ddf.bytes - dfs.bytes) / ddf.bytes)) * 100, 2) "Free(%)",

       ROUND(ddf.MAXBYTES / 1024/1024,2) "MaxBytes(MB)"

FROM

 (SELECT tablespace_name, sum(bytes) bytes, sum(maxbytes) maxbytes

   FROM   dba_data_files

   GROUP BY tablespace_name) ddf,

 (SELECT tablespace_name, sum(bytes) bytes

   FROM   dba_free_space

   GROUP BY tablespace_name) dfs

WHERE ddf.tablespace_name = dfs.tablespace_name

ORDER BY ((ddf.bytes-dfs.bytes)/ddf.bytes) DESC

/

 

4.dchk 확인

[tibero@ysbae sql]$ dchk

tbSQL 6

TmaxData Corporation Copyright (c) 2008-. All rights reserved.

Connected to Tibero.

SQL> SQL>
Time                Physical read Logical read        Hit Status
------------------- ------------- ------------ ---------- --------
2021/02/21 21:14:53          4177     13265478      99.97 Good
SQL> SQL>
  COUNT(*)
----------
         1
SQL> SQL> SQL>
Tablespace Name         Bytes(MB)     Used(MB)  Percent(%)     Free(MB)  Free(%) MaxBytes(MB)
-------------------- ------------ ------------ ----------- ------------ -------- ------------
SYSSUB                         40           37       93.44            3     6.56       32,768
UNDO                          800          676       84.48          124    15.52       32,768
SYSTEM                        100           80       80.13           20    19.88       32,768
TEST                        3,076          430       13.98        2,646    86.02       32,768
USR                           100            1        1.00           99    99.00       32,768
TS_MCM_MART_DATL              100            1         .88           99    99.13       32,768
IX_MCM_MART_DATL              100            1         .50          100    99.50       32,768
LOB_TEST                    1,024            0         .00        1,024   100.00            0
SQL> Disconnected.
반응형

댓글