READ"와 "BUFFER" 수치를 지원하지 않아 현재 아래와 같이 사용 중입니다. ( 물론 제가 모를 수도 있지만... ㅎㅎ ) HARD PARSING 처리 해야지만 "※ SQL INFORMATION " 정보가 누적되어 나오지 않으니 참고 바랄게요. [ 예시 ] 1) 사전 작업 alter session set gather_sql_exec_time = y; alter session set gather_sql_plan_stat = y; 2) 튜닝 대상 SQL 질의 SELECT * FROM DUAL; -- 튜닝 대상 SQL 질의 3) XPLAN 추출 SQL 질의[ 개별 SQL XPLAN ]SELECT CASE WHEN ROWNUM = 9 -- [ 고정 위치 ]THEN ' ※ SQL INFORMAT..
[ Tibero ] Parameter 변경1. 파라메터 조회비활성화된 상태2. 동적 변경 1) IS_DYNAMIC이 "1" 경우 동적변경이 된다. 동적 변경 성공 2) IS_DYNAMIC이 "0" 인 경우 동적변경시 에러 발생한다. => 정적변경 하기. - Error Code : JDBC-7198 : Unable to modify parameter "parameter명" dynamically.정적 파라메터 변수를 동적 변경시 에러 발생3. 정적 변경 1) SID.tip 파일에 파라메터 기입 - tibero6/config/tibero.tip 파일을 열어 Parameter를 기입한다. 아래 TRP_METRIC과 ACTIVE_SESSION_HISTORY를 y표기 * 2) Tibero 종료와 시작 ..
1. COL1과 COL2로만 조회시 600만건 출력. 선택도가 매우 높은 편2. DESCRIPTION 컬럼 조회시 10,000건 조회3. 1, 2번을 결합하면 1000건 정도 조회.[ SQL ]SELECT * FROM TB_TIBERO A WHERE A.COL1 = :1 AND A.DESCRIPTION LIKE '%' || UPPER(:2) || '%' AND A.COL2 != 'D' ; [ 고려했던 사항 ]1. DESCRIPTION 컬럼에 CTXCAT TEXT 기반 INDEX 생성 테스트 고려 - TIBERO PATCH 필요 -> 지원 불가 2. DESCRIPTION 컬럼 단일 인덱스 생성 > INDEX FAST FULL SCAN 수행+DISK I/O 방어위해 MULTI ..
[ 발생 원인 ]1. 테이블스페이스 용량 초과 : 테이블스페이스 'TEST01'의 데이터 파일이 가득 차 더 이상 공간을 할당할 수 없는 경우.2. 자동 확장 미설정 : 테이블스페이스의 데이터 파일에 자동 확장이 설정되어 있지 않아, 필요 시 공간이 자동으로 늘어나지 않는 경우.3. 최대 크기 제한 : 데이터 파일의 최대 크기 제한으로 인해 더 이상 확장할 수 없는 경우.4. 물리적 디스크 공간 부족 : 데이터 파일이 확장될 수 있는 물리적 디스크 공간이 부족한 경우. [ DATA FILE 조회 ] ( 아래 순번 2번 )SELECT *FROM dba_data_files; [ 해결 방안 ] 1. 데이터 파일 수동 확장ALTER DATABASE DATAFILE '/home/tibero/tibero..
아래 3가지 DPV(Dynamic Performance View) 논리적인 이해 노력은 데이터 저장 구조 및 DBA 업무 진행에 도움이 되었습니다.DPV별 주요 POINT 와 용량 확인 쿼리를 기입해 봅니다. [1] DBA_TABLESPACE① EXTENT MANAGEMENT : LOCAL or DICTIONARY ( 익스텐트 할당과 해제, LOCAL이 우수 )② SEGMENT SPACE MANAGEMENT : AUTO or MANUAL ( 공간 할당과 해제 AUTO Bitmap, Manual Freelist와 FreelistGroup 관리 )③ ALLOCATION_TYPE : AUTOALLOCATE or UNIFORM SIZE ( Extent 크기를 DB 자동 할당, 수기 지정 ) [2] DBA..
ORACLESELECT * FROM DATABASE_PROPERTIES WHERE PROPERTY_NAME IN ( 'NLS_TERRITORY','NLS_LANGUAGE','NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');또는 SELECT * FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER IN ( 'NLS_TERRITORY','NLS_LANGUAGE','NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET'); TIBERO 6SELECT NAME, VALUE FROM DATABASE_PROPERTIES WHERE NAME IN ( 'NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET')UNION..
Oracle은 접속정보(DataSource)를 tnsnames.ora 에 등록 하지 않고,DatabseLink 생성 명령문에 "IP/PORT/USER/PASSSWORD"를 넣는 방법이 있다.하지만, Tibero는 tbdsn.tbr 파일에 접속대상 DB 정보를 등록 해야만 dblink 사용이 가능하다. 언젠가는 Oracle을 따라가겠지! 1. tbdsn.tbr 파일 찾기: 오라클 tnsnames.ora 파일과 동일한 역할을 한다. 경로 : tibero7\client\config\tbdsn.tbr 2. datasource 추가 : 접속 대상 DB의 IP,PORT,DB_NAME 정보를 입력한다.DEV_TIBERO=( (INSTANCE=(HOST= target DB IP ) (P..
[ Export 시도 ] Object DDL문 내 컴퓨터에 백업시키고 싶을때, Tibero Studio에 Export 기능을 쓰면 편하다. 캐릭터셋 "MSWIN949"로 백업을 해놓으려고 한다. 그런데 다음과 같은 에러가 발생한다. [ 에러 내역 ]java.lang.Exception: Error: Unsupported character set. Remove character set parameter or specify one character set of next list. ASCII EUCKR MS949 UTF8 UTF16 SJIS CP866 TIS620 [ 조치 사항 ]위 이미지에 "Character Set" 콤보 박스에는 "MSWIN949"로 되어있어, 사용자는 그것을 누를수 밖에 없다. 에러내용..
[1] SQL FULL QUERY 조회 : V$SQL과 DBA_HIST_SQLTEXT VIEW들에서 SQL_TEXT가 매우 길면 FULL SQL 추출 안됨, 이때 아래 SQL을 이용하여 FULL SQL을 획득. SELECT SQL_TEXT FROM ( SELECT A.* , DENSE_RANK() OVER( PARTITION BY HASH_VALUE ORDER BY CHILD_NUMBER DESC ) RN FROM V$SQLTEXT_WITH_NEWLINES2 A WHERE SQL_ID = :1 OR HASH_VALUE = :2 ) WHERE RN = 1 ORDER BY PIECE ; [2] SQL BIND CAPTURE 조회 : 가장 최근에 실행 되었던 바인드 변..
INDEX JOIN: 명시한 테이블에 두 개 이상의 인덱스를 사용하여 자체 조인하는 것이다. TIBERO ( ORACLE DB 또한) 지원하는 좋은 기능이다. 하지만 보통 INDEX JOIN 처리된 각각의 집합을 HASH JOIN 처리하므로, 보편적인 OLTP SQL 3초 이내 응답기준을 만족시키기는 어렵다.FTS( Full Table Scan ) 처리보다는 빠르게 출력되는 경우가 있지만, 어차피 서비스 응답 기준에 미치지 못한다. 그래서인지 TIBERO DB 차세대 프로젝트에서는 INDEX_JOIN 되는 PARAMETER는 비활성화 처리한다고 한다. ( 디폴트값 : YES )Parameter : _OPT_BUILD_INDEX_FFS_SELF_JOIN테스트가 필요하면 아래 1번을 수행하거나, 2번과..
ERROR CODE / 설명 : 티베로 튜닝 프로젝트의 TEST DB에서 INDEX 생성 중 에러 발생 Time Start : 2023-08-06 오전 10:58:35.270 [10:58:41.835]java.sql.SQLException: JDBC-21009:No tempfile was found. Time End : 2023-08-06 오전 10:58:41.835 Elapsed Time for Script Execution: 6565.563msecs 발생 원인 : TEMP FILE 조회 시도, TEMP FILE 없었기 때문에 인덱스 생성이 안됨SELECT * FROM DBA_TEMP_FILES; 0 Rows 해결방법1. 테이블 스페이스 생성 ( 공부 할 때 )create temporary tables..