DATABASE

오라클 테이블스페이스별 용량/사용량 조회 쿼리 테이블스페이스별로 얼마만큼의 용량이 할당되어 있는지 얼마나 사용중인지 확인할수 있다. MB단위 select substr(a.tablespace_name,1,30) tablespace, round(sum(a.total1)/1024/1024,1) "TotalMB", round(sum(a.total1)/1024/1024,1)-round(sum(a.sum1)/1024/1024,1) "UsedMB", round(sum(a.sum1)/1024/1024,1) "FreeMB", round((round(sum(a.total1)/1024/1024,1)-round(sum(a.sum1)/1024/1024,1))/round(sum(a.total1)/1024/1024,1)*100,2..
클러스터링 팩터(Clustering Factor) 클러스터링 팩터는 우리말로 하자면 군집성 계수 즉 데이터가 모여있는 정도라고 번역할수 있다. 이는 데이터가 특정 컬럼을 기준으로 같은 값을 갖는 데이터가 모여있는 정도를 말하는데 흔히들 인덱스 클러스터링 팩터가 좋다라고 한다면 인덱스의 정렬순서와 테이블의 정렬순서가 비슷하여 스캔비용 이용이 적게 드는것을 말한다. 클러스터링팩터는 인덱스 스캔시의 비용(cost)에 영향을 미치며, dba_indexes, all_indexes, user_indexes의 인덱스뷰의 클러스터링팩터라는 컬럼을 통해 확인할수 있다. 클러스터링 팩터의 계산방식 오라클에서의 클러스터링 팩터의 계산방식은 카운터변수를 선언하고 인덱스 리프블록을 처음부터 끝까지 스캔해가며, 인덱스 ROWID..
다이나믹뷰명 설명 V$ACCESS 현재 데이터베이스내의 lock이걸린 object와 그 object를 access 하려는 session id. V$ACTIVE_INSTANCES 현재 데이터베이스내의 Mount된 모든 인스턴스에대하여 인스턴스 이름과, 번호를 매치. V$AQ 데이터베이스내의 모든 Queue에 대한 통계. V$ARCHIVE Archive에 필요한 redo log file에 대한 정보. 각각의 행은 하나의 thread에 대한 정보이다. V$LOG도 동일한정보. V$ARCHIVE_DEST 현재의 instance에서, 모든 archive log destination, 현재값, mode, status. V$ARCHIVED_LOG archive log 이름을 포함하는 controlfile에 대한 ar..
SQL을 작성하는 것은 누구나 가능하다. 하지만 성능이 최적화된 SQL은 아무나 작성할수가 없다. 일반 개발자들은 SQL을 작성하며, 어느어느 테이블에서 어떤 데이터를 출력하는데만 집중하지, 이 SQL이 어떻게 내부적으로 작동할것인 가에 대한 고민은 잘 하지 않는편인듯 하다. 본인이 작성한 SQL이 내부적으로 어떤 경로를 통해 어떻게 수행될것인가 하는정보는 SQL TRACE를 통해 조회가 가능하다. SQL TRACE는 SQL SCRIPT를 수행하며, 발생한 정보를 TRACE 파일에 기록하는데 이는 튜닝의 지표가 되는 요소들 실행계획, 처리에 필요한 시간, 처리중 발생한 I.O의 양이나 wait 상황등에 대한 정보가 기록된다. 따라서, SQL TRACE는 SQL튜닝시 가장 많이 사용되는 도구이며, 강력한 ..
DDL 로그 테이블 생성 CREATE TABLE AUDIT_DDL ( D DATE, OSUSER VARCHAR2 (255), SESSION_USER VARCHAR2 (255), HOST VARCHAR2 (255), TERMINAL VARCHAR2 (255), MODULE VARCHAR2 (255), OWNER VARCHAR2 (30), TYPE VARCHAR2 (30), NAME VARCHAR2 (30), SYSEVENT VARCHAR2 (30), SQL_TEXT VARCHAR2 (4000) ); DDL로그 트리거 생성 create or replace trigger audit_ddl_trg after ddl on database declare sql_text ora_name_list_t; stmt VAR..
DATA ROW길이 산정 데이터타입 산정길이 NUMBER ROUND(DATA_PRECISION)/2)+1 DATE 7 CHAR DATA_LENGTH VARCHAR2 길이30이상 ROUND(DATA_LENGTH/3) VARCHAR2 길이30미만 DATA_LENGTH INDEX ROW길이 산정 - 테이블에 포함된 인덱스들의 총길이 기술 초기건수 산정 - 테이블에 포함된 인덱스들의 총길이 기술 DATA SPACE 길이 산정 - 테이블의 1레코드에 소요되는 공간을 계산하여 기술 INDEX SPACE 길이 산정 - 테이블의 1레코드의 인덱스에 소요되는 공간을 계산하여 기술 초기크기 산정 - 초기구축시 소요되는 테이블별 소요 공간을 계산하여 기술 증가건수(년) 산정 - 년간 증가레코드 건수를 기술 총용량(1년후) ..
오라클 리스너 기본포트(1521) 이외에 신규 리스너 포트 추가 LISTENER.ORA SID_LIST_LISTENER_9999 (SID_LIST = (SID_DESC = (SID_NAME = ORCL) (ORACLE_HOME= /home/oracle) ) ) ADR_BASE_LISTENER = /home/oracle/app LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = HOSTNM) (PORT = 1521)) ) ) LISTENER_9999 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = HOSTNM) (PORT = 999..
리두로그버퍼 사이즈 확인 SELECT * FROM V$SGA NAME |VALUE | ----------------|---------| Fixed Size | 1375792| Variable Size |671089104| Database Buffers|394264576| Redo Buffers | 4603904| 리두로그버퍼 사이즈 변경 alter system set log_buffer=5M scope=spfile; 인스턴스 재기동 SHUTDOWN IMMEDIATE; STARTUP;
리두로그 현재상태 확인 select l.group#, member, archived, l.status, (bytes/1024/1024) MB from v$log l, v$logfile f where f.group# = l.group# order by 5; GROUP#|MEMBER |ARCHIVED|STATUS |MB| ------|----------------------------------|--------|--------|--| 3|D:\APP\KING\ORADATA\ORCL\REDO03.LOG|NO |CURRENT |50| 1|D:\APP\KING\ORADATA\ORCL\REDO01.LOG|NO |INACTIVE|50| 2|D:\APP\KING\ORADATA\ORCL\REDO02.LOG|NO |INA..
피스마린
'DATABASE' 카테고리의 글 목록