DATABASE(11)
-
[SQLP] 이론 8. 데이터베이스 성능
1. 성능 - 클라이언트 요청에 대한 응답시간과 시간당 처리할 수 있는 처리량 (Response Time, Throughput) 2. 용어 - Concurrent User : 동시 사용자 (Active + Inactive User) - Active User : 대상 서버에 부하를 발생시키고 있는 사용자 - Inactive User : 현재 서버에 요청을 보내고 있지 않은 사용자 - TPS (Transaction Per Second) : 서버가 일정 시간(초) 내에 처리한 트랜잭션의 양 - Response Time : 요청 후 응답을 받을 때 까지 소요된 시간 - Resource : 한정되어 있는 자원 3. 특성 - 경합부하 구간에서 Response Time 이 급격하게 늘어남 4. 성능 측정 대상 - 목..
2021.12.08 -
[SQLP] 이론 7. 백업 및 복구
1. 백업의 관점 1) 핫백업 & 콜드백업 - 핫백업 : 온라인백업, 데이터베이스 기능 이용, 백업 대상의 데이터베이스를 정지하지 않고 가동중인 상태에서 백업데이터를 얻음 - 콜드백업 : 오프라인 백업, OS기능, 백업 대상의 데이터베이스를 정지한 후 백업 데이터를 얻음, OS 명령으로 복사 2) 논리백업 & 물리백업 - 논리백업 : SQL 기반 텍스트 형식으로 백업 - 물리백업 : 데이터 영역을 그대로 Dump, 이미지로 바이너리 형식 기록 3) 풀백업 & 부분(증분/차등)백업 - 풀백업 : 데이터 전체를 매일 백업 - 부분백업 : 풀 백업 이후 갱신된 데이터를 백업, 차등/증분 백업 2. 데이터베이스 관리 시 주의 - 백업 파일들은 떨어진 곳에 각각 보관 - 지리적으로 따로 - 신속한 복구가 가능하도..
2021.12.08 -
[SQLP] 이론 6. 테이블 설계
1. 테이블 TABLE - 데이터를 관리 및 저장하는 장소 - 데이터의 효율적인 관리 및 적절한 조작이 중요함 - 2차원 표 2. 설계 규칙 - 집합에 따라 설계 - 기본키에 따라 설계 ※ 기본키 - 특정 집합에서 특정 행을 유일하게 식별할 수 있는 속성의 집합 - 중복되면 안됨 3. 정규형 - 테이블을 정의하는 기본 형태 1) 제1정규형 (1NF) : 테이블의 셀에 여러 개의 값을 포함하지 않음 2) 제2정규형 (2NF) : 부분함수 종속성을 허용하지 않음, 기본키를 구성하는 열의 일부에만 함수 종속이 존재함 3) 제3정규형 (3NF) : 기본 키를 제외한 일반 컬럼끼리 함수 종속이 발생하지 않도록 설계 4) 4~5 정규형은 거의 사용하지 않음 4. ER다이어그램 - 데이터 구조 표기법 1) Barke..
2021.12.08 -
[SQLP] 이론 5. Transaction
1. 트랜잭션 - 데이터베이스 관리 시스템 또는 유사한 시스템에서 상호작용의 단위 - 상호독립적 - 트랜잭션 간에는 서로 간섭하지 않음 2. 4대 특징 1) 원자성 Atomicity - All or Nothing 2) 일관성 Consistency - 데이터 조작 전후 데이터가 일관성이 있어야함 3) 고립성 Isolation - 동시에 데이터 조작을 실행할 경우, 모순 없이 실행되는 것을 보증 4) 지속성 Durability - Commit 후 데이터 변경사항이 확정되는 것 3. 격리 수준 (ANSI표준) Level Description Level 동시성 Dirty Read Non-Repeatable Read Phantom Read Read Uncommitted 아직 Commit 되지 않은 데이터를 다른 ..
2021.12.03 -
[SQL] VIEW
1. VIEW - 실제 데이터를 저장하고 있지는 않지만 DML 작업이 가능한 가상의 테이블 - 하나 이상의 테이블에서 원하는 데이터를 선택하여 미리 정의해 둔 형태 - 다른 뷰 참조 가능 2. CREATE CREATE OR REPLACE VIEW 뷰 이름 ( COLOMN 별칭 --옵션 ) AS SELECT 구문 ※옵션 WITH READ ONLY --SELECT만 가능 WITH CHECK OPTION [CONSTRAINT 제약조건명] --WHERE 절의 조건에 해당하는 데이터만 변경 가능 - OR REPLACE : 뷰 DROP 없이 바로 수정 가능함 3. DELETE(DROP) DROP VIEW 뷰이름 ※ 특징 - 한 테이블로 이루어진 단순 뷰의 경우, DML 사용 가능 (WITH READ ONLY 옵션 ..
2021.12.03 -
[SQL] SELECT, INSERT, UPDATE, DELETE, MERGE
1. SELECT 조회 ※필수 SELECT 필드 FROM 테이블명 ※옵션 WHERE 조건 GROUP BY 조건 HAVING 조건 ORDER BY 조건(default.ASC) 2. INSERT 삽입 INSERT INTO 테이블명 ( 필드1, 필드2, ... ) VALUES ( 값1, 값2, ... ) 컬럼의 수와 값의 수가 같은 경우, 컬럼 명시는 생략 가능하고, 값은 반드시 컬럼의 순서대로 들어가야 한다. 3. UPDATE 수정 UPDATE 테이블명 SET 필드1 = 값1, 필드2 = 값2, ... WHERE 조건 4. DELETE 삭제 DELETE FROM 테이블명 WHERE 조건 5. MERGE 삽입 또는 수정 MERGE INTO 테이블명 USING [ DUAL(단일테이블) | 조인테이블명 ] ON ..
2021.12.02 -
[SQL] DDL, DML, DCL, TCL
※ SQL ( Structured Query Language ) : 구조적 질의어. DB를 제어하고 관리하기 위한 언어. 크게 DDL, DML, DCL 3가지로 나눠진다. 1. DDL ( Data Definition Languange, 데이터정의어 ) 명령어 설명 CREATE 데이터 구조 생성 ALTER 데이터 구조 변경 DROP 데이터 구조 삭제 TRUNCATE 데이터 구조 초기화 COMMENT 설명 추가, 변경 등 ※ RENAME 등도 있음 2. DML ( Data Management Language, 데이터조작어 ) 명령어 설명 SELECT 테이블 데이터 조회 INSERT 테이블 데이터 추가 UPDATE 테이블 데이터 변경 DELETE 테이블 데이터 삭제 MERGE 테이블 데이터 추가 또는 변경 ※..
2021.12.01 -
[Oracle] 테이블 스페이스 설정
1. 테이블스페이스 생성 사용자 계정만 만들었다고 바로 테이블 생성하고 쓸 수 있는게 아니다. 테이블을 생성하고 데이터를 적재할 공간을 만들어줘야 하는데, 그 공간이 TABLESPACE 이다. 물리적인 저장 공간이라고 생각하면 될 것 같다. 우선, 기본 옵션들로만 TABLESPACE 를 생성해 보았다. CREATE TABLESPACE TABLESPACE_NAME -- TABLESPACE 이름 지정 DATAFILE 'ORACLE설치경로\oradata\TABLESPACE_NAME.dbf' -- TABLESPACE 데이터 저장 경로 SIZE 512M -- 초기 사이즈 AUTOEXTEND ON NEXT 10M -- 초기 사이즈가 다 찼을 경우, 10M씩 용량을 늘려감 MAXSIZE 4096M -- 최대 용량(4..
2021.11.27 -
[Oracle] SQL Plus, 초기설정, 계정생성, 권한부여
1. SQL Plus 실행 기본 계정 : SYSTEM(대소문자 안가림) / 설치 시 입력한 비밀번호(대소문자 가림) 2. 기본 설정 ALTER SESSION SET "_ORACLE_SCRIPT" = TRUE; 이게 11g → 12c 로 넘어가던 시절에는 갑자기 시작부터 에러가 나서 멘붕이었던 기억이 난다. 분명 똑같이 CREATE USER 를 했는데 에러가남. ( ORA-65096 ) 도대체 뭘까? 했었는데 12c 버전부터는 계정명 앞에 C##c## 와 같은 접미사(?)를 붙여줘야 했다. (심지어 대소문자 구분까지 함. 세상불편....😣) 그래서 사용자 명이 C##USERNAME 같은 이상한 꼬라지가 되어버린다. 진짜 이 때 너무나 쇼크였던 기억ㅎㅎㅎ 어차피 이런 설정값 줘서 사용하게 할거면서 뭐하러 C..
2021.11.27 -
Oracle 19C 설치 (54% 에서 설치가 멈추는 현상 해결, Windows 10 Pro 기준)
1. 설치파일 다운로드 1-1. 주소 : https://www.oracle.com/kr/index.html 정식 사이트는 https://www.oracle.com 이지만 영어만 보면 울렁거리기 때문에 한국 정식 사이트를 이용한다. 언제쯤 영어가 안울렁거릴까... 1-2. [ 제품 > 소프트웨어 > Oracle Database ] 로 이동 1-3. 중간즈음 [ Oracle Database 19c 다운로드 ] 버튼 클릭 21c 버전도 있긴 한데, 아직 리눅스 버전밖에 안나와서 깔아보진 못했다. 조만간 깡통 놑북에 우분투 설치할 예정인데, 그 때 한번 깔아봐야겠다. 1-4. OS에 맞는 파일 다운로드 Windows 10 Pro 니까, [ Microsoft Windows x64 (64-bit) ] 로 다운받음 ..
2021.11.26