본문 바로가기

Oracle

DB 선택 접속(리눅스) .bash_profile 에 아래 내용을 자신의 환경에 맞게 수정하여 붙여넣는다. echo "Choose ORACLE_SID (ORACLE Database Name)" echo echo "1: ORCL" echo "2: ORCL1" echo Choose Number : read insNumber case ${insNumber} in 1) export ORACLE_SID=orcl ;; 2) export ORACLE_SID=orcl1 ;; *) echo "Not Choosed ORACLE_SID" ;; esac echo echo ====================== echo ORACLE_SID=$ORACLE_SID echo ====================== echo #export ORACLE_SI.. 더보기
LOB 테이블 다른 Tablespace 로 이동 1. 이동할 Tablespace와 여유공간을 체크한다. - LOB 테이블과 LOB 컬럼의 size 확인 select max(owner)owner ,segment_name table_name , max(bytes)/1024/1024||' MB' table_size, sum(nvl(lbytes,0))/1024/1024||' MB' lob_size, (max(bytes)+sum(nvl(lbytes,0)))/1024/1024||' MB' total_size from ( select a.owner,a.segment_name,a.bytes,c.bytes lbytes from dba_segments a , dba_lobs b , dba_segments c where a.owner = 'SCOTT' and a.segm.. 더보기
RMAN Backup & Restore & Recover 우선 테스트를 하기위해선 몇가지 사항들을 설정해야한다. 아래 그림과 같이 여러설정사항들중 끝에 # default 가 없는것은 설정을 바꾼값이 되겠다. 바꾼값들의 의미 : retention policy to redundancy 2 - 백업본을 2본을 보유하겠다는 의미이다. 이것의 의미를 잘 이해해야하는데.. rman이 스스로 백업본에 대해 완전한 풀 백업본을 판단한다. 즉 1본의 의미가 풀백업본으로 1본으로 의미하는것이다. backup optimization on - 이것은 변경된 부분만 백업을 받겠다는 의미이다. controlfile autobackup on - 컨트롤파일을 백업시에 자동으로 같이 백업받도록 설정한다. 일단 이정도로 설정한뒤 테스트를 진행하자. 우선 만약을 대비하여 DB를 내린후 cold.. 더보기
ORA 6552, ORA 6553, PLS 553 varchar2가 mix되어서 export시에 에러발생. full export error table export error 공통적으로 ORA 6552, ORA 6553 에러가 발생한다. 메타링크를 참조하여 해결책은 다음과 같다. 1. 캐릭터셋 정보 확인 SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER in ('NLS_NCHAR_CHARACTERSET','NLS_CHARACTERSET') ; VALUE -------------------------------------------------------------------------------- KO16KSC5601 UTF8 SELECT DISTINCT (NLS_CHARSET_NAME (CHARSETI.. 더보기
오라클 서비스 관리 및 삭제 방법 1. 오라클 서비스 변경 ■ 내컴퓨터 → 관리 → 서비스 및 응용 프로그램 ■ 서비스 더블클릭 상태 변경 2. 삭제 방법 ■ 1. regedit로 레지스트리 편집 ■ HKEY_LOCAL_MACHINE → SYSTEM → CurrentControlSet → Services 찾아서 삭제 ■ HKEY_LOCAL_MACHINE → SOFTWARE → ORACLE 찾아서 삭제 ■ HKEY_LOCAL_MACHINE → System → CurrentControlSet → Services → Eventlog → Application ■ 2. 탐색기- 오라클 제품 설치, DB생성 사용된 모든 디렉토리 삭제. (예> C:Program Files₩Oracle ) ■ 3. 시스템 등록정보- 환경변수 – 오라클 관련 시스템, .. 더보기
[퀴즈] LEAD,LAG 함수 응용 퀴즈 출처 : PRODBA 카페 다음과 테이블(변경전 테이블)이 있다고 가정했을때 해당 테이블에 ERR_TYPE(오류유형)이라는 컬럼을 추가하고 싶은데요 오류유형 컬럼은 같은 컬럼영문명(COL_ENG_NM)을 대상으로 컬럼한글명, 데이터 타입, 길이를 비교하여 다른것에 대한 오류 유형을 나타나려고 하는데요. 예를 들어 컬럼영문명이 같은데 데이터 타입이 다르면 '데이터 타입 불일치' 컬럼영문명이 같은데 컬럼한글명이 다르면 '컬럼한글명 불일치' 컬럼영문명이 같은데 컬럼길이가 다르면 '데이터 길이 불일치' 이런식으로 '변경후 테이블' 처럼 나타나고 싶습니다. ■ 변경전 테이블 COL_ENG_NM COL_HAN_NM DATA_TYPE LEN A 에이 CHAR 14 A 에이 VARCHAR2 14 B 비 NUMBER 7.. 더보기
NLS_LANG 설정에 따른 메세지 출력 확인 시작->실행->regedit 창을 열어서 NLS_LANG 레지스트리값을 찾는다. 현재 KOREAN_KOREA.KO16MSWIN949 로 설정되어 있다. sqlplus 로 터미널에서 접속을 하면 한글 메시지가 보이게 된다. 이러한 한글 메세지가 영어로 표시되게 하고 싶으면 다음 같이 레지스트리 값을 변경하면 된다. AMERICAN_AMERICA.KO16MSWIN949으로 변경하였다. 첫번째 AMERICAN 은 메세지 출력시 나타내는 문자를 지정하는것이고 두번째 AMERICA 는 시간,날짜,돈 등을 어느나라 형식에 맞추는지 지정하는것이다. 세번째 KO16MSWIN949는 Oracle 설치시 지정한 캐릭터셋이 되겠다. (데이터 저장형식) 위와같이 바꾼뒤 다시 접속을 하게되면 그림과 같이 날짜형식도 미국식으로 .. 더보기
export error : SET_NO_OUTLINES 오라클이 여러개 깔린경우 생길수 있는 에러이다. 9i 와 10g가 각각 설치되어 있는데 9i데이터를 export하려는데 export 유틸리티가 10g에서 작동할경우 SET_NO_OUTLINES 에러가 발생한다. 해결방법은 9i가 설치된 폴더경로찾아 exp.exe 가 있는 경로를 직접 적어주면 된다. ex> C:\oracle\ora92\bin exp system/manager file=~~~ log=~~~ full=y 더보기
[퀴즈] 집약함수 문제> 다음과 같이 데이터 가 있다고 가정하자. with tour_group as ( select '111' tour_key, '중국관광단' tour_title, '중국' tour_position, '2011.01.03' start_day, '2011.01.13' end_day from dual union all select '222', '일본광광단', '일본', '2011.01.05', '2011.01.11' from dual ), tour_person as ( select '111' tour_key, 1 tour_seq, '백두산' tour_person_name from dual union all select '111', 2, '한라산' from dual union all select '111', 3.. 더보기
[퀴즈] 구분자로 데이터 나누기 문제> 아래와 같이 "|" 표시가 들어간 데이터가 있다. 이 데이터를 "|" 를 기준으로 행으로 데이터를 나타내고자 한다. with tmp as ( select 'aa|bbb|cccc' str from dual union all select 'dddd|eeeee|ff|ggg' from dual ) select * from tmp; 결과는 아래와 같다. 아래와 같이 결과가 나오도록 해보자. 정답 트리플클릭 > SELECT REGEXP_SUBSTR(str,'[^|]+',1,LEVEL) str FROM (select rownum SEQ, str from tmp) CONNECT BY CONNECT_BY_ROOT SEQ = SEQ and LEVEL 더보기