본문 바로가기

자바 웹 개발자가 될거야/DB

(41)
[Oracle] CASE, DECODE 조건부 표현식 - 프로그래밍 언어으로 작업할 때 사용한 IF THEN ELSE 구문 논리를 디비에서도 적용할 수 있는 방법 ① CASE 식 - IF-THEN-ELSE 문 작업을 수행하여 조건부 조회를 편리하게 수행하도록 함 - CASE로 시작해서 END로 끝나야함 - 동등연산자 (=) 를 내포하고 있음 CASE 비교할값(컬럼명) WHEN 조건1 THEN 실행문1 WHEN 조건2 THEN 실행문2 ... ELSE 실행문 END [alias 가능] - 예제) job_id가 'IT_PROG'면 급여가 10% 상승 'ST_CLECK'이면 15% 상승 'SA_REP'면 20%가 상승 그 외에는 상승하지 않았다. 더보기 SELECT last_name, job_id, salary, CASE job_id WHE..
[Oracle] Object 생성 계획 수립 - 데이터 모델링 과정은 요구사항 수집 및 분석 → 설계 → 데이터베이스 구현(물리적 모델링) 단계로 크게 3단계로 진행 - 설계단계는 개념적 모델링 → 논리적 모델링으로 나뉜다 ① 개념적 모델링 - ERD 만들어짐 - 개체를 추출하고 각 개체들 간의 관계 정의 ② 논리적 모델링 - ERD를 DBMS에 맞게 매핑 - 실제 데이터베이스로 구현하기 위한 모델 만듦 - 테이블 차트 ③ 물리적 모델링 - 실제 컴퓨터의 저장 장치에 저장하기 위한 물리적 구조 정의 · 구현
[Oracle] Database log mode Noarchive log mode Redo log file에 로그스위치 발생 시 순환하면서 덮어씀 Archive log mode Redo log file에 로그스위치 발생 시 Offline 복사본 생성함 (오프라인 복사본 : Archive log file) - DB의 Media failure 방지하기위해 Archive log mode로 설정하는 것이 좋음 - Noarchive 로그 모드는 로그가 없으면 복구 못함 ① DB log mode 조회 방법 - 조회 방법은 2가지가 있다 SELECT log_mode FROM v$database; archive log list · 실제로 많이 쓰는 방법은 이거 ! ② DB log mode 변경 방법 - 1. DB 종료 shut..
[Oracle] Redolog file 다중화 - Redolog file : DB의 모든 변경작업의 로그정보가 기록된 곳 - 순환형으로 관리되는 파일 - DB당 최소 2개 이상의 Redo log 그룹이 존재해야 함 - 그룹에는 최소 1개 이상의 Redo log 멤버 존재해야 함 - 권장사항 : 그룹 3개, 그룹별 멤버 2개 ① Redolog file 정보 조회 SELECT group#, members FROM v$log; - 멤버 경로와 로그 파일명도 확인 가능 - 같은 내용을 가진 파일들은 다른 경로에 있는 것이 좋음 SELECT group#, member FROM v$logfile ORDER BY group#; ② Redolog file 다중화 방법 - Redolog Group 추가하기 · 그룹번호는 순차적으..
[Oracle] Controlfile 다중화 - DB의 모든 동기화 정보가 기록된 곳 - DB당 하나 운영 가능 - 최대 8개까지 다중화 기능 제공 ( 오라클 권장사항 3개 ) - DB 생성 시 및 생성 후 변경 가능 - 다중화가 되어있다면 최신 시점으로 복구가 가능해진다 - 백업을 받기 위해선 DB가 멈춰야하지만 다중화는 하나가 손상되더라도 남은 하나로 복구 가능 ① Controlfile 정보 조회 SELECT name FROM v$controlfile; ② Controlfile 다중화 절차 - 1. DB 추가 · 기존에 존재하는 Controlfile도 적고 추가할 Controlfile도 적어줘야 한다 · 콤마(,)로 파일 구분 · 추가할 Controlfile은 scope 지정이 필요 · scope가 memor..
[Oracle] Database Fail 유형 ① Statement failure - SQL구문이 정상적으로 실행되지 않고 오류가 반환된 경우 - 원인 · 오타, 문법오류, 권한 부족, 저장공간 부족 등 - 해결 · 오타 수정, 문법 수정, 권한 부여, 저장공간 추가 등 ② User process failure - DB에 접속된 User가 비정상적으로 접속을 끊은 경우 - 원인 · User가 일부러 접속을 끊은 경우, Client PC가 다운된 경우 · DBA로부터 Kill을 당한 경우 등 - 해결 · PMON이 자동으로 rollback 및 Lock 해제함. · 접속이 필요한 User는 재접속하면 됨. ③ Network failure - DB가 정상적으로 켜져있는데 DB 접속이 안되는 경우 - 원인 · 리스너가 ..
[Oracle] 데이터베이스 유저 관리하기 ① User 생성 - 기본적으로 User명, 패스워드, 권한 부여해야한다. - CREATE 권한을 부여받은 User만이 DB 접속이 가능하다. CREATE user 유저명 identified by 초기 패스워드; 더보기 실제론 User 생성할 때 default 테이블스페이스, 용량도 지정해줘야 insert 가능함 CREATE user User명 identified by 패스워드 default tablespace inventory temporary tablespace temp quota 30M on inventory; ② 권한 유형 권한 유형 개념 소유자 System 권한 DB를 조작할 수 있는 권한 DBA Object 권한 Object를 조작할 수 있는 권한 Object 소..
[Oracle] 오라클 터미널에서 DB 저장영역 추가하는 방법 - EM으로 저장영역 추가하는 방법은 아래 포스팅 참고 [Oracle] EM으로 DB에 저장영역 추가하는 방법 - 총 4가지 방법을 보여줄거다. - 새 TableSpace 생성 ( 이건 Datafile 생성하는 거와 같은 의미 ) - 기존 TableSpace에 Datafile 추가 - 기존 Datafile의 사이.. heezit.tistory.com - 저장영역 추가 후 잘 만들어졌는지 아래 SQL 구문으로 확인가능하다 SELECT name FROM v$datafile; SELECT name FROM v$tempfile; - 위 두가지 구문으로 데이터파일 볼 수 있다. - tempfile은 dat..