본문 바로가기

ORACLE71

OCP 12c 자격증 취득 후기 :: 필요한 모든 것! OCP 12c 자격증 취득하다. OCP 12c 자격증은 2020년도에 취득했습니다. 시험은 준비는 2020년도 4월부터 했고 시험은 6월달에 마무리하고 자격증은 8월달에 나왔네요. 백번 말하는 것보다 제 자격증을 올려 보여드리는게 제 글에 신빙성이 있을거라 생각이들어서....자랑자랑... ㅎㅎ 취득할 때 블로그에 글을 남기겠다고 마음잡고 있었는데... 어느덧 6개월정도가 지나서 글을 쓰네요. 우선 이 글을 쓰는 목적은.... OCP 취득 시험 종목과 방법이 2020년도 부터 바뀌었어요. 그리고 검색하면 대부분 2018년도 이전 내용이 많더라구요.... 그래서 시험 준비 당시 많은 정보를 얻지 못해서 나름 최근? 시험 정보에 대해서 정리하면 OCP 자격증을 준비하고 계신 분들에게 도움이 될것 같아 이렇게 .. 2021. 3. 15.
[Oracle] 오라클 책 추천 DBA가 되고 싶은 엔지니어들을 위한 feat. OCP, SQLP에 도움 되는 책 오라클 책 추천 오라클 데이터베이스에 대해서 공부하려고하는데... 생각보다 얻을 수 있는 정보를 찾기 힘듭니다. 온라인강의의 커리큘럼을 보면 대부분 SQL사용법에 대한 내용에서 끝나고 오라클 데이터베이스를 이해하기 위한 내부 성능과 원리 아키텍처와 같은 부분에 대한 강의할 찾아보기 힘듭니다. 검색을 해서 데이터베이스에 대한 정보를 찾아도 많은 정보를 찾기가 힘들것입니다. 한때 DBA를 꿈꾸고 OCP와 SQLD를 취득하면서 도움이 되었던 책들을 공유해보고자 합니다. 1. 오라클 성능 고도화 원리와 해법 1,2 디비안 오라클 성능 고도화 원리와 해법 1 COUPANG www.coupang.com 오라클 성능 고도화 원리와 해법. 2:효율적이고 신뢰할 수 있는 데이터베이스 구축을 위한 실증 COUPANG ww.. 2021. 3. 15.
[Oracle] 조인의 종류 - Nested,Sorted,Hash Join RDBMS에서는 정규화에 의해 연관된 데이터를 여러개의 테이블로 나누게 됩니다. 그래서 원하는 형식의 데이터를 받아오기 위해 여러개의 테이블을 연결하여 사용하는데 이를 Join을 통해서 할 수 있습니다. Join작업을 할때도 옵티마이저는 어떤 방식으로 조인을 할지 실행계획을 세우게 됩니다. 이번 글에서는 데이터베이스 내부적으로 어떻게 조인을 하는지 아래 3가지 방식에 대해서 알아보겠습니다. Nested Loop Join Sorted Merge Join Hash Join 실습환경 OS : Red Hat Enterprise Linux Server release 6.10 DB : Oracle 11.2.0.1 SID : orcl user : jamong 테이블 구조 SYS@orcl> create tab.. 2020. 10. 7.
[Oracle] Index 탐색 방식 - Unique,Range,Full,Fast,Skip Index 인덱스는 테이블에 대한 동작 속도를 높히기 위해 사용되는 오브젝트입니다. 정렬된 상태로 데이터가 저장되어 빠른 속도로 원하는 데이터에 접근할 수 있습니다. 하지만, 인덱스를 사용한다고 해서 무조건 속도가 빠른 것은 아닙니다. 테이블의 전체 데이터를 출력하는 경우에는 인덱스의 탐색보다는 테이블을 전체 탐색하는것이 빠릅니다. 그래서 주로 탐색하는 데이터가 많은데 반환되는 데이터가 적은 경우 인덱스를 사용하게 됩니다. 이런 인덱스를 사용할때 옵티마이저는 가정 최적화된 방법으로 탐색을 합니다. 인덱스에는 아래의 탐색 방식이 있고 하나씩 살펴보도록 하겠습니다. Index Unique Scan Index Range Scan Index Full Scan Index Fast Full Scan Index Sk.. 2020. 10. 5.
[Oracle] 실행계획 확인 방법 XPLAN, AutoTrace, SQL Trace 실행계획 알고리즘 문제 풀때를 떠올려봅시다. 문제를 읽고 어떤 방식으로 풀어야 정확도와 효율성을 잡을 수 있을지 고민합니다. 완전탐색을 해야하는지, 이분탐으로 시간복잡도를 줄일 수 있는지, 혹은 자료구조를 어떤 것을 선택해야하는지 등 여러 고민을 하고 최적이라고 생각하는 방법을 선택합니다. 실행계획도 알고리즘 문제를 푸는 과정과 비슷합니다. 옵티마이저가 어떤 방식으로 쿼리를 실행해야 빠른속도로 결과를 반환할 수 있는지 고려하여 결과를 얻기까지의 과정을 알려줍니다. 우리는 이러한 실행계획을 확인하면서 SQL 쿼리문이 효율적으로 사용되고 있는지 확인할 수 있습니다. 데이터가 대량으로 늘어나면서 특히 속도가 중요한 요소가 되었습니다. 간단한 튜닝을 통해서도 엄청난 효율을 얻을 수 있기 때문에 튜닝의 기본인 실.. 2020. 10. 4.
[Oracle] ON절과 WHERE절 조건 차이, JOIN 대상 차이 ON절과 WHERE절 차이 조인문을 사용할때 ON절을 이용해서 해당 조건으로 테이블 조인을 하게됩니다. 그런데 JOIN을 하기 위해 ON절이 아닌 WHERE절에 사용할때도 있습니다. 같은 내용같지만 확실히 두가지 절의 차이는 있습니다. 이번 글에서는 ON절과 WHERE절의 차이와 어떤 상황에서 각각 사용해야하는지 알아보도록 하겠습니다. SQL문 순서 ON JOIN 절이 추가된 SQL문의 순서는 FROM 절 다음으로 진행합니다. 즉 ON절은 WHERE절 보다 순서상으로 더 빠릅니다. 그럼 이게 실제 쿼리를 실행했을 때 어떤 차이가 있는지 확인해보겠습니다. WHERE절 ON절 실습 OS : Red Hat Enterprise Linux Server release 6.3 DB : Oracle 12.1.0.2 u.. 2020. 8. 9.
[Oracle] List Partition Table 실습 및 정리 List Partition Table Object라는 것은 유저가 생성할 수 있는 것입니다. Segment는 Object들 중에서 데이터를 저장하기 위해서 저장공간이 필요로하는 것입니다. 기본 테이블은 하나의 Segment를 갖는 것을 원칙으로 해서 데이터의 양이 많이질 수록 쿼리작업을하는데 시간이 오래걸리게 됩니다. 만약 하나의 테이블이더라도 특정 기준으로 여러 Segment를 만들어서 필요한 데이터 범위에서만 조회를 한다면 어떨까요? 예를 들어 2015년도의 전체 데이터를 찾고싶은데 Table에는 1990년부터 데이터가 존재합니다. 여러 행을 결과로 반환하기 때문에 Full Table Scan 작업을 하게될텐데 1990년도 부터 모두 탐색하면 시간이 정말 오래 걸릴겁니다. 이럴때 기간을 기준으로 Pa.. 2020. 7. 23.
[Oracle] Flashback 사용법 정리(Versions, Transaction, Table, Drop) Oracle Flashback DML 작업을 하다가 의도치 않게 혹은 실수로 Commit으로 Transaction을 끝냈는데 이전 시점으로 돌아가야하는 상황이 올 수 있습니다. 이 문제를 해결하기 위해 Oracle의 Flashback 기술을 이용해서 특정 시점으로 돌아가거나 보여주는 복구 작업을 할 수 있습니다. 다만, Flashback 기술은 Undo Data를 사용하기 때문에 undo_retention 파라미터값에 의해 보존되는 시간이 정해져 있습니다. Undo Data를 보존하는데 공간과 자원이 필요합니다. 그래서 undo_retention의 기본값은 900초로 되어있는데 좀 더 오랜 기간 돈안 Undo Data를 보존하기 위해 Flashback Data Archive 기능을 사용할 수 있습니다. .. 2020. 7. 22.
[Oracle] Flashback Query AS OF 절 사용하기 Flashback Query AS OF절 Oracle 9i release 2 버전의 New Feature로 "AS OF"절을 이용해서 특정 시점의 테이블 데이터를 확인할 수 있게 되었습니다. 하지만 특정 시점의 제한은 있습니다. Flashback Query는 Undo Data의 정보를 이용해서 결과를 보여줍니다. 그래서 Undo Data가 살아있는 기간동안만 확인할 수 있는 제한이 있습니다. 보통 Transaction이 마친 후 undo_retention 파라미터값 만큼 Undo Data가 보존되지만, Oracle 11g부터 Flashback Data Archive 기능을 이용해서 더 오랜 기간동안 Undo의 정보를 보존할 수 있게 되었습니다. Flashback Data Archive 설정에 대한 내용은.. 2020. 7. 21.
[Oracle] Flashback Data Archive 데이터 복원 작업 Flashback Data Archive(11g) DML 작업을 하면서 실수를 저질러버리고 commit까지 해버리는 경우가 있습니다. 예를 들어 실수로 delete문에 조건절을 포함하지 않아 모든 데이터가 사라지는... 그런 경우가 생길 수 있습니다. Flashback 기능을 사용하면 이런 상황에서 복구가 가능합니다. 하지만 Undo Data를 기본적으로 사용하는 Flashback 기능은 undo_retention 파라미터에 따라 데이터를 복구하지 못하는 상황이 발생할 수 있습니다. undo_retention은 기본으로 900이므로 15분이 지나면 undo에서 데이터를 읽어오지 못하여 Flashback 기능을 사용해서 복구가 안될 수 있습니다. 이럴때는 Flashback Data Archive를 생성하여.. 2020. 7. 21.