목록IT Developer/Oracle (4)
테랑's Object
안녕하세요. 테랑입니다. 오늘은 제가 자주 잊어버리는 Oracle 에서 Procedure 검색하는 방법에 대해 간략하게 블로깅 하겠습니다. 일하다 보면 Procedure 내용을 검색하는 경우가 종종 있는데, 그 Object 의 내용이 저장된 View 의 명이 기억나지 않는 경우가 있습니다. 그 View 의 이름들은 바로 user_objects 와 user_source 입니다. user_object 에서는 Object Name / Object Type 등 Main Property 들을 확인할 수 있고,user_source 에서는 각 Object 들의 내용을 확인할 수 있습니다. 즉, Oracle 에서 Procedure 의 내용을 확인하려면 SELECT A.OBJECT_ID, A.OBJECT_NAME, A...
테랑입니다. 갑자기 생각났는데 혹시 Oracle 에서 Index 를 생성한 경우 통계정보를 다시 수집해야 하는지 아닌지에 대해 혹시 알고 계시나요? 정답은 10g 이상에서만 Index 생성 시 자동으로 통계정보 수집이 된다 입니다. 즉 10g 이하의 DB 에서는 Index 생성 후 통계정보를 수집해야 한다는 말이죠... (10g 이하는.... 잘 없겠죠?? 허허 제 옆에 운영되는 시스템은 하나 있긴 합니다만......) 하여튼... Index 생성과 Rebuild 해야 되는 시점 확인에 대해서 알아 보도록 하겠습니다. Create Index 쿼리// 하나의 Column 으로 Index 생성시CREATE INDEX "INDEX 명" ON "TABLE 명" ("INDEX COLUMN명") ONLINE NOL..
테랑입니다. System 을 운영하다 보면 Database 혹은 Was 등에서 문제가 발생하는 경우가 생기는데요. 오늘은 Oracle Database 에서 Lock 이 발생할 경우 Status 를 Check 하고 문제를 해결하는 방법에 대해 블로깅 하겠습니다. 일단 Oracle 의 v$session, v$locked_object Table 을 이용하여, Lock 이 걸린 Session 을 확인하고, 그 세션을 종료 시킵니다. Session Lock 확인 및 Kill Session-- Lock 걸린 SERIAL_NO,SESSION_ID, OBJECTSELECT DISTINCT t1.session_id AS session_id ,t2.serial# AS serial_no ,t1.os_user_name AS ..
사람이기 때문에 실수도 할 수 있는 법!! 실제 System 을 운영 하면서 실수로 Data 를 Delete / Update 후에 Commit 을 했을 때, Oracle 에서는 FlashBack 에 일정 시간이 (이 일정 시간은 Server 설정마다 다르다 그리고 Table 별 Data 유입 정도가 많냐 적으냐에 따라서도 다를 수 있다) 지날 때 까지 Data 를 임시로 담아둔다 이를 통해 삭제되거나 업데이트 된 예전 Data 를 복구할 수도 있음. 예를 들면 5000 분 전의 Data 를 보기 위해서는 아래와 같은 쿼리를 사용하면 된다. SELECT * FROM 테이블명 as of timestamp (sysdate - interval '5000' minute) WHERE 조회 조건; 하지만 Trunca..