본문 바로가기

데이터베이스(DA, AA, TA)

(146)
[오라클] SQL*Plus 사용법 정리 spool 파일명 // ex) /user/test/a.txt -- spool 관련 명령어 . . . ex) set echo off; ....명령 구문..... // 쿼리 또는 @쿼리파일명 ex) /user/test/a.sql spool off spool은 명령들을 일괄로 처리해 주는 명령어 이다. spool 명령에 파일명을 파라미터로 지정하면 spool에서 실행된 모든 명령 들이 파일로 저장된다. ---------------------------------- spool 관련 명령어 ---------------------------------- set heading off : 헤더가 표시되지 않고 데이터만 표시한다. set pagesize 0 : 기본값은 14이며 공백을 없애기 위해 0으로 세팅, page..
[오라클] 테이블스페이스와 데이터파일 * 테이블스페이스: 논리적(메모리) - 오라클 데이터베이스는 하나 이상의 논리적 저장영역 테이블스페이스가 있고 데이터를 집합적으로 저장합니다. - 하나 이상의 데이터 파일로 구성되어 있습니다. 1. 테이블 스페이스 유형 1.1. 시스템 테이블스페이스(사용자가 건드릴수 없다) - 데이터 베이스와 함께 생성됩니다. - 데이터 딕셔너리 포함 - 시스템 Undo Segment를 포함합니다. 1.2. 비시스템 테이블스페이스(사용자가 필요하면 만들고, 지우면서 사용가능) - 데이터베이스 관리와 공간 관리를 용이하게 할 수 있습니다. - Undo Segment, Temporary Segment, 응용 프로그램 데이터 세그먼트 및 인덱스 세그먼트를 분할합니다. - 사용자에게 할당된 공간의 양을 제어합니다. 2. 테이블..
[오라클] 서브쿼리와 성능 문제 이해하기 서브쿼리에 대한 기본 내용 서브쿼리는 WHERE 절에 비교조건으로 사용되는 SELECT 쿼리를 의미합니다. 통상적으로 SQL을 작성할 때, 모든 테이블을 조인으로 작성하는 것 보다, 메인 집합을 만들고 서브쿼리를 사용하여 값을 비교해가는 절차적 SQL 작성이 쉽다는 점에 공감할 것입니다. 하지만 서브쿼리를 사용하지 않고 조인으로 처리가 가능한 SQL임에도 불구하고, 단지 SQL 작성이 쉽다는 이유 만으로 서브쿼리를 남용할 경우, DB서버에 심각한 성능 문제가 발생할 수 있으므로 각별히 주의해야 합니다. 왜냐하면, SQL에 서브쿼리가 여러 개 존재할 경우, Optimizer가 최적화 과정에서 잘못된 Cost 계산을 하는 경우가 많이 발생하기 때문입니다. 물론 서브쿼리를 사용해야 의도한 결과 값을 가져올 수..
[오라클] SQL 튜닝 시작하기 SQL 튜닝은 "SQL + 튜닝"입니다. 즉, SQL 튜닝이란 튜닝 대상이 되는 SQL을 이해하고, SQL이 가진 정보(테이블/인덱스/컬럼의 정보 및 업무적 성격 등)를 치밀하게 분석하여 얻어지는 결과라고 생각합니다. SQL 튜닝을 시작하기 위해서는 SQL에 대한 이해가 선행되어야 한다고 생각합니다. 왜냐하면, SQL의 작성형태에 따라 다양한 성능 문제가 발생되기 때문입니다. SQL 튜닝의 시작은 SQL의 의미(작성 의도)를 제대로 파악하는 것입니다. SQL의 의미를 정확히 파악하지 못한다면, 원본 SQL에서 추출하고자 했던 결과 집합이 아닌 다른 집합을 추출하게 될지도 모릅니다. 이러한 개선안은 개선안이라고 할 수 없습니다. 즉, 원본 SQL의 작성 의도를 제대로 파악하지 않고, 단순히 I/O 발생량을..
[RDBMS] 집계/분석 함수의 분산처리 시스템 개발 http://kiise.or.kr/e_journal/2015/8/KTCP/pdf/04.pdf