no image
[Oracle] AWR Report 보는 법 - Load Profile 항목은 어떻게 보는가
AWR Report에는 다양한 항목이 있다그 중 Report Summary , SQL Statistics , Advisory Statistics 이렇게를 많이 본다  볼 수 있는 항목들을 정리하자면Report Summary 로도 충분히 어느부분이 문제인지 알 수 있다. SQL statistic 에서 SQL 정보 (buffer cache Access , Disk Access 등) 확인 Advisory Statistics : 10G 이후부터는 DB가 SGA, PGA, Undo Segment 등 사이즈 조정 및 Re-Org 등 조언을 해준다 보다 자세한 정보가 필요하면 , buffer pool statistic , Dictionary Cache Statistic , Library Cache Statistic ..
2024.06.06
no image
[Oracle] AWR- report HTML 형식으로 보는 법
0. report 를 만든다 * DBA 권한이 있는 user로 접속을 한 후 * SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sql 을 실행시켜주면 , report type을 선택할 수 있다. SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sqlSpecify the Report Type~~~~~~~~~~~~~~~~~~~~~~~AWR reports can be generated in the following formats. Please enter thename of the format at the prompt. Default value is 'html'.'html' HTML format (default)'text' Text format'active-htm..
2024.05.17
no image
[Oracle] AWR 이란? AWR Report 생성하는 법
AWR이란?Automatic Workload Repository시간 주기별로 DB status snapshot을 찍어서 통계치를 낸다성능 정보에 대한 내장 Repository이다 Performance Data Dictonary의 내용을 snapshot을 찍느다   AWR Script 위치$ORACLE_HOME/rdbms/admin 위치로 가면 AWR sql 파일들을  확인할 수 있다  접속DBA 권한이 있는 User로 접속한다[oracle@sua-oracle dbhome_1]$ sqlplus '/as sysdba'SQL*Plus: Release 19.0.0.0.0 - Production on Thu May 16 02:28:10 2024Version 19.3.0.0.0Copyright (c) 1982, 2..
2024.05.16
no image
[Oracle] Wait Event - Library Cache 란?
Library Cache란?- SQL 을 수행하게 되면 , 그 SQL 에 관련된 정보를 저장하는 곳이 필요하다 , (어떤 테이블에 접근하고, 권한은 어떻게 되며, plan이 저장된 메모리 위치는 어디인지 등등  )- Storage 상에 System Tablespace에 존재하겠지만 어떤 테이블에 저장되는지 궁금하다 ..  Lirary Cache - SQL Hash-  SQL의 Hash값으로 저장되어야 할 Hash Bucket이 선정 된다 -  Hash Bucket에는 각 SQL Hash 값에 따른 SQL정보가 어디에 있는지를 알려준다 -  Hash Bucket이 가르키는 LCO로 가면 해당 SQL의 정보를 찾을 수 있다   LCO는 어떻게 구성이 되어 있을까LCO 는 Library Cache Object..
2024.05.15
no image
[Oracle] Wait Event - Log Buffer Space , Log File Switch Completion, Log File Switch란?
Log Buffer Space 란?Redo Log Buffer에 있는 데이터가 Storage로 아직 다 내려가지 않아서 , Server Process 가 기다리는 경우 이다 즉, buffer에 쌓여지는게 storage 로 내려가는것 보다 빠르게 진행 될 경DML 부하가 많을 경우 , 또는 Redo Log Buffer 크기가 작을 경우 발생할 수 있다.Redo Log Buffer를 더이상 늘릴 수 없을 경우 , LGWR 쪽 성능을 늘리는 방안을 고려해야한다  Log File Switch Completion란?( 개념. Log File 이 가득 차게 되면 다음 Redo Log Group 의 Log File 로 쓰게 된다 )Log File Switch 가 되서 다음 Log Group 의 Log File에 쓰려..
2024.05.15
no image
[Oracle] Wait Event - Log File Sync, Log File Parallel Write 란?
개념- Server Process 가 DML 작업을 하면 Redo Log Buffer에 쌓게 된다 - Commit을 수행하면 Redo Log Buffer에 있던 해당 DML은 Redo Log File에 기록이 된다  Log File Sync란 - Server Process 가 Commit을 수행하여 Redo Log Buffer에 있는 내용을 Redo Log File로 Write해달라고  LGWR한테 요청할 때 발생하는 Wait 이다-  빈번한 Commit이 발생하거나 , Redo Log File의 IO성능이 좋지 못할 경우 발생한다 (RAID-5일때 많이 발생한) Log File Parallel Write란- LGWR이 OS한테 Write를 요청할 때 발생한다 (OS쪽에서 ACK가 오면 Wait는 풀리게..
2024.05.15
no image
[Oracle] Wait event - Free Buffer Waits , db file parallel write, write complete waits
Free Buffer Waits - buffer cache의 free buffer가 나올때까지 wait하는 거다 - server process가 storage 상에 데이터를 buffer에 올려야 하는데 free buffer가 없을 경우에 발생한다 - dirty buffer를 DBWR을 사용해서 storage로 내려 재활용이 되게 해야한다  실운영에서 발생 원인 - 대량 범위의 random io Access를 하는 SQL 이 자주 호출될 경우, buffer cache를 많이 잡고 있기 때문에 다른 작업들이 wait하게 된다  - free buffer를 잡지 못한 server process는 DBWR한테 요청을 하고 대기를 하는게 "free buffer waits".   - 요청 내용은 : to.DBWR  ..
2024.05.15
no image
[Oracle] Wait Event - Buffer Cache
Oralce에서 Buffer Cache와 관련된 Wait Event를 알아본다  Oracle 주요 구성 요소별 I/O 관련 Wait Event주요 I/O 대상 구분Wait EventWait ClassDatafile I/Odb file sequential readUser I/Odb file scattered readUser I/Odirect path reads and writesUser I/OTemporaryDatafile I/Odirect path reads tempUser I/Odirect path write tempUser I/OBuffer Cache(Latch 포함)latch: cache buffer chainsConcurrencylatch: cache buffer LRU chainsConcurre..
2024.05.15
[MongoDB] Centos에서 Java로 xml데이터 insert 하기
port 확인하는 법 mongo --eval "printjson(db.serverCmdLineOpts())" 명령으로 사용하는 포트를 확인한다 [root@server mongoDBtest]# mongo --eval "printjson(db.serverCmdLineOpts())"MongoDB shell version v5.0.26connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodbImplicit session: session { "id" : UUID("ab826c11-d106-4751-bbf2-91b8a17d1de9") }MongoDB server version: 5.0.26{ "argv" : [ "..
2024.05.13