반응형 Oracle18 [오라클/ORACLE] 통계정보 수집방법2 앞전 포스팅에 이어서 STATSPACK을 이용한 통계정보 수집방법을 포스팅 하도록 하겠습니다. STATSPACK을 이용해서 통계정보를 수집하려면 사전준비 작업이 필요한데, 작업의 순서는 다음과 같습니다. 1. SYSDBA로 로그인하여 $ORACLE_HOME/RDBMS/ADMIN/SPCREATE.SQL 스크립트를 실행시킨다. 2. PERFSTAT 유저의 패스워드 지정 3. 작업테이블의 테이블 스페이스와, TEMPORARY 테이블의 테이블 스페이스 지정 다음은 실제 스크립트 실행과정입니다. 위의 과정에서 오류없이 스크립트 실행이 완료되었다면 다음의 명령문이 들어가있는 SQL문을 파일로 만듭니다. variable snapshot_id number begin :snapshot_id := statspack.sna.. 프로그래밍/3. ORACLE 2013. 4. 21. [오라클/ORACLE] 통계정보 수집방법1 Oracle 통계수집 방법 1 Oracle에서 시스템의 통계정보를 수집하는 방법은 크게 2가지가 있습니다. 1. v$sysstat뷰, v$sessio 뷰를 조회하는 방법 2. statspack을 이용하는 방법 뷰를 이용하는 방법은 간단하지만 인스턴스 기동시점부터 누적된 데이터만 조회 할 수 있습니다. 따라서 시계열 분석을 하려면 개별적인 계산이 필요합니다. 또한 인스턴스가 중간에 재가동되면 지금까지 누적된 결과 역시 초기화 됩니다. 바면 statspack을 이용하면 두 기준 시간의 차이를 쉽게 파악할 수 있으며, 인스턴스를 중간에 재가동 하여도 정보가 남아있습니다. 하지만 statspack을 이용하려면 전용 유저와 전용 스크립트를 준비해야 합니다. v$sysstat 뷰 Oracle 시스템에서 수집한 통계.. 프로그래밍/3. ORACLE 2013. 4. 16. [오라클/ORACLE] ORACLE 서버 구성정보 확인하기. Oracle 서버에 관련된 정보는 주로 딕셔너리 테이블에서 확인할 수 있습니다. DBA(데이터베이스 관리자)는 'DBA_' 접두사를 가진 딕셔너리 테이블과 V$접두사를 가진 동적 퍼포먼스 뷰를 조회 함으로써 Oracle 서버에 관련된 정보를 획득할 수 있습니다. 1. Oracle Server Instance 정보 확인하기. Select instance_name, version, status from V$Instance; 쿼리를 이용하여 오라클 서버 인스턴스의 인스턴스 명, 오라클 데이터베이스 버전, 상태 정보를 확인할 수 있습니다. 2. Oracle Database 정보 확인하기 Select name, open_mode from v$database; 쿼리를 이용하여 오라클 데이터베이스의 식별명, 데이터데.. 프로그래밍/3. ORACLE 2013. 4. 15. [오라클/ORACLE] DBA (데이터베이스 관리자)의 업무 DBA(데이터베이스 관리자)의 업무는 크게 데이터베이스 설계, 데이터베이스 도입, 데이터베이스 운용 3가지로 구분할 수 있습니다. 각 업무를 좀 더 자세히 살펴보면 아래와 같습니다. 설계 : 업무에 필요한 정보 정의, 정의된 정보를 이용할 수 있도록 테이블 구조설계, 데이터베이스 제품선정, 사용자 교육 등의 업무를 수행합니다. 도입 : 하드웨어 및 OS를 도입하고 데이터베이스를 설치합니다. 또한 설계단계에서 작선된 데이블 설계도를 바탕으로 데이터베이스에 테이블 구현을합니다. 운용 : 데이터베이스가 이상없이 작동하고 있는지 , 문제점은 없는지 확인하여 사고를 예방하고 그래도 일어나는 사고를 대비하여 대비책을 수립합니다. 또한 정기적으로 HW/SW 업그레이드를 수행하여 데이터베이스가 항상 최적의 상태를 유지.. 프로그래밍/3. ORACLE 2013. 4. 13. [오라클/ORACLE] FLASH BACK을 이용한 데이터 복구 오라클을 이용하다면 보면 의도치 않게 데이터를 삭제하거나 변경을 하고 커밋을 해버리는 경우가 종종 발생하는데요. 이런 경우 데이터를 COMMIT을 한지 얼마 안 되었거나 메모리를 넉넉하게 잡아놓은 경우 FLASHBACK 기술을 이용해서 데이터 복원이 가능합니다. 1. 먼제 임시 테이블과 데이터를 생성합니다. 2. 데이터를 삭제하고 COMMIT을 합니다. 3. FLASHBACK에 데이터가 존재하는 확인합니다. 본 포스팅에서 사용할 명령어는 AS OF TABLE 입니다. 자세히 기술하면 다음과 같습니다. SELECT * FROM TEMP_TABLE AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '8' MINUTE); 여기에서 '8'은 몇분전에 데이터를 조회할지를 표시하는 것으로 본.. 프로그래밍/3. ORACLE 2013. 4. 9. [오라클/ORACLE] DELETE table_name works 며칠 전 지인으로부터 문자 한통으로 시작된 일이다. 지인 : 호빵아 미쳐버리겠다. 프로시저에서 delete table명; 이래놨는데 from없이 이게 가능하? 아니면 이게 테이블이 아닌거가? 호빵 : 오라클은 안되죠 ㅋㅋ 지인 : 더 웃긴건 이게 컴파일이 되어 있다니까 진짜 미춰버리겠다. 호빵 : 오류 없이요? 그럴리가요? 오라클에서 table에 레코드를 지운데 from 절이 없다? 그런데 오류없이 컴파일이 되었다? 생각도 못해 본 일이다. 하지만 업무 중에 장난치려고 문자를 보낼 분은 아니기에 오늘 구글링을 해보았다. 그러다가 발견한 글(링크) 'delete table_name' 이 된단다! 그것도 9i부터 전혀 모르고 있었는데!!! 이 글을 읽은 분들은 'delete table_name' 구문을 보더.. 프로그래밍/3. ORACLE 2013. 2. 5. 이전 1 2 다음 반응형