본문 바로가기

Oracle244

recover table의 단점? recover table의 테스트 시나리오 및 내용은 아래 글을 참고하세요.참고 : https://bae9086.tistory.com/22 [RMAN]Recover Table기존에 Clone DB를 생성하여 무정지 복구를 Manual하게 수행하던 것을 RMAN이 자동으로 진행합니다. 1. 임시 경로로 필요한 파일 복원 2. 파일 경로 변경 후 삭제된 테이블 복구 3. 임시경로에서 복구된bae9086.tistory.com참고 : https://bae9086.tistory.com/491 [Recover Table] 여러 테이블 recover 및 remap 옵션recover table에 관련된 테스트를 해보며 글을 여러번 작성했었습니다. 기본 정보 및 테스트시나리오는 이전글을 참고하시길 바랍니다. 저는 rec.. 2025. 5. 13.
리스너(LISTENER)? 오라클에서 리스너는 DB외부 사용을 위해 필수적으로 사용해야 합니다.이번 글에서는 리스너에 대한 정리를 해보고 몇가지 테스트도 해보았습니다. 리스너란?외부에서 DB접속을 위해 사용되는 유틸리티입니다.테스트가 아니라 외부접속환경을 만들기 위해서는 필수요소입니다. 매커니즘외부에서 접속시도를 할때 어떤식으로 움직이는지 알아보겠습니다.사용자가 접속시도 시1. 리스너로 연결요청2. 리스너에서 프로세스 생성 및 연결요청 상속을 서버쪽에 전달3.서버에서 PGA에 세션이 사용할 메모리 생성4.서버에서 사용자에게 RESEND 패킷전송5.연결서버와 사용자가 연결이 설정되면 리스너는 해당 세션에서의 역할은 종료됩니다. 서비스 등록방식두가지 방식이 있습니다. 정적등록과 동적등록입니다.정적등록은 listener.ora 파일에 .. 2025. 5. 8.
[PL/SQL] 동적 SQL과 정적 SQL로 각각 컬럼 명만 변경하여 수행되는 프로시저 작성 PL/SQL 작성에 대해 문의가 온 내용이 있어서 정리하였습니다.PL/SQL로 프로시저를 수정하는데, SQL의 대부분은 수정하지 않고, 조건에 따라 컬럼하나만 변경되어서 조회가 될 수있게 수정하는 가이드를 줄 수 있냐는 문의였습니다.문의주신 분의 의도는 정적 SQL로 SQL의 변경을 최소화하여 기존과 같은 정적 SQL 형식으로의 가이드를 부탁했지만, 저는 처음에 동적 SQL로 답을 드렸었는데요, 덕분에 동적,정적 SQL 둘다 가이드를 줄 수 있었습니다. 동적 SQL과 정적 SQL에 따라 어떠한 방법으로 작성을 했는지 예시로 만든 프로시저를 통해서 작성해보겠습니다.두개의 프로시저의 성격은 약간 차이가 있습니다. 1.동적 SQL을 사용해서 만든 프로시저는 EMP_COL_TEST의 ENAME,JOB 각각 컬럼.. 2024. 12. 26.
[SGA] library cache lock&pin 발생원인과 재현하기 어제 테이블의 ddl을 수행하려고 보니 (단순 add column) 수행이 끝나지 않고 계속 대기하는 현상이 발생하였습니다. 다른 세션을 열어 세션의 상태를 조회해보니 library cache lock 상태로 wait중이었습니다. 급하게 holder session을 찾아 kill을 하고 처리를 했지만, 정확한 처리방법이 맞는것인지 다시 재현하여 확인할 수 있는 다른 테이블이나 방법은 없는지 정리를 하기로 하였습니다.  library cache 란?라이브러리 캐시는 Shared Pool 내에 위치하며, SQL 공유 커서 및 데이터베이스 오브젝트(테이블,인덱스)에 대한 정보를 관리합니다. 그리고 여기에 저장되는 정보의 단위를 라이브러리 캐시 오브젝트(LCO)라고 부릅니다. SQL 커서 뿐만 아니라 컴파일을 .. 2024. 12. 13.