목록Oracle (16)
Data Modeling Evangelist Kaien Kim's Blog
Oracle DBA Scripts Oracle-Base.com에 소개된 Oracle DBA Scripts자료이다. 버젼별로 잘 정리가 되었으니 실무에 아주 유용한 자료가 아닐까 생각한다. 링크 : http://www.oracle-base.com/dba/Scripts.php
Trace Analyzer Oracle has provided another utility initially designed for performance tuning Oracle Applications. Trace Analyzer is provided in the form of a PL/SQL package (TRCA$ ). The Trace Analyzer utility is available via download on the Oracle Metalink web site. This utility supports only version 8.1.6 and above due the requirement of being able to read OS files from PL/SQL into the databa..
안녕하세요. 반갑습니다. 하나의 테이블에서 사용하지 않는 row들중 키(pk)값이 min값을 가져와서 update를 차례로 하는 프로그램을 작성하다가. 한가지 문제가 조금 생겼습니다. c/s 환경상 여러 pc에서 동시에 처리가 되니깐... 동일한 min값을 두 pc에서 사용하지 못하도록 해당 row에 락(lock)을 걸려고 select 문에 for update를 사용하였습니다. 근데 제가 이것을 잘 이해하지 못해서 락이 제대로 걸리지 않습니다. 아래 저의 적용예를 보시고 많은 조언 부탁드립니다. 예) 1. 정상적으로 lock 됨. select serial_no /* 사용하지 않는 row중 가장 작은 row */ from stock_temp where use_flag = 'N' for update ; ==..
인간의 생각하는 능력이 언어라는 것을 만들었지만, 거꾸로 언어가 인간의 사고 능력을 지배하게 되죠. 오라클 성능 세계에서도 마찬가지입니다. 용어에 대한 정확한 이해가 없으면 문제를 100% 이해할 수도 없을뿐더러 잘못된 지식을 믿게 됩니다. 예를 들어 볼까요? Explain Plan과 Execution Plan의 차이를 설명할 수 있습니까? Scan과 Lookup의 차이는 무엇입니까? Histogram의 의미는 무엇입니까? Lock과 Enqueue의 의미를 구분할 수 있습니까? SQL문과 Cursor의 차이를 설명할 수 있습니까? Event라는 용어가 언제 쓰이는지 설명할 수 있습니까? 용어을 100% 정확하게 설명할 수 있다면 그 자체로도 성능 문제에 대한 상당한 통찰력을 가지고 있다고 볼 수 있습니다..
"Oracle Buys Sun" Oracle은 20일 Sun Microsystems를 74억달러에 인수했다고 밝히면서 자사의 홈페이지 메인에 위 그림과 같이 알렸다. 유력하던 IBM도 관심을 보이던 HP도 아닌... 이 소식을 21일 오전에 접했을때, 그냥 아무생각이 나지않았다. 어떻게 받아들여야 하나??? Oracle하면 떠오르는게 DBMS인데 이제는 더 이상 그러면 안될것 같다. 아니 안된다. People Soft, Siebel Systems, BEA Systems를 인수할때는, "뭐 그럴 수 있지"했는데 이번에는 판이 틀리다. 판이... 기존의 인수업체는 Software업체였다면, Sun은 Hardware비즈니스 비중이 높은 업체이다. OS, 미들웨어, 서버, 저장장치, 프로그래밍언어라는 아이템을 ..
우리가 가끔 날짜관련 계산을 하다보면 첫번째 월요일이라든가 마지막 주 월요일이라든가... 뭐 이런 날을 가져와야 할 경우가 있다. 그전에는 날짜 테이블이 있어 쉽게 가져올 수 가있었는데 그렇지 않은 경우는 천상 쿼리로 구현할 수 밖에 없다. 여기에서 핵심 함수는 last_day(date), next_day(date,char) 이다. 그 용법은 간단히 소개하면 last_day() : 지정한 일자가 포함된 월의 말일 예) select last_day(sysdate) from dual -- 지금은 2009년3월20일이다. 09/03/31 next_day(date,char) : 지정한 일자 다음에 나타나는 지정 요일(두번째 인수) 예) select next_day((last_day(sysdate)),'금요일')..
Full Outer Join에 대해 좋은 글이 있어 링크! Full Outer Join의 비밀
### Lock 확인 쿼리 SELECT do.object_name, do.owner, do.object_type,do.owner, vo.xidusn, vo.session_id, vo.locked_mode FROM v$locked_object vo , dba_objects do WHERE vo.object_id = do.object_id ; #### 어떤 object에 어떤 lock이 걸렸는지 확인 SELECT T1.object_name, DECODE(locked_mode, 2, 'ROW SHARE', 3, 'ROW EXCLUSIVE', 4, 'SHARE', 5, 'SHARE ROW EXCLUSIVE', 6, 'EXCLUSIVE', 'UNKNOWN') lock_mode FROM dba_objects T1,..
ORA-28000에러는 일정 회수이상 로그인 실패시 계정에 lock이 걸리면서 "ORA-28000: the account is locked" 라는 메시지를 뱉어낸다. (10g일 경우 설치 후 처음 scott계정을 사용할 때도 이런 에러가 뜬단다. 난 본적이 없어 모르겠다^^;) 1. 일단 sysdba로 접속한다. sqlplus "/ as sysdba" 2. lock걸린 user를 찾아낸다. SELECT username, account_status, to_char(lock_date,'yy/mm/dd hh24:mi') lock_date FROM dba_users; user가 MODELINGWORLD인 놈이 lock이 걸린걸 확인할 수 있다. 3. lock을 해제한다. ALTER USER MODELINGWOR..
◈ enqueue 와 latch - DBMS의 가장 주된 기능 중에 하나는 동일 자원에 대한 동시 액세스를 관리하는 것이며, 이를 위해 오라클이 사용하는 대표적인 제어 구조가 Enqueue와 Latch 입니다. - enqueue는 FIFO 구조를 가진 큐 입니다. 먼저 요청한 쪽이 먼저 자원을 획득하는 방식 입니다. 그러나 latch는 enqueue와 달리 자유 경쟁에 의해 latch를 획득하게 되며 먼저 요구했다고 해서 반드시 먼저 획득할 수 있는 것이 아닙니다. ◈ 래치란? - 래치(Latch) = 빗장, 락(Lock) = 자물쇠 - 래치는 SGA 내부의 메모리 구조에만 적용된다. 래치는 데이터베이스 오브젝트에는 적용되지 않습니다. 오라클 SGA는 많은 래치를 가지고 있으며 이것은 동시 접근에 의한 ..