본문 바로가기

자기 개발/Oracle

오라클 테이블스페이스 용량 조회, oracle tablespace 용량 조회 1. 테이블스페이스 정보 조회 SELECT * FROM DBA_TABLESPACES; 2. 테이블스페이스별 용량 확인 쿼리문(MB 단위) select substr(a.tablespace_name,1,30) tablespace, round(sum(a.total1)/1024/1024,1) "TotalMB", round(sum(a.total1)/1024/1024,1)-round(sum(a.sum1)/1024/1024,1) "UsedMB", round(sum(a.sum1)/1024/1024,1) "FreeMB", round((round(sum(a.total1)/1024/1024,1)-round(sum(a.sum1)/1024/1024,1))/round(sum(a.total1)/1024/1024,1)*100,2) .. 더보기
Dummy 레코드 만들기 CONNECT BY LEVEL LEVEL SELECT LEVEL FROM DUALCONNECT BY LEVEL 더보기
날짜함수 SYSDATE, MONTHS_BETWEEN, NEXT_DAY, LAST_DAY, ADD_MONTH, TRUNC Sysdate : 현재 시스템의 설정된 시간을 보여줌. USING sysdate Month_between : 입력된 두 날자 사이의 간격을 출력. 정수부는 월, 소수부는 일을 31일 기준으로 표현. USING month_between ( date1, date2 ) Next_day : 입력받은 날자를 기준으로 다음주중의 해당 요일을 출력. USING next_day ( date, char ) Last_day : 입력받은 날자를 기준으로 전주중의 해당 요일을 출력. USING last_day ( date, char ) Add_months : 입력받은 날자를 기준으로 입력받은 integer 만큼 지난 후의 날자를 출력, USING add_months ( date, integer ) Trunc : 입력받은 날자.. 더보기
PL/SQL 커서 - BULK COLLECT 1. BULK COLLECTBULK COLLECT 를 이용하면 데이터베이스에 암시적이나 명시적으로 한번만 질의를 하여도 다중행을 검색할 수 있다. BULK COLLECT는 PL/SQL과 SQL문의 실행 엔진 사이에 문맥전환 수를 줄여주고, 데이터를 검색하는 부담을 줄여준다. 질의의 INTO요소에 BULK COLLECT절을 사용한다. 커서에서 이 절을 사용하면, PL/SQL로 제어를 반환하기 전에, 질의에서 지정한 컬렉션으로 페치되는 다중 행들을 대량으로 바인드하게 한다. 구문 ... BULK COLLECT INTO collection_name[, collection_name]... 규칙과 제약사항- 9i 이전에는 정적 SQL에서만 BULK COLLECT를 사용할수 있었다. 9i에서는 동적, 정적SQL에서.. 더보기
(PL/SQL) EXECUTE IMMEDIATE Dynamic SQL CREATE OR REPLACE PROCEDURE SP_DEL_PROCEDURE(TABLE_NAME IN VARCHAR2 ,TABLE_PARAM IN VARCHAR2 )IS PD_ERRNUM NUMBER;PD_ERRMSG VARCHAR2 (200);PD_SDATE DATE ;PD_DELCOUNT NUMBER ;PD_QUERY VARCHAR2(100); BEGIN --프로시저 실행한 날짜 셋팅 SELECT SYSDATE INTO PD_SDATE FROM DUAL ; --DELETE 프로시저 실행 PD_QUERY := 'DELETE FROM ' || TABLE_NAME || ' WHERE ' || TABLE_PARAM || ';'; EXECUTE IMMEDIATE PD_QUERY ; PD_DELCOUNT :.. 더보기
오라클 파티션(PARTITION) 조회 SELECT * FROM 대상테이블 PARTITION (PARTITON_NAME) 더보기
PL/SQL 예외처리 http://dblab.changwon.ac.kr/corenet/education/speciallec/sqlplsql/chap16-2.html 더보기
Index 란? index란? 검색을 빠른 속도로 하기 위해서 사용됩니다.SQL 명령문의 처리 속도를 향상시키기 위해서 컬럼에 대해서 생성하는 오라클 객체임. --index 사용해야할 경우테이블에 행의 수가 많을때조건절인 where문에 해당 컬럼이 많이 사용될때검색 결과가 데이터의 2% ~ 4% 정도일때(적은 양의 컬럼을 가져올때)join에 자주 사용되는 컬럼NULL을 포함하는 컬럼이 많은 경우 --index 사용하지 말아야 하는 경우테이블에 행의 수가 적을때where 문에 해당 컬럼이 자주 사용되지 않을 때 검색 결과가 전체 데이터의 10% ~ 15% 이상 높을 때(많은 양의 컬럼을 가져올대)테이블에 DML 작업이 많은 경우(입력,수정,삭제 등이 자주 발생할때) --index 딕션너리USER_INDEXES :인덱스 이.. 더보기
테이블스페이스(TableSpace) 정의 테이블스페이스(TableSpace) 정의 테이블이 저장되는 공간입니다.오라클 에서는 테이블스페이스라고 해서 테이블이 저장될 공간을 먼저 만들고 나서테이블을 생성합니다. 각각의 테이블을 테이블스페이스별로 나누어서 관리와 퍼포먼스의향상을 가지고 오는것입니다. 테이블스페이스를 생성하면 정의된 용량만큼 미리 확보한 테이블스페이스가 생성되어지고 생성되어진 테이블스페이스에 테이블의 데이타가 저장됩니다. 예를 들면 많은 데이터가 쌓일 게시판 테이블은 기본용량 100메가 자동확장 10메가로테이블스페이스를 만들어서 그곳에 게시판 테이블을 만들어 쓰면 게시판 데이터는 그곳에100메가까지 데이터가 저장되고 용량 초과시 자동적으로 10메가단위로 테이블 스페이스의크기는 확장됩니다. 이렇게 각 테이블의 특성에 맞게 테이블스페이스.. 더보기
Tablespace 조회 및 용량 확장 ORA-01653 에러 발생 시 대처법 Tablespace 용량 조회SELECT TABLESPACE_NAME, FILE_NAME, BYTES/1024 AS MBytes, RESULT/1024 AS USE_MBytes FROM ( SELECT E.TABLESPACE_NAME,E.FILE_NAME,E.BYTES, (E.BYTES-SUM(F.BYTES)) RESULT FROM DBA_DATA_FILES E, DBA_FREE_SPACE F WHERE E.FILE_ID = F.FILE_ID GROUP BY E.TABLESPACE_NAME, E.FILE_NAME, E.BYTES ) A Tablespace 조회SELECT * FROM DBA_TABLESPACES; Tablespace 용량 확장alter databas.. 더보기