==== 목차 ==== [ 1 ] 아카이브 모드 설정방법 [ 2 ] 아카이브 파일 저장경로 설정방법 1. FRA (Fast Recovery Area) 관리 2. log_archive_dest 관리 ( 이중화 실습 ) 3. log_archive_dest_n 관리 ( 삼중화 실습 ) ※ 위 1, 2, 3번으로 아카이브 저장경로 1곳으로 설정가능하나, 사용방법 이해를 위해 최대한 다중으로 저장해보는 실습 [ 3 ] 백업 파일은 FRA 저장, 아카이브만 별도 경로 설정방법 [ 1 ] 아카이브 모드 설정 방법 1. 아카이브 모드 확인 : database 설치시에 Archive Mode를 설정하지 않아, No Archive Mode이다. sqlplus / as sysdba SQL> arc..
VirtualBox + LINUX 8.10 버젼에서 오라클 19.3 소프트웨어를 설치시 다음 오류가 발생하였다. [ Error ] : Ins-081010 Unexpected error while executing the action at state : 'supportedOSCheck'INS-08101 Unexpected error while executing the action at state : 'supportedOSCheck' [ 해결 방안 ] : runInstaller 실행 전에 아래 코드를 선 실행해주면 된다. export CV_ASSUME_DISTID=OEL7 ./runInstaller* CV_ASSUME_DISTID 변수 : "Cluster Verification Assume Distrib..
[ DB에 접근 안되는 5가지 이유 ] : 개인적인 테스트 DB라면 아래 1, 2번도 사유에 해당 되겠지만, 프로젝트에 투입된 상태라면 3,4,5 번 문제로 인해 접속을 못하는 경우입니다. 그러므로 개발자분이시면 3,4,5번으로 접속못하는 상황이므로 확인을 해보면 됩니다. 1. DB 기동 - 서버 터미널 ORACLE 접속하여 DB 상태 확인 ex) sqlplus / as sysdba 2. LISTENER - 서버 접근 > $lsnrctl status 3. 방화벽 ( 데이터베이스 서버 네트워크 접근 ) - telnet 172.xx.xx.1 1521 ( telnet dbip port ) 수행하여 검은 화면이 뜨면 방화벽 뚫림 의미 * Test DB여서 개발자가 접근가능하다면..
파티션 테이블의 주,서브 파티션 "TYPE"과 "KEY" 정보를 조회 할 수 있습니다. 오라클과 티베로 모두 사용가능한 SQL 입니다. SELECT A.OWNER , A.TABLE_NAME , A.PARTITIONING_TYPE AS "PART_TYPE" , A.SUBPARTITIONING_TYPE , A.PARTITION_COUNT AS "PRI_PART_CNT" , A.PARTITIONING_KEY_COUNT AS "PRI_PART_KEY_CNT" , A.DEF_SUBPARTITION_COUNT AS "SUB_PART_CNT" , A.SUBPARTITIONING_KEY_COUNT AS "SUB_PART_KEY_CNT" ..
[ Toad ArraySize 조정 방법 ] ① View ② Toad Options ③ Search 검색창에 "OCI" 입력 조회 ④ 아래 나오는 OCI Array Buffer size 클릭 ⑤ Automatic을 Manual로 변경 -> 원하는 수치 입력VIEW -> TOAD OPTIONS OCI 검색 OCI Array Buffer Size 설정
성능 개선을 위해 PK 컬럼 NO를 선두로하는 인덱스를 만들어야 한다. 고민이 많아진다. PK 컬럼을 선두컬럼으로 하는 인덱스를 만드는게 맞는건가? PK 인덱스는 빠른거 아닌가? PK 뒤에 넣는것도 찝찝하고. 컬럼 중복 인거 같기도하고... 당황스럽다. 경험을 쌓다보니, 성능 개선을 위해 반드시 필요하면 신규 생성하는 것은 옳은 방법임을 알게 되었다. 단, 명확한 사유가 있어야야 한다. 당연히 성능 개선을 위한 것이지만, 오성고 저자분의 의견은 아래와 같이 명확하다. 1) TB_TEST_PK : 중복 방지용 ( PK ) 2) TB_TEST_IDX01 : 조회용 ( PK를 포함하는 인덱스 ) 아래 TEST로 어떻게 구성하는지 확인! [ PK 컬럼을 포함하는 인덱스 생성 ] [1] 테이블 생성 DROP TA..
시퀀스 "1" 초기화 방법은 18C 이전에는 매우 번롭고, 깔끔하지 못했다. 왜냐하면, 재생성을 하지 않고는, 조정 후 시퀀스를 사용하게 되면 면 2로 시작되기 때문이었다. 18C 부터는 간단한 명령문으로 시퀀스를 초기화 하고, 1 부터 사용 할 수 있게 되었다. 아래 문법 및 테스트를 참고하세요. [ 문법 ] ALTER SEQUENCE TB_SSQ_TEST_SQ1 RESTART START WITH "원하는 시작 번호"; [ 18C 부터 시퀀스 초기화 ] 1. 신규 생성 CREATE SEQUENCE TB_SSQ_TEST_SQ1 START WITH 1 INCREMENT BY 1 CACHE 100 NOCYCLE; 2. 시퀀스 현재값 10으로 변경 위해 10번 사용 SELECT TB_SSQ_TEST_SQ1..
수행한 SQL Cursor를 Flush 해아만 하는 상황이 종종 발생한다. 명령문은 아래와 같으며 살제 사용하는 방법은 아래 글을 참고 하시기 바랍니다. [ 명령문 ] EXEC SYS.DBMS_SHARED_POOL.PURGE ( SQL의 ADDRESS, SQL의 HASH_VALUE ,'C'); [1] 아키텍처 확인 SQL을 수행하면 내부적으로 SQL Cursor(LCO = Library Cache Object) 로써, SGA -> Shared Pool -> Shared SQL Area에 저장됩니다. [2] SQL을 10개 실행하여 Cursor 10개 생성 주석에 다른 숫자를 넣어 SQL FULL TEXT 서로 다르게 함. SELECT /* KTH 1 */ * FROM EMP; SELECT /*..
Unique 컬럼은 집합에서 모든 ROW 사이에 서로 다름을 보장해주는 컬럼 or 컬럼들이다. 물리적으로는 Unique Index가 그 역할을 하고 있다. Partitioned Table에서 Unique를 생각해 보았다. 아래 3가지 Unique 경우의 수가 있다. 1) Unique Non-Partititioned Index - "전체" 대상 집합으로 Unique 하게 해준다. 2) Unique Local-Partitioned Index - Local 이라서 파티션 당 Unique함을 표현하는 것 같다. 하지만 "전체" 기준에서 Unique 하면, 파티션에서도 당연히 Unique 해진다. 그러므로 Unique Index 안에는 필수로 "파티션 키"가 포함되어야 한다. ( 파티션 키가 포함 되지 않으면 D..
년월일(YYYYMMDD) 컬럼을 이용하여 년 파티션 테이블로 구성 하였다. 여기서 년 별로 [NO] 컬럼이 UNIQUE한 데이터가 구성되도록 하려고 합니다. INDEX 생성 스크립는 어떻게 해야 할까? == 문제 예제 테이블 스크립트 ==; CREATE TABLE TEST ( NO VARCHAR2(10), YYYYMMDD VARCHAR2(8), C1 VARCHAR2(10), C2 VARCHAR2(10), C3 VARCHAR2(10) ) PARTITION BY RANGE ( YYYYMMDD ) ( PARTITION P_2023 VALUES LESS THAN ( '2024' ), PARTITION P_2024 VALUES LESS THAN ( '2025' ), PARTITION P_2025 VALUES LE..