728x90

Programming 204

oracle merge문

1. MERGE : 데이터의 존재 여부에 따라 데이터를 INSERT 하거나 UPDATE 할때 유용하게 사용 1) 한 문장으로 INSERT와 UPDATE를 동시에 처리 2) 한 건의 데이터는 INSERT와 UPDATE 중 하나만 수행 3) 대상이 이미 존재하면 UPDATE, 존재하지 않으면 INSERT MERGE INTO EMP T1 // UPDATE 되거나 INSERT 될 테이블 USING ( SELECT ... FROM DEPT // MERGE 대상의 처리 방법을 결정 할 비교 데이터 집합 WHERE ... ) T2 WHEN MATCHED THEN UPDATE SET T1.EMP_NM = T2.EMP_NM // 비교 대상 데이터가 MERGE 대상에 이미 있음 ,T1.EMP_CD = T2.EMP_CD W..

Programming/Oracle 2022.01.10

오라클 통계자료 생성 주기(DBMS_STATS.GATHER_TABLE_STATS)

오라클 통계자료 생성 주기 와 비율 통계자료 생성은 매일이라도 조금씩 해야한다 혹은 데이타 쌓이는 양이 비슷하면 안해도 된다 통계생성 비율은 몇%가 적정한가의 문제로 많은 고민을 했습니다 시스템이 24시간 풀가동이기 때문에 통계자료를 생성할 시간을 확보하는게 힘든 것이 현실이라 적정한 비율, 주기로 많은 고민을 하였습니다. 저와 같은 고민이 있으신 분들은 아래 처럼 주기와 비율을 생성해 주시면 됩니다. 통계정보 생성은 6개월~1년 정도(또는 1~2년) 주기로 해주는게 좋습니다. 하지만, 대용량의 테이블일 경우, 통계 정보 생성에 시간이 많이 들기 때문에 시스템 정기 점검 시간을 고려해서 하는 것이 필요합니다. 데이터가 큰 변화없이 일정하게 증가하는 시스템이라면 통계정보 생성 주기를 더 늦추어도 상관없습니..

Programming/Oracle 2021.12.28

인덱스 리빌딩(index rebuilding)

인덱스 리빌딩 주기적으로 해야한다?? 인프런에서 오라클 인스턴스 성능개선 관련(권철민강사님) 수업 중에 인덱스 리빌딩에 대한 부분이 나왔습니다 인덱스 리빌딩을 주기적으로 해야한다 통계자료 생성을 하니 인덱스 리빌딩은 따로 하지 않아도 된다하는 얘기들이 많아서 어떻게 작업을 해야할지 고민이 많았었는데요 오늘 강사님이 속시원히 해결책을 알려주셨습니다 더이상 헷갈리지 않아야 겠습니다 db_file_sequential_read의 개선방안으로 index rebuild가 있으나 문제 해결에 도움이 되지 않은 경우가 대부분으로 모니터링을 통해서 인덱스 리빌딩을 해야할지 결정 해야 한다고 합니다 강사님 답변으로 과거에는 branch를 4~5개 넘게 액세스를 하면 rebuild를 추천해서 analyze index 인덱스..

Programming/Oracle 2021.12.27

ORACLE 실제 실행계획 확인하기!

ORACLE 실제 실행계획 예상 실행계획만으로는 성능 개선이 어려울때가 있으므로 실제 실행계획을 보고 문제점을 찾을수 있어야 한다 실제 실행 계획 확인 하는 방법 GATHER_PLAN_STATISTICS를 힌트로 사용 OR 세션에 트레이스를 거는 방법이 있음 1) GATHER_PLAN_STATISTICS 사용 법 - SYS계정으로 접속하여 V_$SQL V_$SQL_PLAN_STATISTICS_ALL V_$SQL_PLAN V_$SESSION에 SELECT 권한을 추가 한다 GRANT SELECT ON V_$SQL TO USER_명 ; GRANT SELECT ON V_$SQL_PLAN_STATISTICS_ALL TO USER_명 ; GRANT SELECT ON V_$SQL_PLAN TO USER_명 ; GR..

Programming/Oracle 2021.12.02

Oracle ORA-12638 : credential retrieval failed

Oracle ORA-12638 : credential retrieval failed Oracle ORA-12638 : 신용 검색에 실패했습니다 프로그램 설치 후 디비 접속시 위와 같은 에러 발생하면 sqlnet.ora의 SQLNET.AUTHENTICATION_SERVICES= (NTS) 을 주석처리 한다 #SQLNET.AUTHENTICATION_SERVICES= (NTS) Cause The database and client always cross authenticate each other if NTS authentication is negotiated. This is regardless of whether the user will ultimately be authenticated by the datab..

Programming/Oracle 2021.11.25

오라클 user_job 실행 안될때

[ 오라클 user_job이 실행 안될때 조치 방법 ] 1) system계정으로 접속하여 아래 쿼리를 실행한다 select * from v$parameter where name like 'job%' ; 2) 쿼리 결과 job_queue_processes의 값이 0이면 user_job 실행 안됨 3) alter system set job_queue_processess = 1000 ; 으로 변경 4) user_job 실행 확인!!! JOB_QUEUE_PROCESSES는 DBMS_JOB 작업 및 Oracle Scheduler(DBMS_SCHEDULER) 작업의 실행을 위해 생성할 수 있는 인스턴스당 최대 작업 슬레이브 수를 지정합니다. DBMS_JOB과 Oracle Scheduler는 동일한 작업 조정자와 작..

Programming/Oracle 2021.11.25

계층형쿼리(START WITH ~ CONNECT BY사용법)

[ 계층형쿼리 작성 방법 ] SELECT [컬럼명] FROM [테이블명] WHERE [ 조건절 ] START WITH [ 최상위 조건 ] CONNECT BY [NOCYCLE] [ PRIOR 계층형 구조 조건 ] ORDER SIBLINGS BY [ 컬럼명 ] 1) START WITH 계층의 최상위 조건(ROOT)으로 사용될 데이터를 지정 2) CONNECT BY 상위계층과 하위계층 조건절 표시 CONNECT BY PRIOR 자식컬럼 = 부모컬럼 -> 부모에서 자식으로 트리 구성(TOP-DOWN방식) CONNECT BY PRIOR 부모컬럼 = 자식컬럼 -> 자식에서 부모로 트리 구성(BOTTOM-UP방식) NOCYCLE : 무한 루프 방지 3) ORDER SLBLINGS BY 사전순으로 정렬하는것이 아닌 계..

Programming/Oracle 2021.11.03

10.형식화된 출력 – printf()

1. println()의 단점 – 출력 형식 지정 불가, 10진수로만 출력된다 system.out.println(10.9/3) ; // 3.3333333335 2. printf()로 출력 형식 지정 가능 system.out.printf(“%.2f”, 10.0/3) ; // 소숫점 둘째자리 = 3.33 system.out.printf(“%d”, 0x1A) ; // d : 10진수 = 26 system.out.printf(“%X”, 0x1A) ; // X : 16진수 = 1A %b : boolean 형식으로 출력 %d : 10진 정수의 형식으로 출력 %o : 8진 정수의 형식으로 출력 %x, %X : 16진수 정수의 형식으로 출력 %f : 부동 소숫점의 형식으로 출력 %e, %E : 지수 표현식의 형식으로 ..

Programming/JAVA 2021.10.14

9.기본형과참조형

기본형과 참조형 1. 기본형 - boolean, char, byte, short, int, long, float, double - 실제 값을 저장 - 기본형의 종류와 크기 1) 논리형 – boolean(1 byte) : true/false 조건식과 논리적 계산에 사용 2) 문자형 – char(s byte) : 변수당 하나의 문자만을 저장 3) 정수형 – int(4 byte 20억), byte, short, long(8 byte 800경)(아주큰 정수) byte(1 byte) : 이진 데이터 다루는 데 사용 short(2 byte) : c언어와의 호환을 위해 추가(잘 안쓰임) 4) 실수형 – folat(4 byte), double(8 byte) 2. 참조형 - 기본형을 제외한 나머지(string, syst..

Programming/JAVA 2021.10.14
728x90