Microsoft PowerPoint - Tech-iSeminar_Logminer.ppt

Size: px
Start display at page:

Download "Microsoft PowerPoint - Tech-iSeminar_Logminer.ppt"

Transcription

1 Oracle LogMiner 의활용 Tips Getting the most out of MetaLink 천봉격, 김주연 한국오라클 ( 주 ) 제품지원실 기술적인질문은채팅으로 이번세미나에선 Oracle 8i, 9i, 10g 에서 Oracle Logminer 의활용팁에대해알아보도록하겠습니다. 본세미나에서는 Oracle 에서제공되는 Logminer 을사용하여 Online/Offline Redo Logs 을분석함으로써 Logical Corruption, 사용자에러, DML 추적, 성능변화에대한정보를추출함으로써 Database 관리자에게도움을드리고자합니다.

2 목 차 LogMIner 소개 Redo Logs 와 Dictionary LogMiner Dictionary 추출방법 9i LogMiner Features LogMiner Options 요약 Supplemental Logging 제약사항 일반적인 LogMiner 수행단계

3 LogMiner 소개 Online/Offline Redo Logs 에서 Data 추출 분석하려는 Redo Logs 지정실행 Redo Logs 검색후 V$LOGMNR_CONTENTS 통하여출력 LogMiner 는 8.1 버전또는상위버전에서만실행이가능하지만 Oracle 8.0 버전의 Redo Logs 파일을분석할수있습니다. 분석하고자하는 Instance 와같은 Database Character Set, 동일한 Hardware 을사용해야합니다. 분석하고자하는 Instance 와 Log 가생성된 Instance 는 Block Size(DB_BLOCK_SIZE) 가동일해하며, 만일 Block Size 가다르다면 Archive Log 에 Corruption 이발생했다는메시지가출력됩니다.

4 1. LogMiner 개요 Log 파일에는 Oracle Database 에서발생한작업에관련된많은양의유용한정보가저장되어있지만 Oracle 8i 이전에는이정보를얻기위한방법이없었습니다. LogMiner 는 Online 혹은 Offline Redo Log 파일에대한읽기 / 분석 / 해석을위해서 SQL 문장을사용하여수행할수있습니다. Log 파일의분석작업결과는다음과같은용도로사용될수있습니다. 첫째 Transaction 별, 사용자별, 테이블별, 시간대별로 Database 에가해진변경작업에대한추적을할수있습니다. 즉, 어떤사용자가자료를수정했는지또한그작업을수행하기이전의데이타값은무엇이었으며작업이후의데이타값이어떤값으로변경되었는지확인할수있습니다. 데이타변경과과거시점의자료추적기능및그작업을취소 (Undo) 할수있는기능은보안과관리에매우중요한수단으로사용될수있습니다. 둘째논리적인자료의변조 ( 예를들면, 실수로자료를지우고계속작업을진행하는경우 ) 가언제발생했는지를정확히알수있으며, 변조된이전시점까지일관성이보장된상태로 Database 를복원하기위해서어떤방법으로 Recovery 를시작할것인지를결정하는데있어서중요한역할을합니다. 셋째다양한형태의시간적추이에따른 Application 사용과자료의패턴분석이가능하므로 Tuning 과성능계획을수립하기위한보조자료로사용될수있습니다. 2. LogMiner 세부사항 LogMiner 는 Log 파일을추출하여, 그안에저장되어있는내용을 Database 에가해진논리적인작업을표현하는 SQL 문장으로변환합니다. V$LOGMNR_CONTENTS View 는본래의작업을표현하는 SQL (SQL_REDO Column) 과그작업을취소할수있는 SQL(SQL_UNDO Column) 을보여줍니다. SQL_UNDO 를실행함으로써원래의상태로되돌릴수있습니다. 기타 V$LOGMNR_CONTENTS 를통해얻어낼수있는정보는다음과같습니다. - 언제논리적인변경이발생했는지를확인하고, 그것에대한복구작업 (Incomplete recovery) 을수행하기위해필요한 SCN(system change number) 또는시간정보를얻어냅니다. - 특정 table에발생한변경과특정사용자로부터발생한변경을확인합니다.

5 Redo Logs 와 Dictionary 1. Redo Logs 2. Dictionary 기능 LogMiner 을시작하기전에 LogMiner 가 Redo Logs 와 Dictionary 파일들과함께어떻게작동하는지에대한원리를이해하는것은중요하며, 이것은정확한결과를얻어서시스템자원을계획하는데도움을줄수있습니다.

6 1. Redo Logs Redo Logs 파일지정과 V$LOGMNR_CONTENTS 최소의 Supplemental Logging 활성화 V$LOGMNR_CONTENTS 의순차적추출 여과범위또는검색조건 LogMiner 사용시분석하고자하는 Redo Logs 파일명을지정해야하며, 명시한 Redo Logs 로부터정보를검색하여 V$LOGMNR_CONTENTS View 을통하여결과를출력합니다. 정확한결과를얻기위해서최소한의 Supplemental Logging 이활성화가되어야하며, V$LOGMNR_CONTENTS View 을통한 SQL 문장을실행시분석된 Redo Log 파일정보를순차적으로파일로추출됩니다. Redo Log 파일에서분석된정보는 V$LOGMNR_CONTENTS View 의 Rows 값들로출력되며, 이과정은여과범위또는검색조건이만족되거나 Redo Log 파일의끝까지검색할때까지계속됩니다. Redo Logs 파일의필수요건은다음과같습니다. Redo Logs 파일은 8.0 버전에서제공될수있지만, 버전에서소개된 LogMiner 의몇가지기능은단지 9i 또는이후버전에서만동작을합니다. 9.2 버전에서 LOB 과 LONG Datatypes 들이지원되지만 9.2 Database 에서생성된 Redo Logs 파일에서만가능한기능입니다. Redo Logs 파일들은 LogMiner 가실행되는 Database 와동일한 Character Set 을사용해야합니다. 일반적으로 Redo Logs 파일들을분석하기위해서는 Redo Logs 가생성된같은 Database 에서생성된 Dictionary 파일이필요합니다. LogMiner Dictionary 을위해 Online Catalog 을사용한다면, 단지 LogMiner 가기동된 Database 에서만 Redo Logs 을분석할수있습니다. LogMiner 는분석하고자하는 Redo Logs 을생성한같은 Hardware 에서실행하는것을권장합니다. LogMiner 실행시정확한 Redo Logs 을지정하는것이중요합니다. 현재 LogMiner Session 에서어떠한 Redo Logs 을분석할지결정하기위해각각의 Redo Log 의열을포함하는 V$LOGMNR_LOGS View 을조회할수있습니다.

7 1.2.2 LogMiner Dictionary 기능 Redo Log 분석시 Dictionary 사용권고 Database 시점이동일한 Dictionary 사용 Object 해석을위한 Dictionary 사용권장 Dictionary 부재시 Hexa 값으로출력됨. 다른서버에서 Redo Logs 분석시 Dictionary 사용 Redo Log 파일들의전체내용을분석하려면 Dictionary 를사용한 PL/SQL Package 생성을권고하며, Database 정보와그시점에생성된 Dictionary 파일을사용합니다. 내부오브젝트식별자들과 DataType, 외부데이터포맷해석을위해 Dictionary 를필요로하며, 반드시필요하지않지만권장사항입니다. Dictionary 파일이없다면, 상응하는 SQL 문장생성을위해오브젝트이름과 Column 값들을 Hexa 로내부오브젝트 ID 값을생성합니다. Source Database 에접속하지않고다른 Database Instance 에서 Redo Logs 을분석하려면 Dictionary 파일을사용해야합니다. 다음은 Dictionary 파일이없을경우입니다. 실제실행된 SQL 문장 : INSERT INTO emp(name, salary) VALUES ('John Doe', 50000); LogMiner 생성문장 : insert into Object#2581(col#1, col#2) values (hextoraw('4a6f686e20446f65'), hextoraw('c306'));

8 LogMiner Dictionary 추출방법 1. Online Catalog 사용 2. Redo Log 파일들로부터 LogMiner Dictionary 추출 3. Flat 파일로 LogMiner Dictionary 추출 4. LogMiner Dictionary 의사결정선택 Tree

9 1. Online Catalog 사용 Redo Log 파일들이생성된 Source Database 접근이가능할경우. 관련 Table 들에 Column 정의에변경이없을경우. - 가장효율적이며사용이용이한기능이다. SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(- OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG); Online Catalog 사용은분석할 Logs 을추가후 DBMS_LOGMNR.START_LOGMNR Procedure 에 DICT_FROM_ONLINE_CATALOG Option 을사용하여 LogMiner 가 Dictionary 생성없이 Database Data Dictionary 을사용할수있습니다.

10 2. Redo Log 로 Dictionary 추출 Source Database 접근불가능한경우 Flat 파일추출보다속도향상 Multiple Redo logs 포함 관련 Redo Logs 가 Archive 된경우 SQL> execute DBMS_LOGMNR_D.BUILD(options => - dbms_logmnr_d.store_in_redo_logs); 사용가능한경우는 Source Database 접근이되지않는경우, 시간이소요되는작업이며, Database 사용자가많지않은경우, Flat 파일로추출하는것보다빠른경우, Dictionary 크기가고려사항이며, 여러개의 Redo Logs 을포함할수있는경우, 관련 Redo Log 파일들이 Archive 되어있는경우로다음의 Query 을사용하여 Redo Log 파일의시작과끝을추출된 Dictionary 에서확인합니다. SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_BEGIN='YES'; SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_END='YES'; LogMiner Dictionary 을 Redo Log 파일에저장하기위해서는다음의제약사항이존재합니다. - DBMS_LOGMNR_D.BUILD 는 9i 버전에서실행되어야합니다. - Database 는 Archive Mode 로운영되어야합니다. - COMPATIBLE Parameter 는 로설정되어야합니다. - Dictionary 는분석된 Redo Logs 와같은 Database 에속해야합니다. - Dictionary 을추출하는동안어떠한 DDL 도허용되지않습니다. SQL> execute DBMS_LOGMNR_D.BUILD(options => - dbms_logmnr_d.store_in_redo_logs);

11 3. Flat 파일로 Dictionary 추출 이전버전과상호호환성보장 Transaction 일관성보장하지않음 SQL> EXECUTE DBMS_LOGMNR_D.BUILD('dictionary.ora', - > '/oracle/database/', DBMS_LOGMNR_D.STORE_IN_FLAT_FILE); 이기능은이전버전과상호호환성을보장하며, Transaction 의일관성은보장하지는않습니다. Oracle 은 Flat 파일로 Dictionary 추출을권장하지않으며, Online Catalog 을이용하거나 Redo Log 파일로 Dictionary 추출을권장합니다. SQL> EXECUTE DBMS_LOGMNR_D.BUILD('dictionary.ora', - > '/oracle/database/', DBMS_LOGMNR_D.STORE_IN_FLAT_FILE); STORE_IN_FLAT_FILE 기능을명시하지않고파일명이나위치를지정할수있으며, 이결과는동일합니다. Flat 파일로 Dictionary 추출예제를설명하겠습니다. 1. initsid.ora 파일에 UTL_FILE_DIR 의경로를설정합니다. UTL_FILE_DIR=/oracle/logminer 2. Dictionary 생성을위해서 DBMS_LOGMNR_D Package 을사용합니다. Dictionary 가일관성있는 Snapshot 을가졌는지확인하며, 생성할동안 DDL 을허용되지않습니다. SQL> execute DBMS_LOGMNR_D.BUILD('dictionary.ora', '/oracle/logminer', - options => dbms_logmnr_d.store_in_flat_file); 3. DBMS_LOGMNR.ADD_LOGFILE Procedure 을사용하여분석할 Logs List 을만듭니다. SQL> execute DBMS_LOGMNR.ADD_LOGFILE('/ora/ora901/oradata/V901/redo01.log',- options => dbms_logmnr.new); SQL> execute DBMS_LOGMNR.ADD_LOGFILE('/ora/ora901/oradata/V901/redo02.log',- options => dbms_logmnr.addfile); 4. 방금생성한 Dictionary 을명시하고분석을시작합니다.

12 4. LogMiner Dictionary 선별을위한의사결정 Tree Source Database 접근이가능할것인가? 예 아니오 Database 가 Write Mode 로접근이가능할것인가? 예 아니오 Instance 가기동될것인가? 예 Column 정의가변경될것인가? 아니오 Column 정의가변경될수있을것인가? 아니오 아니오 예 Database 가 Open 될것인가? 예 예 Online Catalog 의 Dictionary 사용 Redo Log 파일의 Dictionary 사용 추출된 Flat 파일의 Dictionary 사용 상황별로 LogMiner Dictionary 을선택을도와주는의사결정 Tree 입니다.

13 9i LogMiner Oracle LogMiner Viewer GUI 인터페이스제공 Redo Logs 로의 Dictionary 파일생성가능 COMMITTED_DATA_ONLY 사용 DDL 지원 Redo Corruption Skip 기능 9.2 버전부터 Oracle LogMiner Viewer 란 GUI 인터페이스를통하여 LogMiner 기능을접근할수있는 Option 이제공되며, Oracle Enterprise Manager 의일부분입니다. 모든 LogMiner 테이블들은 Default 로 SYSTEM Tablespace 에생성이되며, 다음의문장을사용하여모든 LogMiner 테이블들을또다른 Tablespace 에생성할수있습니다. SQL> EXECUTE DBMS_LOGMNR_D.SET_TABLESPACE( <tablespace_name> ); Commit 된 Transaction 들만검색하기위해 COMMITTED_DATA_ONLY Option 을명시하지않으면, SCN 순서로모든 Rows 가출력되며, SCN 순서는일반적으로 Media Recovery 시에적용됩니다.

14 9I 의 LogMiner New feature 를정리하면다음과같습니다. - DDL 지원단, 9i 이상에서생성된 Redo/Archive Log 파일만분석가능합니다. (V$LOGMNR_CONTENTS 의 OPERATION Column 에서 DDL 을확인합니다.) - LogMiner 분석을위해생성한 Dictioanry 정보를 Online Redo 에저장가능하며, 반드시 Archive Log Mode 로운영중이어야합니다. DBMS_LOGMNR_D.BUILD 를사용하여 Dictionary 파일을생성하며, 기존 Flat 파일또는 Redo Log 에도생성이가능합니다. 예 ) Flat file SQL> EXECUTE dbms_logmnr_d.build (DICTIONARY_FILENAME => 'dictionary.ora',dictionary_location => '/oracle/database',options => DBMS_LOGMNR_D.STORE_IN_FLAT_FILE); 예 ) Redo log SQL> EXECUTE dbms_logmnr_d.build (OPTIONS => DBMS_LOGMNR_D.STORE_IN_REDO_LOGS); - Redo Log Block Corruption 이발생하였을경우 Corruption 된부분을 Skip 하고분석할수있습니다 8i 에서는 Log Corruption 발생시 LogMiner 가종료되고분석을위해다시시도해야했지만, 9i 에서는 DBMS_LOGMNR.START_LOGMNR 의 SKIP_CORRUPTION Option 으로 Skip 이가능합니다. - Commit 된 Transaction 에대해서만출력할수있습니다. (DBMS_LOGMNR.START_LOGMNR 의 COMMITTED_DATA_ONLY Option 을사용합니다.) - Index Clustered 와연관된 DML 을분석할수있습니다. (8i 에서는제공되지않았던기능입니다.) - Chained 와 Migrated Rows 분석이가능합니다. LogMiner Views - V$LOGMNR_CONTENTS - 현재분석되고있는 Redo Log 파일의내용입니다. - V$LOGMNR_DICTIONARY - 사용중인 Dictionary 파일입니다. - V$LOGMNR_LOGS - 분석되고있는 Redo Log 파일입니다. - V$LOGMNR_PARAMETERS - LogMiner 에 Setting 된현재의 Parameter 값입니다.

15 Features (1) DDL_DICT_TRACKING Option 을사용한 DDL 문장추적 -Flat 또는 Redo Logs 의 Dictionary 일경우 - Default : 비활성화예제 : SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.DDL_DICT_TRACKING); 또는 SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.DDL_DICT_TRACKING + DBMS_LOGMNR.DICT_FROM_REDO_LOGS); 버전에서소개된 LogMiner 의몇가지기능은 9i 또는그상위버전에서생성된 Redo Logs 에서만동작합니다. DDL_DICT_TRACKING Option 을사용한 DDL 문장추적은 Default 로비활성화되어있으며, 활성화하려면 LogMiner 기동시 DDL_DICT_TRACKING Option Parameter 을사용합니다. SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.DDL_DICT_TRACKING); DDL 문장확인은다음과같이할수있습니다. SQL> SELECT USERNAME, SQL_REDO FROM V$LOGMNR_CONTENTS WHERE USERNAME = SCOTT AND OEPRATION = DDL ; DDL_DICT_TRACKING Option 사용시고려사항은 DICT_FROM_ONLINE_CATALOG 과함께사용하지않으며, Database 가기동되어야만합니다.

16 Features (2) 재구성된 SQL 문장실행 - DBMS_LOGMNR.NO_SQL_DELIMITER 사용한세미콜론종결비활성화 출력된 Data 구성 - PRINT_PRETTY_SQL 사용한읽기쉬운출력형식 Redo Logs 로부터실데이타추출 - LogMiner 의실제Data 값기준Data 조회 - Redo Logs 로부터 LogMiner Data 추출 DBMS_LOGMNR.MINE_VALUE - DBMS_LOGMNR.COLUMN_PRESENT 재구성된 SQL 문장실행은 SQL_REDO 와 SQL_UNDO 문장들이세미콜론 (;) 으로종결되며, 세미콜론종결을비활성화시키려면 LogMiner 기동시 DBMS_LOGMNR.NO_SQL_DELIMITER Option 을사용합니다. 출력된 Data 구성은재구성된 SQL 문장이많은 Columns 을포함하여읽기가어려울경우, LogMiner 는 DBMS_LOGMNR.PRINT_PRETTY_SQL Option 을사용하여해결할수있습니다. 예제 ) insert into "SCOTT"."EMP" values "EMPNO": 5505, "ENAME": "Parker", "SAL": 9000, "DEPTNO": NULL; Redo Logs 로부터 LogMiner Data 추출은 DBMS_LOGMNR.MINE_VALUE 와 DBMS_LOGMNR.COLUMN_PRESENT 의두함수에의해서수행되며, 이두함수는 DBMS_LOGMNR Package 의일부입니다. V$LOGMNR_CONTENTS View 의 REDO_VALUE, 와 UNDO_VALUE Column 에의해제공된 Mine 함수를지원합니다. DBMS_LOGMNR.MINE_VALUE 와 DBMS_LOGMNR.COLUMN_PRESENT 함수들은 V$LOGMNR_CONTENTS 의 Column 값보다더상세한분석을위해서 Redo Log 파일로부터실제데이타접근을위한함수입니다. MINE_VALUE 함수예제 ). WHERE OPERATION = UPDATE AND DBMS_LOGMNR.COLUMN_PRESENT(REDO_VALUE, SCOTT.EMP.SAL ) = 1 AND DBMS_LOGMNR.COLUMN_PRESENT(UNDO_VALUE, SCOTT.EMP.SAL ) = 1 AND (DBMS_LOGMNR.MINE_VALUE(REDO_VALUE, 'SCOTT.EMP.SAL ) > DBMS_LOGMNR.MINE_VALUE(UNDO_VALUE, 'SCOTT.EMP.SAL ));

17 Features (3) MINE_VALUE 함수로부터 NULL 반환 반환된 Data 선별 - Commit 된 Transaction 만출력 SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.COMMITTED_DATA_ONLY); - 시간기준으로선별 - SCN 기준으로선별 MINE_VALUE 함수가 NULL 값을반환한다면명시한 Column 이 Redo 나 Undo 에존재하지않거나있지만 NULL 값을가진경우이며, 이것을구분하기위해서 DBMS_LOGMNR.COLUMN_PRESENT 함수를사용합니다. DBMS_LOGMNR.COLUMN_PRESENT 함수를사용하여 1 이출력되면 Redo 또는 Undo 에해당 Column 이존재하는경우이며, 0 이출력되면존재하지않는경우입니다. MINE_VALUE 함수NULL 값반환예제 Select * from V$logmnr_contents WHERE OPERATION = 'UPDATE' AND DBMS_LOGMNR.MINE_VALUE(REDO_VALUE, 'HR.EMPLOYEES.SALARY') > DBMS_LOGMNR.MINE_VALUE(UNDO_VALUE, 'HR.EMPLOYEES.SALARY'); 위와같이조회시에조건에맞는값이없다면 WHERE OPERATION = 'UPDATE' AND DBMS_LOGMNR.COLUMN_PRESENT(REDO_VALUE, 'HR.EMPLOYEES.SALARY') = 1 AND DBMS_LOGMNR.COLUMN_PRESENT(UNDO_VALUE, 'HR.EMPLOYEES.SALARY') = 1; COLUMN_PRESENT 함수사용으로 Redo 또는 Undo 에값이존재여부확인 V$LOGMNR_CONTENTS View 에반환된정보의선별과추출성능에관련된몇가지방법을사용할수있습니다. 이기능은 LogMiner 기동시명시해야합니다. 이기능을사용하면단지 Commit 된 Transactions 만 V$LOGMNR_CONTENTS View 에출력되며, Rollback 된 Transactions, 진행중인 Transactions, 내부 Operations 을제외합니다. 활성화하려면 LogMiner 기동시명시해야합니다. SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(OPTIONS => DBMS_LOGMNR.COMMITTED_DATA_ONLY);

18 Features (4) Redo Corruptions Skip - 기동시 SKIP_CORRUPTION 을사용하여 Skip - Corrupt 된 Redo 을만날때관련정보출력 -Skip 된 Records 는진행중인 Transactions 은반영되지않음 - Corruption 시비정상종료방지 DBMS_LOGMNR.START_LOGMNR 에 SKIP_CORRUPTION Option 을사용하면, Redo Logs 파일의 Corruptions 발생후 V$LOGMNR_CONTENTS View 조회시 Corruption 을 Skip 할수있습니다. Corrupt 된 Redo 을만날때마다 OPERATION Column 에 CORRUPTED_BLOCKS 란값을출력하며, STATUS Column 에 1343 을출력하고, INFO Column 의 Blocks 번호는 Skip 됩니다. Skip 된 Records 는 Corrupt 된 Blocks 중에진행중인 Transactions 의변경정보를포함할수있으며, 이변경은 V$LOGMNR_CONTENTS View 의 Data 에반영이되지않습니다. 사용목적은 Redo Log 파일에서처음 Corruption 을만났을때비정상종료되는것을막기위한것입니다. 다음은 Redo Corruptions Skip 예제로원하는 Redo Log 파일들을 SKIP_CORRUPTION Option 설정없이추가합니다. SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE(logfilename => /usr/oracle/data/db1arch_1_16_ log' options => DBMS_LOGMNR.NEW); SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(); SQL> SELECT operation, status FROM V$LOGMNR_CONTENTS; ERROR at line 3: ORA-00368: checksum error in redo log block ORA-00353: log corruption near block 6 change time 11/06/2002 ORA-00334: archived log: /usr/oracle/data/dbarch1_16_ log - LogMiner 을재기동후 SKIP_CORRUPTION Option 을명시합니다. SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(options => DBMS_LOGMNR.SKIP_CORRUPTION); SQL> SELECT operation, status, info FROM V$LOGMNR_CONTENTS; OPERATION STATUS INFO CORRUPTED_BLOCKS 1343 corrupt blocks 4 to 19 skipped

19 LogMiner Options 요약 DICT_FROM_ONLINE_CATALOG DICT_FROM_REDO_LOGS CONTINUOUS_MINE (Time and SCN range Scan) COMMITTED_DATA_ONLY SKIP_CORRUPTION NO_SQL_DELIMITER PRINT_PRETTY_SQL STARTIME, ENDTIME STARSCN, ENDSCN 위의항목들은 DBMS_LOGMNR.START_LOGMNR 에명시할수있는 Option Parameter 들입니다. 10g 에서 CONTINUOUS_MINE 에확장된기능이추가되었습니다. 9.2 버전에서소개된 CONTINUOUS_MINE 은사용하기전에 DBMS_LOGMNR.ADD_LOGFILE 을사용하여해당세션에서최소한하나의 Archive Logfile 을직접추가해주어만했지만, 10g 는최소한 START_TIME 과 START_SCN Parameter 만으로사용이가능합니다. 이것은 LogMiner 가 Controlfile 을읽어서요청한시간과 SCN 을만족하는 Archive Logfile 을자동으로결정합니다. CONTINUOUS_MINE Option 과 END_TIME,END_SCN 을같이사용할경우에 SQL*PLUS 세션에 'SET ARRAYSIZE 1' 을사용해야합니다. 그렇지않으면 SQL 내부버퍼에 Full 이발생하면서 V$logmnr_contents 조회시 Hang 현상이나타날수있습니다.

20 예제 ) A. 현재부터 2 시간동안 SCOTT.EMP Table 의변경 (username, operation) 을추적합니다. SQL> EXEC DBMS_LOGMNR.START_LOGMNR(- > STARTTIME => SYSDATE, - > ENDTIME => SYSDATE + 2/24, - > OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + - > DBMS_LOGMNR.CONTINUOUS_MINE); SQL> SET ARRAYSIZE 1; SQL> SELECT username,operation FROM v$logmnr_contents WHERE seg_owner='scott' AND table_name='emp'; Logs 생성후자동으로 LogMiner 세션에 Archive File 을자동으로추가하고, 위의문장을출력합니다. B. 2 시간전부터종료시간은정하지않는동안 SCOTT.EMP Table 의변경 (username, operation) 을추적합니다. (Records 는 DML 이생성되면서계속출력합니다.) SQL> EXEC DBMS_LOGMNR.START_LOGMNR( STARTTIME => SYSDATE - 2/24, - > OPTIONS => DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG + - > DBMS_LOGMNR.CONTINUOUS_MINE); SQL> SET ARRAYSIZE 1; SQL> SELECT username,operation FROM v$logmnr_contents WHERE seg_owner='scott AND table_name='emp'; 참고 : LogMiner 에 ENDTIME 만명시하는것은정상적인사용법이아니며, 최소한 STARTTIME 은연속적인 Mining 을위한최소요구사항입니다.

21 Supplemental Logging (1) Application 의추가Column 정보필요성 - Application 의필요 - Database 의 ROWID 이동성 - 전체 Row 의변경값추적 Supplemental Logging 기능은 이하사용불가 9.2 와 10g 는 Default 로 Supplemental Logging 기능지원 Instance 와 Media Recovery 을위한 Data 는 Redo Log 파일들에자동기록되지만, Redo를참조하려는 Application 들은 Redo Log 파일에기록되어야하는추가 Columns 들이필요할수있습니다 버전의 Supplemental Logging 기능은 이하의모든버전에서사용할수없습니다. LogMiner 기능전체를사용하고자한다면 Supplemental Logging 기능을활성화해야합니다. 추가 Columns 들이필요하게되는상황은다음과같습니다. 다른 Database 에재구성된 SQL 문장을적용하려는 Application 은 V$LOGMNR_CONTENTS View 에서출력된재구성문장이 ROWID 가아닌 Primary Key 와같이 Unique 하게확인할수있는 Columns Set 에의해서 Update 문장을확인해야할경우 Database 의 ROWID 는또다른 Database 에는값이다르며의미가없을경우 Application 은단지수정된 Columns 이아닌기록된전체 Row 의 Before-Image 가필요할수있으며, Row 값의변경을추적하는것이더중요할수있을경우가있습니다. 이기능은 9i 버전에서는 DML 의일부분으로실제변경되지않은 Columns 정보를기록하는기능으로다른 Database 에 Tables Copys 본을유지하는데유용합니다. 9i 이전에는 LogMiner 는 WHERE 절의 ROWID 값으로 Columns 의변경과 Row 확인작업을하였지만, ROWIDs 는다른 Database 에서는의미가없었습니다. 그래서다른 Database 에서 LogMiner 을사용하여 SQL 추출이가능하지않았으며, ROWID 는 V$LOGMNR_CONTENTS.sql_red 포함되었지만필요하면삭제될수도있었습니다.

22 Supplemental Logging (2) Supplemental Log Groups 두가지유형 - 비조건적 Supplemental Log Groups - 조건적 Supplemental Log Groups Log Groups 은 System 자동또는 User 정의생성 - Database-Level Supplemental Logging - Table-Level Supplemental Logging 비조건적 Supplemental Log Groups 은명시된 Columns 의 Before-Images 는 Row 가 Update 될때마다기록되며, Update 는지정된 Columns 과관련없이기록됩니다. 이것은 Log Group 에연속적으로참조됩니다. 조건적 Supplemental Log Groups 은지정된모든 Columns 의 Before Images 는 Log Group 이적어도하나의 Columns 이 Update 가될경우에만기록이됩니다. Log Groups 은 System 자동또는 User 정의로생성될수있으며, Supplemental Logging 유형에는 Database-Level Supplemental Logging 과 Table-Level Supplemental Logging Level 이있습니다. 최소의 Supplemental Logging 은 LogMiner 가 DML 변경과관련된 Redo Operations 을확인하고, 그룹화하고, 통합하기위해필요한최소량의정보를기록합니다. Cluster Tables 과같이 Chained Rows 와다양한 Storage 정렬을지원하기위한충분한정보획득을보장합니다. 최소의 Supplemental Logging 을활성화하기위한문장은다음과같습니다. SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;

23 Supplemental Logging (3) Supplemental Logging 의제약사항 - Index clusters, Chained rows 와 Migrated rows - Direct-path inserts (ARCHIVELOG mode 활성화되어있어도지원불가 ) - LogMiner Dictionary 을 Redo Log 파일들로추출 - DDL 추적 - 검증키정보를가진 SQL_REDO 와 SQL_UNDO 생성 - LONG 과 LOB Datatypes Row Chaining 은단일테이블상의특정 Row 의길이가증가해서더이상동일한 Data Block 에들어갈수없을때발생합니다. 이때 RDBMS 는또다른 Data Block 을찾습니다. 이 Data Block 은원래 Block 과연결되어있으며이것을 Chained Rows 라고합니다. 이경우 Data Block 이하나의 I/O 작업과동일한양을수행하기위해두개의 I/O를사용해야한다는점에서데이터베이스성능을빠르게약화시킬수있습니다. Data Block 상의하나의 Row 는길이가증가하면서갱신되며, Block 의 Freespace 가 0 % 일때, Row 는 Migration 이발생합니다. 전체 Row 가들어갈만한크기의새로운 Block 에 Row 에대한 Data 가 Migration 되며이것을 Migrated Rows 라고합니다. 이경우도 Row 에대한정보를가져오기위해하나이상의 Data Block을반드시읽어야하므로 I/O 성능이저하됩니다.

24 Database Level 검증키 Logging(1) SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; PRIMARY KEY 는비조건적인 Supplemental Log Group 으로 System 에서자동생성된다. Table 에 Primary Key 가없지만, Non-Null Unique Index Key 조건또는 Index Keys 을하나또는두개이상을가지고있다면, Unique Index Keys 중하나가변경된 Row 을유일하게확인하는수단으로선택된다. Table 이 Primary Key 와 Non-Null Unique Index Key 모두없을경우에는 LONG 이나 LOB 을제외한모든 Columns 이추가적으로기록되며, 이것은그 Row 을위해ALL Supplemental Logging 을명시한것과동일하다.

25 Database Level 검증키 Logging(2) Oracle 은 Database-Level Primary Key 을위한 Supplemental Logging 을할경우, 모든또는대부분의 Tables 들을 Primary 또는 Unique Index Keys 설정을권고한다. Database Level Primary Key Logging 을활성화 SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; Unique Index 조건적 Supplemental Log Group 활성화 SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS; Foreign Key 조건적 Supplemental Log Group 활성화 SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY ) COLUMNS; Database Level 검증키 Logging Database Level Supplemental Logging 은 Primary Keys 기록을지정할수있으며, Unique Indexes 또는두가지모두지정이가능합니다. 이기능이활성화되면, DML 이수행될때마다, Primary Keys 나 Unique Indexes 와관련된 Columns 이 DML 과관련이없더라도기록이됩니다. Primary Keys 와 Unique Indexes 모두를위한 Database Level Supplemental Logging 을다음과같이실행합니다. SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY, UNIQUE INDEX) COLUMNS; 위의실행은아직 Parse 가되지않은문장에만영향을주며, Cursor Cache 영역의모든 DML Cursors 을 Invalid 상태로놓기때문에 Cache 을다시 Valid 할때까지성능이저하될수있습니다.

26 1. EMPID 라는 Primary Key 을가진 EMP Table 이있습니다. --> Primary Key Columns 에대한 Supplemental Logging 이활성화되었다면, EMP Table 에어떠한문장도 EMPID Column 을기록합니다. SQL> select * from emp; EMPID SAL SQL> update emp set sal=150000; 1 row updated. Supplemental Logging 이설정되지않은 V$LOGMNR_CONTENTS.sql_redo 은다음과같습니다. SQL> update "SCOTT"."EMP" set "SAL" = '150000' where "SAL" = '100000' and ROWID ='AAABOaAABAAANZ/AAA'; 이전에 test_always 란 Log Group 으로설정이되어있다면다음과같습니다. SQL> update "SCOTT"."EMP" set "SAL" = '150000' where "EMPID" = '10' and "SAL" ='100000' and ROWID = 'AAABOaAABAAANZ/AAA'; 2. Database Level Supplemental Logging 을비활성화하는문장은다음과같습니다. SQL> ALTER DATABASE DROP SUPPLEMENTAL LOG DATA;

27 Table Level 검증키 Logging SQL> ALTER TABLE HR.EMPLOYEES ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; 위의문장을실행할경우, Database 의 Table 에하나의 Column 이변경되면, LOBs, LONGs 와 ADTs 을제외한그 Column 을포함하는모든 Row 는 Redo Log 파일에기록된다. 사용자정의비조건적 Supplemental Log Groups SQL> ALTER TABLE HR.EMPLOYEES ADD SUPPLEMENTAL LOG GROUP emp_parttime (EMPLOYEE_ID, LAST_NAME, DEPARTMENT_ID) ALWAYS; 사용자정의조건적 Supplemental Log Groups SQL> ALTER TABLE HR.EMPLOYEES ADD SUPPLEMENTAL LOG GROUP emp_fulltime (EMPLOYEE_ID, LAST_NAME,DEPARTMENT_ID); Table Level 검증키 Logging Table Level Supplemental Logging 은사용자가 Log Groups 을정의하고 Redo 변화중에어느 Columns 을항상기록할지지정할수있으며, 이것은 Table 대 Table 기준으로수행됩니다. ALWAYS 키워드는하나의 Row 가 Update 되면, 그 Group 의모든 Columns 들이기록되게할때사용하며, 만일 ALWAYS 가기술되지않으면, Group 의 Columns 들중에적어도하나가 Update 될때해당 Columns 들이기록됩니다.

28 CREATE TABLE 또는 ALTER TABLE 문장을사용하여 Log Group 을정의합니다. 1. Log Group 을가진 Table 을생성합니다. SQL> CREATE TABLE test_log(c1 number, c2 number, c3 number, SUPPLEMENTAL LOG GROUP test_always(c1,c2) always); SQL> select * from test_log; C1 C2 C Log Group 에속하지않은 Column 을변경합니다. SQL> update test_log set c3=99; 1 row updated. Table Level Supplemental Logging 이없을경우, v$logmnr_contents.sql_redo 은다음과같습니다. SQL> update "SCOTT"."TEST_LOG" set "C3" = '99' where "C3" = '3' and ROWID = 'AAABOZAABAAANZ6AAA'; 이전에 test_always Log Group 으로설정이되었다면, v$logmnr_contents.sql_redo 은다음과같습니다. SQL> update "SCOTT"."TEST_LOG" set "C3" = '99' where "C1" = '1' and "C2" = '2' and "C3" = '3' and ROWID = 'AAABOZAABAAANZ6AAA'; 3. 또다른 Log Group 을정의합니다. SQL> alter table test_log add supplemental log group test_sometimes(c1,c2); 4.1 Log Group 에속한 Column 을변경합니다. SQL> update test_log set c2=10; 1 row updated. v$logmnr_contents.sql_redo 은다음과같습니다. SQL> update "SCOTT"."TEST_LOG" set "C2" = '10' where "C1" = '1' and "C2" = '2' and ROWID = 'AAABLtAABAAANYgAAA'; 4.2 Log Group 에속하지않은 Column 을변경합니다. ( 어떠한정보도기록되지않습니다.) 5. Log Groups 을위한두가지의 View 을제공합니다. ALL_/USER_/DBA_LOG_GROUPS - Table 에관한 Group 정의를기록정보입니다. ALL_/USER_/DBA_LOG_GROUP_COLUMNS - Log Group 에명시된 Columns 정보입니다. 6. Log Group 삭제하려면 ALTER TABLE 문장입니다. SQL> ALTER TABLE test_log DROP SUPPLEMENTAL LOG GROUP test_always;

29 제약사항 지원되지않는 Objects (1) Oracle 8i - Index-organized tables - Clustered tables/indexes - Non-scalar data types - direct path insert operations Oracle 9i - Simple and nested abstract datatypes (ADTs) - Collections (nested tables and VARRAYs) - Object Refs - Index organized tables (IOTs) -Cluster Key 값을가진 CTAS Table (CREATE TABLE AS SELECT ) Index Organized Talbe(IOT) 는 Oracle 8 에서처음소개된새로운 object이입니다. IOT 는 Table Data 를 Primary Key 에대한 B*Tree Index 에적재하는구조를갖습니다. IOT 의 Index Row 들은인덱스키값과 Non-Key 값을포함하며, Index 에는 ROWID 정보가없습니다. IOT 의장점은 Range Search, Exact Match를수행하는경우일반적인 Table 보다빠른 Key-Based Access 가가능하며, Full Table Scan 시 Primary Key 에대한 Full Index Scan이이루어지므로자동적인 Ordering 이이루어집니다. 또한 Index Key Column 과 Rowid 에대한 Storage 중복을피할수있어 Storage 가절약됩니다. Clustered Tables 란여러테이블들에공통되는 Column 이있을때그컬럼의데이타는공유하면서나머지 Table 의 Row 들을하나의 Block 에기록하는저장방법을말한다. 이것은다른테이블의 Row 들을하나의 Block 에저장하므로 Clustered table 간의 Join 속도향상과 Cluster Key 는한번만저장되므로 Storage 의향상됩니다. Clustered Indexes 란 Cluster 생성후 Cluster Key 값에대한 Index Entry 값을생성하는것을말합니다. Non-Scalar Data Types 이란실수로표현할수없은 Datatype 즉 Varchar2, Char, Date 등을제외한 Long, Long Raw, Lob(Clob, Blob,NClob) 등을말하며, 10g 버전에서는지원이됩니다. Direct Path Insert Operations 란 SGA 의 Buffer Cache 를거치지않고직접 Oracle Data 를구성하고입력하는방법으로, 이기능은 SQL*Loader 의 Direct Load 와비슷한기능입니다. 이방법은 Undo Entry 를생성하지않으므로기본 Insert 보다속도가빠르며, Serial 과 Parallel Mode 를둘다사용할수있습니다.

30 [ 예제 1] APPEND hint의사용 SQL> insert /*+ APPEND */ into emp select * from t_emp; SQL> commit; direct insert 후에바로 select 를하기전에먼저 commit; 을해야 data 를확인할수있습니다. [ 예제2] PARALLEL hint의사용 SQL> alter session enable parallel dml; SQL> insert /*+ PARALLEL(emp,10) */ into emp select /*+ PARALLEL(t_emp,10) */ * from t_emp; SQL> commit; 위와같이 Direct Path Insert 는대량의데이타를한꺼번에입력하는경우에사용하는것이좋습니다. LogMiner 는 Database 에정보가있다고하더라도 Direct Path Insert 에대한사항은다루지않습니다. Simple and nested abstract datatypes (ADTs) 은 User 가정의한추상 Datatype 을말합니다. Collections (nested tables and VARRAYs) 은 ORACLE 8 이상부터 nested table 과 varray 라는두가지집합 Type 을말합니다. 집합 (collections) 은 3GL program 에서 Array 와같이작용하며, 다른점이라면 1차원밖에는제공되지않으며, integer 값에의해 indexing 될수있습니다. NESTED TABLE 은 TABLE TYPE의 item 을 nested table 이라고부르며, nested table 은복수개의column을포함할수있으며, variable, parameter, result, attribute, column으로사용될수있습니다. VARRAY 는또다른 TYPE VARRAY 이며, VARRAY 의 maximum size는 define시에지정한값으로결정됩니다. Object Refs 는오브젝트을참조할수있는값을가진데이터타입을말합니다.

31 제약사항 지원되지않는 Objects (2) Oracle 10g - BFILE, XMLTYPE datatype - Simple and nested abstract datatypes (ADTs) - Collections (nested tables and VARRAYs) - Object refs - Index-organized tables (IOTs) with LOB columns - Tables using table compression ( 압축기능 ) 9.2 버전또는그상위버전에서생성된 Redo Log 파일을사용하면 LOB 과 LONG Datatypes 이지원됩니다. LogMiner 는 Unsupported Datatypes 과 Table Storage 속성은지원하지않습니다.

32 LogMiner 관련 Views V$LOGMNR_CONTENTS -SQL_REDO -SQL_UNDO V$LOGMNR_DICTIONARY V$LOGMNR_LOGS V$LOGMNR_PARAMETERS V$LOGMNR_CONTENTS - Insert, Update, Delete 와 DDL 과같은작업이수행되면변경이된다. - SCN : SCN Column 에의해서변경된다. - Commit_SCN : Commit_SCN 에의해서변경된다. - XIDUSN, XIDSLT 와 XIDSQN : Transaction 에의해서변경된다. - Table, Schema, Username - SQL_REDO : Redo Records 을생성하는 SQL 문장과동일한재생성문장이다. - SQL_UNDO : 변경을 Undo 하기위해서필요한 SQL 문장을보여주는재생성문장이며, DDL 은 NULL 로표시된다. - SEG_OWNER - SEG_NAME - ROW_ID - TABLESPACE 등

33 일반적인 LogMiner 수행단계 1. Supplemental Logging 활성화 2. LogMiner Dictionary 추출 (Online Catalog 을사용하지않음 ) 3. 분석을위한 Redo Log 지정 4. LogMiner 기동 5. V$LOGMNR_CONTENTS 조회 6. LogMiner Session 종료 SQL> EXECUTE SYS.DBMS_LOGMNR.END_LOGMNR; 1. LogMiner 는 Mount 나 Open Database Mode 에서사용이가능합니다. 2. Redo Log 파일들의 List 을생성하고, New List 의시작을알리기위하여 DBMS_LOGMNR.ADD_LOGFILE Procedure 에 New Option 을명시합니다. SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME => '/oracle/logs/log1.f', OPTIONS => DBMS_LOGMNR.NEW); 3. 필요하다면 DBMS_LOGMNR.ADD_LOGFILE Procedure 의 ADDFILE Option 을명시하여더많은 Redo Log 파일들을추가합니다. SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME => '/oracle/logs/log2.f', OPTIONS => DBMS_LOGMNR.ADDFILE); 이 Options Parameter 는추가 Redo Log 파일들을추가할때필요한 Log 를선택적으로사용하며, 다음과같이사용할수있습니다. SQL> EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME=> '/oracle/logs/log2.f'); 4. 10g 버전에서는원하면다음과같이 DBMS_LOGMNR.REMOVE_LOGFILE Procedure 을사용하여 /oracle/logs/log2.f Redo Log 파일을 List 에서삭제할수있습니다. SQL> EXECUTE DBMS_LOGMNR.REMOVE_LOGFILE(LOGFILENAME => '/oracle/logs/log2.f');

34 5. LogMiner 기동하고, LogMiner Dictionary 파일을생성하고, 분석할 Redo Log 파일들을명시한후, 다음과같은단계로 LogMiner 을기동해야합니다. Oracle 은 LogMiner Dictionary Option 을명시하는것을권고하며, 명시하지않을경우, 내부 Object 확인자, Object 이름의 Datatypes 과외부 Data Formats 을해석할수없는내부 Object IDs와 Hex Data 값으로현재의 Data 가출력됩니다. 추가로 MINE_VALUE 와 COLUMN_PRESENT 함수들은 Dictionary 없이사용할수없습니다. SQL> EXECUTE DBMS_LOGMNR.START_LOGMNR(DICTFILENAME =>'/oracle/database/dictionary.ora'); 6. V$LOGMNR_CONTENTS 을통하여추출한 Rows 들을조회할수있습니다. 7. LogMiner Session 을다음과같이종료합니다. LogMiner Packages 들은 SYS Schema 소유이며, SYS 로접속되어있지않다면다음과같이실행을한다. SQL>EXECUTE DBMS_LOGMNR.START_ENDMNR

35 참조자료 Oracle8i Administrator's Guide Chapter-7 : Managing Archived Redo Logs Topic : Using LogMiner to Analyze Online and Archived Redo Logs Oracle9i Release 2 (9.2) Database Administrator's Guide Chapter-9 Using LogMiner to Analyze Redo Logs Oracle10g Database Utilities Part IV : Other Utilities, Chapter : 19 Using LogMiner to Analyze RedoLogs 본세미나자료는다음의자료들을참조하여작성되었습니다. 기타상세한설명이필요한경우에참조해서확인해보실수있습니다.

목 차

목      차 Oracle 9i Admim 1. Oracle RDBMS 1.1 (System Global Area:SGA) 1.1.1 (Shared Pool) 1.1.2 (Database Buffer Cache) 1.1.3 (Redo Log Buffer) 1.1.4 Java Pool Large Pool 1.2 Program Global Area (PGA) 1.3 Oracle

More information

Microsoft Word - 기술노트[23회] Logminer.doc

Microsoft Word - 기술노트[23회] Logminer.doc Goodus 기술노트 [23 회 ] Logminer Author 서강혁, 정철우 Creation Date 2007-08-30 Last Updated 2007-08-30 Version 1.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자 변경자 ( 작성자 ) 주요내용 1 2007-08-30 서강혁,

More information

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE ALTIBASE HDB 6.3.1.10.1 Patch Notes 목차 BUG-45710 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG-45730 ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG-45760 ROLLUP/CUBE 절을포함하는질의는 SUBQUERY REMOVAL 변환을수행하지않도록수정합니다....

More information

13주-14주proc.PDF

13주-14주proc.PDF 12 : Pro*C/C++ 1 2 Embeded SQL 3 PRO *C 31 C/C++ PRO *C NOT! NOT AND && AND OR OR EQUAL == = SQL,,, Embeded SQL SQL 32 Pro*C C SQL Pro*C C, C Pro*C, C C 321, C char : char[n] : n int, short, long : float

More information

FlashBackt.ppt

FlashBackt.ppt 1. Flashback 목적 Flashback 이란? 사용자실수에의한손상된데이터를 Database 의크기와상관없이복구를할수있는기능이다. 이 Flashback 기능은일반적인복구에서우려되는데이터베이스의크기를걱정하지않아도된다. 보통의사용자실수는커다란시스템장애가수반되며, 이를복구하기위해서는많은자원과시간이필요하다. 하지만 9i 에서지원되느 flashback query

More information

MS-SQL SERVER 대비 기능

MS-SQL SERVER 대비 기능 Business! ORACLE MS - SQL ORACLE MS - SQL Clustering A-Z A-F G-L M-R S-Z T-Z Microsoft EE : Works for benchmarks only CREATE VIEW Customers AS SELECT * FROM Server1.TableOwner.Customers_33 UNION ALL SELECT

More information

歯sql_tuning2

歯sql_tuning2 SQL Tuning (2) SQL SQL SQL Tuning ROW(1) ROW(2) ROW(n) update ROW(2) at time 1 & Uncommitted update ROW(2) at time 2 SQLDBA> @ UTLLOCKT WAITING_SESSION TYPE MODE_REQUESTED MODE_HELD LOCK_ID1

More information

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate ALTIBASE HDB 6.1.1.5.6 Patch Notes 목차 BUG-39240 offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG-41443 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate 한뒤, hash partition

More information

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r -------------------------------------------------------------------- -- 1. : ts_cre_bonsa.sql -- 2. :

More information

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O Orange for ORACLE V4.0 Installation Guide ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE...1 1....2 1.1...2 1.2...2 1.2.1...2 1.2.2 (Online Upgrade)...11 1.3 ORANGE CONFIGURATION ADMIN...12 1.3.1 Orange Configuration

More information

Oracle Database 10g: Self-Managing Database DB TSC

Oracle Database 10g: Self-Managing Database DB TSC Oracle Database 10g: Self-Managing Database DB TSC Agenda Overview System Resource Application & SQL Storage Space Backup & Recovery ½ Cost ? 6% 12 % 6% 6% 55% : IOUG 2001 DBA Survey ? 6% & 12 % 6% 6%

More information

Microsoft Word - 기술노트[23회]_Logminer_1.1

Microsoft Word - 기술노트[23회]_Logminer_1.1 Goodus 기술노트 [23 회 ] Logminer Author 서강혁, 정철우 Creation Date 2007-08-30 Last Updated 2007-08-30 Version 1.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자 변경자 ( 작성자 ) 주요내용 1 2007-08-30 서강혁,

More information

Tablespace On-Offline 테이블스페이스 온라인/오프라인

Tablespace On-Offline 테이블스페이스 온라인/오프라인 2018/11/10 12:06 1/2 Tablespace On-Offline 테이블스페이스온라인 / 오프라인 목차 Tablespace On-Offline 테이블스페이스온라인 / 오프라인... 1 일반테이블스페이스 (TABLESPACE)... 1 일반테이블스페이스생성하기... 1 테이블스페이스조회하기... 1 테이블스페이스에데이터파일 (DATA FILE) 추가

More information

PowerPoint Presentation

PowerPoint Presentation FORENSIC INSIGHT; DIGITAL FORENSICS COMMUNITY IN KOREA SQL Server Forensic AhnLab A-FIRST Rea10ne unused6@gmail.com Choi Jinwon Contents 1. SQL Server Forensic 2. SQL Server Artifacts 3. Database Files

More information

Simplify your Job Automatic Storage Management DB TSC

Simplify your Job Automatic Storage Management DB TSC Simplify your Job Automatic Storage Management DB TSC 1. DBA Challenges 2. ASM Disk group 3. Mirroring/Striping/Rebalancing 4. Traditional vs. ASM 5. ASM administration 6. ASM Summary Capacity in Terabytes

More information

DBMS & SQL Server Installation Database Laboratory

DBMS & SQL Server Installation Database Laboratory DBMS & 조교 _ 최윤영 } 데이터베이스연구실 (1314 호 ) } 문의사항은 cyy@hallym.ac.kr } 과제제출은 dbcyy1@gmail.com } 수업공지사항및자료는모두홈페이지에서확인 } dblab.hallym.ac.kr } 홈페이지 ID: 학번 } 홈페이지 PW:s123 2 차례 } } 설치전점검사항 } 설치단계별설명 3 Hallym Univ.

More information

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터

Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터 Bind Peeking 한계에따른 Adaptive Cursor Sharing 등장 엑셈컨설팅본부 /DB 컨설팅팀김철환 Bind Peeking 의한계 SQL 이최초실행되면 3 단계의과정을거치게되는데 Parsing 단계를거쳐 Execute 하고 Fetch 의과정을통해데이터를사용자에게전송하게되며 Parsing 단계에서실행계획이생성된다. Bind 변수를사용하는 SQL

More information

세미나(장애와복구-수강생용).ppt

세미나(장애와복구-수강생용).ppt DB PLAN Consultant jina6678@yahoo.co.kr 011-864-1858 - - 1. 2. DB 3. - 4. - 5. 6. 1 INSTANCE MMAN RECO RFS MRP ORBn RBAL MMON Dnnn Snnn Data Buffer Cache SGA Stream Pool Shared pool Large Pool PGA Log

More information

The Self-Managing Database : Automatic Health Monitoring and Alerting

The Self-Managing Database : Automatic Health Monitoring and Alerting The Self-Managing Database : Automatic Health Monitoring and Alerting Agenda Oracle 10g Enterpirse Manager Oracle 10g 3 rd Party PL/SQL API Summary (Self-Managing Database) ? 6% 6% 12% 55% 6% Source: IOUG

More information

最即時的Sybase ASE Server資料庫診斷工具

最即時的Sybase ASE Server資料庫診斷工具 TOAD 9.5 Toad Oracle 料 SQL 料 行 理 SQLprofile Quest Software 了 Oracle -Toad Tools of Oracle Application Developers Toad 了 DBA DBA 理 易 度 Toad 料 SQL PL/SQL Toad Oracle PL/SQL Toad Schema Browser Schema Browser

More information

untitled

untitled PowerBuilder 連 Microsoft SQL Server database PB10.0 PB9.0 若 Microsoft SQL Server 料 database Profile MSS 料 (Microsoft SQL Server database interface) 行了 PB10.0 了 Sybase 不 Microsoft 料 了 SQL Server 料 PB10.0

More information

Jerry Held

Jerry Held DB / TSC Oracle Database 10g (Self-Managing Database) (Common Infrastructure) (Automatic Workload Repository) (Server-generated Alerts) (Automated Maintenance Tasks) (Advisory Framework) (ADDM) (Self-Managing

More information

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 ALTIBASE HDB 6.5.1.5.10 Patch Notes 목차 BUG-46183 DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG-46249 [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4 BUG-46266 [sm]

More information

강의 개요

강의 개요 DDL TABLE 을만들자 웹데이터베이스 TABLE 자료가저장되는공간 문자자료의경우 DB 생성시지정한 Character Set 대로저장 Table 생성시 Table 의구조를결정짓는열속성지정 열 (Clumn, Attribute) 은이름과자료형을갖는다. 자료형 : http://dev.mysql.cm/dc/refman/5.1/en/data-types.html TABLE

More information

PowerPoint Presentation

PowerPoint Presentation Server I/O utilization System I/O utilization V$FILESTAT V$DATAFILE Data files Statspack Performance tools TABLESPACE FILE_NAME PHYRDS PHYBLKRD READTIM PHYWRTS PHYBLKWRT WRITETIM ------------- -----------------------

More information

,, - - - : DELETE : ROW (ROWID) row ROWID : I/O Full Table Scan scan I/O scan Index Scan ROWID scan I/O Fast Full Index Scan scan scan I/O Unique, nonunique. (Concatenated Index) B* Tree Bitmap Reverse

More information

Jerry Held

Jerry Held ,, - - - : DELETE : ROW (ROWID) row ROWID : I/O Full Table Scan I/O Index Scan ROWID I/O Fast Full Index Scan scan scan scan I/O scan scan Unique, nonunique. (Concatenated Index) B* Tree Bitmap Reverse

More information

SQL Tuning Business Development DB

SQL Tuning Business Development DB SQL Tuning Business Development DB Oracle Optimizer 4.1 Optimizer SQL SQL.. SQL Optimizer :.. Rule-Based Optimization (RBO), Cost-Based Optimization (CBO) SQL Optimizer SQL Query Parser Dictionary Rule-Based

More information

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER

Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUER Result Cache 동작원리및활용방안 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 ORACLE DBMS 를사용하는시스템에서 QUERY 성능은무엇보다중요한요소중하나이며그 성능과직접적인관련이있는것이 I/O 이다. 많은건수를 ACCESS 해야만원하는결과값을얻을수있는 QUERY 을실행하게된다면 BLOCK I/O 가많이발생하게된다. 이런이유로 QUERY 의성능은좋지못할것이다.

More information

오라클 데이터베이스 10g 핵심 요약 노트

오라클 데이터베이스 10g 핵심 요약 노트 1 10g 10g SYSAUX 10g 22 Oracle Database 10g, 10g. 10g. (Grid), 10g.. 10g SYSAUX (ASM, Automatic Storage Management) 10g 10g. g. (DBA).,., 1).,..? 10g,.. (Larry Ellison).. (Leverage Components), (ASM) (

More information

Microsoft PowerPoint - Oracle Data Access Pattern.ppt

Microsoft PowerPoint - Oracle Data Access Pattern.ppt Special Key Note Oracle Data Access Pattern ( 주 ) 오픈메이드컨설팅 오동규수석컨설턴트 1 What is Data Access Pattern? > 데이터를 I/O 하는방식 Index Scan Full Table Scan Rowid 2 Why is The Pattern Important? >SQL 의성능을좌지우지함. >SQL

More information

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL 다양한예제로쉽게배우는 오라클 SQL 과 PL/SQL 서진수저 9 장인덱스를배웁니다 1 1. 인덱스란무엇인가? 2 - ROWID ( 주소 ) 조회하기 SCOTT>SELECT ROWID, empno, ename 2 FROM emp 3 WHERE empno=7902 ; ROWID EMPNO ENAME --------------------------------- ----------

More information

PRO1_02E [읽기 전용]

PRO1_02E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_02E1 Information and 2 STEP 7 3 4 5 6 STEP 7 7 / 8 9 10 S7 11 IS7 12 STEP 7 13 STEP 7 14 15 : 16 : S7 17 : S7 18 : CPU 19 1 OB1 FB21 I10 I11 Q40 Siemens AG

More information

MySQL-.. 1

MySQL-.. 1 MySQL- 기초 1 Jinseog Kim Dongguk University jinseog.kim@gmail.com 2017-08-25 Jinseog Kim Dongguk University jinseog.kim@gmail.com MySQL-기초 1 2017-08-25 1 / 18 SQL의 기초 SQL은 아래의 용도로 구성됨 데이터정의 언어(Data definition

More information

Microsoft Word - 기술노트[19회] Flashback.doc

Microsoft Word - 기술노트[19회] Flashback.doc Goodus 기술노트 [19 회 ] Flashback Author 권웅원, 나지혜 Creation Date 2007-04-25 Last Updated 2007-04-25 Version 1.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자 변경자 ( 작성자 ) 주요내용 1 2007-04-25 권웅원,

More information

62

62 2 instance database physical storage 2 1 62 63 tablespace datafiles 2 2 64 1 2 logical view control files datafiles redo log files 65 2 3 9i OMF Oracle Managed Files, OMF 9i 9i / / OMF 9i 66 8 1MB 8 10MB

More information

untitled

untitled (shared) (integrated) (stored) (operational) (data) : (DBMS) :, (database) :DBMS File & Database - : - : ( : ) - : - : - :, - DB - - -DBMScatalog meta-data -DBMS -DBMS - -DBMS concurrency control E-R,

More information

Microsoft Word - [Unioneinc] 특정컬럼의 통계정보 갱신_ _ldh.doc

Microsoft Word - [Unioneinc] 특정컬럼의 통계정보 갱신_ _ldh.doc 특정 Column 통계정보갱신가이드 유니원아이앤씨 DB 사업부이대혁 2015 년 03 월 02 일 문서정보프로젝트명서브시스템명 버전 1.0 문서명 특정 Column 통계정보갱신가이드 작성일 2015-03-02 작성자 DB사업부이대혁사원 최종수정일 2015-03-02 문서번호 UNIONE-201503021500-LDH 재개정이력 일자내용수정인버전 문서배포이력

More information

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins

InsertColumnNonNullableError(#colName) 에해당하는메시지출력 존재하지않는컬럼에값을삽입하려고할경우, InsertColumnExistenceError(#colName) 에해당하는메시지출력 실행결과가 primary key 제약에위배된다면, Ins Project 1-3: Implementing DML Due: 2015/11/11 (Wed), 11:59 PM 이번프로젝트의목표는프로젝트 1-1 및프로젝트 1-2에서구현한프로그램에기능을추가하여간단한 DML을처리할수있도록하는것이다. 구현한프로그램은 3개의 DML 구문 (insert, delete, select) 을처리할수있어야한다. 테이블데이터는파일에저장되어프로그램이종료되어도사라지지않아야한다.

More information

10.ppt

10.ppt : SQL. SQL Plus. JDBC. SQL >> SQL create table : CREATE TABLE ( ( ), ( ),.. ) SQL >> SQL create table : id username dept birth email id username dept birth email CREATE TABLE member ( id NUMBER NOT NULL

More information

Microsoft Word - SQL튜닝_실습교재_.doc

Microsoft Word - SQL튜닝_실습교재_.doc * 실습환경 * 1. 오라클데이터베이스의튜닝실습을하기위해서는기본적인테이블과데이터가필요합니다. 다음과같은절차에의해환경설정을하십시오. 1) 강사가제공하는 Export 된파일 (scott.dmp) 을자신의 ORACLE 경로에저장하십시오. [C: ] cd C: ORACLE ORA92 BIN [C: ] dir scott.dmp scott.dmp 2) SYSTEM 사용자로접속하여

More information

OPCTalk for Hitachi Ethernet 1 2. Path. DCOMwindow NT/2000 network server. Winsock update win95. . . 3 Excel CSV. Update Background Thread Client Command Queue Size Client Dynamic Scan Block Block

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Spider For MySQL 실전사용기 피망플러스유닛최윤묵 Spider For MySQL Data Sharding By Spider Storage Engine http://spiderformysql.com/ 성능 8 만 / 분 X 4 대 32 만 / 분 많은 DB 중에왜 spider 를? Source: 클라우드컴퓨팅구 선택의기로 Consistency RDBMS

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Reasons for Poor Performance Programs 60% Design 20% System 2.5% Database 17.5% Source: ORACLE Performance Tuning 1 SMS TOOL DBA Monitoring TOOL Administration TOOL Performance Insight Backup SQL TUNING

More information

ALTIBASE HDB Patch Notes

ALTIBASE HDB Patch Notes ALTIBASE HDB 6.5.1.5.6 Patch Notes 목차 BUG-45643 암호화컬럼의경우, 이중화환경에서 DDL 수행시 Replication HandShake 가실패하는문제가있어수정하였습니다... 4 BUG-45652 이중화에서 Active Server 와 Standby Server 의 List Partition 테이블의범위조건이다른경우에 Handshake

More information

Orcad Capture 9.x

Orcad Capture 9.x OrCAD Capture Workbook (Ver 10.xx) 0 Capture 1 2 3 Capture for window 4.opj ( OrCAD Project file) Design file Programe link file..dsn (OrCAD Design file) Design file..olb (OrCAD Library file) file..upd

More information

Microsoft PowerPoint - 10Àå.ppt

Microsoft PowerPoint - 10Àå.ppt 10 장. DB 서버구축및운영 DBMS 의개념과용어를익힌다. 간단한 SQL 문법을학습한다. MySQL 서버를설치 / 운영한다. 관련용어 데이터 : 자료 테이블 : 데이터를표형식으로표현 레코드 : 테이블의행 필드또는컬럼 : 테이블의열 필드명 : 각필드의이름 데이터타입 : 각필드에입력할값의형식 학번이름주소연락처 관련용어 DB : 테이블의집합 DBMS : DB 들을관리하는소프트웨어

More information

CD-RW_Advanced.PDF

CD-RW_Advanced.PDF HP CD-Writer Program User Guide - - Ver. 2.0 HP CD-RW Adaptec Easy CD Creator Copier, Direct CD. HP CD-RW,. Easy CD Creator 3.5C, Direct CD 3.0., HP. HP CD-RW TEAM ( 02-3270-0803 ) < > 1. CD...3 CD...5

More information

RDB개요.ppt

RDB개요.ppt 1 2 3 < > 1 SQL SQL 2 SQL 3 column DEPT DEPT# DNAME BUDGET D1 D2 D3 Marketing Development Research 10M 12M 5M tuple EMP EMP# ENAME DEPT# SALARY D1 40 D1 45 E1 E2 E3 Lopez Cheng Finzi D2 30 E4 Satio D2

More information

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL 다양한예제로쉽게배우는 오라클 SQL 과 PL/SQL 서진수저 6 장. DML 을배웁니다 1 - SQL 명령어들 DML (Data Manipulation Language) : INSERT( 입력 ), UPDATE( 변경 ), DELETE( 삭제 ), MERGE( 병합 ) DDL (Data Definition Language) : CREATE ( 생성 ), ALTER

More information

제목을 입력하세요.

제목을 입력하세요. 1. 4 1.1. SQLGate for Oracle? 4 1.2. 4 1.3. 5 1.4. 7 2. SQLGate for Oracle 9 2.1. 9 2.2. 10 2.3. 10 2.4. 13 3. SQLGate for Oracle 15 3.1. Connection 15 Connect 15 Multi Connect 17 Disconnect 18 3.2. Query

More information

NoSQL

NoSQL MongoDB Daum Communications NoSQL Using Java Java VM, GC Low Scalability Using C Write speed Auto Sharding High Scalability Using Erlang Read/Update MapReduce R/U MR Cassandra Good Very Good MongoDB Good

More information

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

@OneToOne(cascade = = addr_id) private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a 1 대 1 단방향, 주테이블에외래키실습 http://ojcedu.com, http://ojc.asia STS -> Spring Stater Project name : onetoone-1 SQL : JPA, MySQL 선택 http://ojc.asia/bbs/board.php?bo_table=lecspring&wr_id=524 ( 마리아 DB 설치는위 URL

More information

WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역

WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역 WINDOW FUNCTION 의이해와활용방법 엑셈컨설팅본부 / DB 컨설팅팀정동기 개요 Window Function 이란행과행간의관계를쉽게정의할수있도록만든함수이다. 윈도우함수를활용하면복잡한 SQL 들을하나의 SQL 문장으로변경할수있으며반복적으로 ACCESS 하는비효율역시쉽게해결할수있다. 이번화이트페이퍼에서는 Window Function 중순위 RANK, ROW_NUMBER,

More information

Data Guard 기본개념.doc

Data Guard 기본개념.doc Data Guard 개념 (9i R2 9.2.0.1) 김형일 HIKIM000@EMPAL.COM 1 목차 1. DataGuard 개념 3 1.1 Data Guard Architecture 3 1.2 DataGuard 장점 4 1.3 Switch over and Failover 5 1.4 Physical Standby 와 Logical Standby 5 2. Data

More information

oracle9i_newfeatures.PDF

oracle9i_newfeatures.PDF Oracle 9i .?.?.? DB.? Language.?.?.? (DW,OLAP,MINING,OLTP ) DB.?.? Technology Evolution High Availability Scalability Manageability Development Platform Business Intelligence Technology Evolution Technology

More information

thesis

thesis ( Design and Implementation of a Generalized Management Information Repository Service for Network and System Management ) ssp@nile nile.postech.ac..ac.kr DPE Lab. 1997 12 16 GMIRS GMIRS GMIRS prototype

More information

USER GUIDE

USER GUIDE Solution Package Volume II DATABASE MIGRATION 2010. 1. 9. U.Tu System 1 U.Tu System SeeMAGMA SYSTEM 차 례 1. INPUT & OUTPUT DATABASE LAYOUT...2 2. IPO 중 VB DATA DEFINE 자동작성...4 3. DATABASE UNLOAD...6 4.

More information

PRO1_09E [읽기 전용]

PRO1_09E [읽기 전용] Siemens AG 1999 All rights reserved File: PRO1_09E1 Information and - ( ) 2 3 4 5 Monitor/Modify Variables" 6 7 8 9 10 11 CPU 12 Stop 13 (Forcing) 14 (1) 15 (2) 16 : 17 : Stop 18 : 19 : (Forcing) 20 :

More information

ETL_project_best_practice1.ppt

ETL_project_best_practice1.ppt ETL ETL Data,., Data Warehouse DataData Warehouse ETL tool/system: ETL, ETL Process Data Warehouse Platform Database, Access Method Data Source Data Operational Data Near Real-Time Data Modeling Refresh/Replication

More information

Microsoft PowerPoint - Tech-iSeminar_Managing_Tablespace.ppt

Microsoft PowerPoint - Tech-iSeminar_Managing_Tablespace.ppt Tablespace 의관리 Getting the most out of MetaLink 최창권, 김주연 제품지원실한국오라클 ( 주 ) 한국오라클에서주최하는 Technical iseminar DATABASE의 tablespace 이해 에참석해주신여러분께감사드립니다. 저는한국오라클제품지원실에근무하는최창권입니다. 오늘세미나에서는 ORACLE database의논리적인저장소역할을하는

More information

Secure Programming Lecture1 : Introduction

Secure Programming Lecture1 : Introduction Malware and Vulnerability Analysis Lecture3-2 Malware Analysis #3-2 Agenda 안드로이드악성코드분석 악성코드분석 안드로이드악성코드정적분석 APK 추출 #1 adb 명령 안드로이드에설치된패키지리스트추출 adb shell pm list packages v0nui-macbook-pro-2:lecture3 v0n$

More information

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET 135-080 679-4 13 02-3430-1200 1 2 11 2 12 2 2 8 21 Connection 8 22 UniSQLConnection 8 23 8 24 / / 9 3 UniSQL 11 31 OID 11 311 11 312 14 313 16 314 17 32 SET 19 321 20 322 23 323 24 33 GLO 26 331 GLO 26

More information

TITLE

TITLE CSED421 Database Systems Lab MySQL Basic Syntax SQL DML & DDL Data Manipulation Language SELECT UPDATE DELETE INSERT INTO Data Definition Language CREATE DATABASE ALTER DATABASE CREATE TABLE ALTER TABLE

More information

ePapyrus PDF Document

ePapyrus PDF Document Goodus 기술노트 [38 회 ] Author 윤병길, 이은정 Creation Date 2009-02-27 Last Updated Version 1.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자변경자 ( 작성자 ) 주요내용 1 2009-02-27 윤병길, 이은정문서최초작성 Contents

More information

Microsoft Word - 05_SUBPROGRAM.doc

Microsoft Word - 05_SUBPROGRAM.doc ORACLE SUBPROGRAM INTRODUCTION PLSQL 은오라클에서제공하는프로그래밍언어이다. 이는데이터베이스언어인 SQL 과함께효과적으로데이터베이스에접근할수있는방법을제공하고있다. Procedural LanguageSQL 의약자에서볼수있듯이절차적인기능을기본적으로가지는프로그래밍언어이다. PLSQL 은기본적으로블록 (BLOCK) 구조를가지고있다. 블록의기본적인구성은선언부

More information

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자 SQL Developer Connect to TimesTen 유니원아이앤씨 DB 팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 2010-07-28 작성자 김학준 최종수정일 2010-07-28 문서번호 20100728_01_khj 재개정이력 일자내용수정인버전

More information

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager are trademarks or registered trademarks of Ari System, Inc. 1 Table of Contents Chapter1

More information

Commit_Wait / Commit_Logging 두파라미터를통해 Log File Sync 대기시간을감소시킬수있다는것은놀라움과의아함을동시에느낄수있다. 단지파라미터의수정을통해당연히대기해야하는시간을감축한다는것은분명성능을개선해야하는입장에서는놀라운일이될것이다. 반면, 그에따

Commit_Wait / Commit_Logging 두파라미터를통해 Log File Sync 대기시간을감소시킬수있다는것은놀라움과의아함을동시에느낄수있다. 단지파라미터의수정을통해당연히대기해야하는시간을감축한다는것은분명성능을개선해야하는입장에서는놀라운일이될것이다. 반면, 그에따 Commit Wait Class 대기시간감소방안 엑셈컨설팅본부 /DB 컨설팅팀박준연 개요 Wait Class 중 Commit 카테고리에해당하는 Wait Event 에의한대기현상으로 DB 시스템의성능저하현상이발생하는것은종종경험할수있다. 그중대표적인 Wait Event 는 Log File Sync 이다. 실제로대부분의 DB 시스템의 Top 5 Wait Event

More information

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL 다양한예제로쉽게배우는 오라클 SQL 과 PL/SQL 서진수저 4 장 JOIN 을배웁니다 1 2 1. Cartesian Product ( 카티션곱, CROSS Join) - Oracle Join 문법 SQL> SELECT e.ename, d.dname 2 FROM emp e, dept d ; - ANSI Join 문법 SQL> SELECT e.ename, d.dname

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 데이터베이스및설계 MySQL 을위한 MFC 를사용한 ODBC 프로그래밍 2012.05.10. 오병우 컴퓨터공학과금오공과대학교 http://www.apmsetup.com 또는 http://www.mysql.com APM Setup 설치발표자료참조 Department of Computer Engineering 2 DB 에속한테이블보기 show tables; 에러발생

More information

Spring Boot/JDBC JdbcTemplate/CRUD 예제

Spring Boot/JDBC JdbcTemplate/CRUD 예제 Spring Boot/JDBC JdbcTemplate/CRUD 예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) Spring Boot, Gradle 과오픈소스인 MariaDB 를이용해서 EMP 테이블을만들고 JdbcTemplate, SimpleJdbcTemplate 을이용하여 CRUD 기능을구현해보자. 마리아 DB 설치는다음 URL 에서확인하자.

More information

제목 레이아웃

제목 레이아웃 웹해킹이라고무시하는것들보소 2017.07.10 RUBIYA805[AT]GMAIL[DOT]COM SQL Injection 끝나지않은위협 2017.07.10 RUBIYA805[AT]GMAIL[DOT]COM Who am I 정도원 aka rubiya Penetration tester Web application bughuter Pwned 20+ wargame @kr_rubiya

More information

Intra_DW_Ch4.PDF

Intra_DW_Ch4.PDF The Intranet Data Warehouse Richard Tanler Ch4 : Online Analytic Processing: From Data To Information 2000. 4. 14 All rights reserved OLAP OLAP OLAP OLAP OLAP OLAP is a label, rather than a technology

More information

ALTIBASE HDB Patch Notes

ALTIBASE HDB Patch Notes ALTIBASE HDB 5.3.3.93 Patch Notes Table of Contents BUG-27950 ALL PRIVILEGES 권한을가진계정이다른계정의테이블에 Foreign Key 를 생성하지못한다. 3 BUG-38105 PASSWORD_LIFE_TIME 경과후유예기간 (PASSWORD_GRACE_TIME) 내에 접속을시도할경우알림메시지를발생해야한다.

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

歯PLSQL10.PDF

歯PLSQL10.PDF 10 - SQL*Pl u s Pl / SQL - SQL*P lus 10-1 1 0.1 PL/ SQL SQL*Pl u s. SQL*P lus 10-2 1 0.2 S QL* Pl u s PL/ S QL SQL*Pl u s, Pl / SQL. - PL/ SQL (i npu t ), (s t or e ), (r un). - PL/ SQL s cr i pt,,. -

More information

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770> 제 8강 SQL: 관계데이터베이스언어 강의목표 관계데이타베이스언어로서상용 DBMS에서가장널리사용되는 SQL의동작원리에관하여학습하고, 이를이용하여다양한질의문을작성하는방법을습득한다 기대효과 SQL의데이터정의기능을이해한다 SQL의데이터조작기능중질의기능을이해한다 SQL의데이터조작기능중데이터갱신기능을이해한다 SQL의데이터조작기능중뷰및인덱스관련기능을이해한다 SQL 의개요

More information

<4D F736F F D203033C6C4C6BCBCC72DB8AEBFC0B1D7B9E6B9FD2E646F63>

<4D F736F F D203033C6C4C6BCBCC72DB8AEBFC0B1D7B9E6B9FD2E646F63> Reviewed by Oracle Certified Master Korea Community ( http:www.ocmkorea.com http:cafe.daum.netoraclemanager ) 1.1.1 파티션테이블에서사용할수있는리오그방법파티션 level 의 importexport 방법을이용해파티션테이블중특정파티션 ( 혹은서브파티션 ) 만을선택적으로리오그할수있다.

More information

Microsoft Word - Goodus_기술노트[19회]_Flashback

Microsoft Word - Goodus_기술노트[19회]_Flashback Goodus 기술노트 [19 회 ] Flashback Author 권웅원, 나지혜 Creation Date 2007-04-25 Last Updated 2007-04-25 Version 1.0 Copyright(C) 2004 Goodus Inc. All Rights Reserved Version 변경일자 변경자 ( 작성자 ) 주요내용 1 2007-04-25 권웅원,

More information

슬라이드 1

슬라이드 1 Tadpole for DB 1. 도구개요 2. 설치및실행 4. 활용예제 1. 도구개요 도구명 소개 Tadpole for DB Tools (sites.google.com/site/tadpolefordb/) 웹기반의데이터베이스를관리하는도구 Database 스키마및데이터관리 라이선스 LGPL (Lesser General Public License) 특징 주요기능

More information

Remote UI Guide

Remote UI Guide Remote UI KOR Remote UI Remote UI PDF Adobe Reader/Adobe Acrobat Reader. Adobe Reader/Adobe Acrobat Reader Adobe Systems Incorporated.. Canon. Remote UI GIF Adobe Systems Incorporated Photoshop. ..........................................................

More information

PowerPoint Presentation

PowerPoint Presentation Toad for Oracle 추가옵션 - DB Admin Module - Quest Software Korea 2017. 토드커뮤니티 : www.toad.co.kr 토드 (Toad) 확장프로모션 추가비용없이토드확장모듈 (DB Admin Module) 제공 개발자, DBA, 데이터추출업무등모든사용자업무생산성향상 오라클데이터베이스활용능력향상 그동안사용하지못했던토드의고급유틸리티활용

More information

Cache_cny.ppt [읽기 전용]

Cache_cny.ppt [읽기 전용] Application Server iplatform Oracle9 A P P L I C A T I O N S E R V E R i Improving Performance and Scalability with Oracle9iAS Cache Oracle9i Application Server Cache... Oracle9i Application Server Web

More information

DocsPin_Korean.pages

DocsPin_Korean.pages Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google

More information

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL

다양한 예제로 쉽게 배우는 오라클 SQL 과 PL/SQL 다양핚예제로쉽게배우는 오라클 SQL 과 PL/SQL 서진수저 10 장 view 를배웁니다 1 - View 란가상의테이블이다! 2 1. 단순 View (Simple View) SCOTT>CONN / AS SYSDBA; SYS>GRANT CREATE VIEW TO scott ; CREATE [OR REPLACE] [ FORCE NOFORCE] VIEW view

More information

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070> #include "stdafx.h" #include "Huffman.h" 1 /* 비트의부분을뽑아내는함수 */ unsigned HF::bits(unsigned x, int k, int j) return (x >> k) & ~(~0

More information

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT 3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT NOT NULL, FOREIGN KEY (parent_id) REFERENCES Comments(comment_id)

More information

ALTIBASE HDB Patch Notes

ALTIBASE HDB Patch Notes ALTIBASE HDB 6.3.1.10.6 Patch Notes 목차 BUG-45060 offline replication start 와 replication drop 을동시에수행하는경우, replication start 가완료되지않았으면 replication drop 을수행하지못하도록수정하였습니다... 4 BUG-46193 메모리테이블의이중화병렬 sync

More information

단답형 (26 회기출문제 ) 1. 아래와같은테이블이있을때아래의 SQL 결과에대해서 Oracle, SQL Server 순서로적으시오 TAB1 COL1 CHAR(10) COL2 CHAR(10) INSERT INTO TAB1 VALUES ('1',''); INSERT INT

단답형 (26 회기출문제 ) 1. 아래와같은테이블이있을때아래의 SQL 결과에대해서 Oracle, SQL Server 순서로적으시오 TAB1 COL1 CHAR(10) COL2 CHAR(10) INSERT INTO TAB1 VALUES ('1',''); INSERT INT Study Room Doc.03 : SQLD 예상문제 ( 단답형 ) 네이버 Cafe : 데이터베이스전문가포럼 Study Room http://cafe.naver.com/sqlpd SQLD 26,25,24,21 회기출문제를바탕으로작성 작성자 : 월야루 도움 : 빙수민외카페댓글 2017-11-30 단답형 (26 회기출문제 ) 1. 아래와같은테이블이있을때아래의 SQL

More information

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3 Example 3.1 Files 3.2 Source code 3.3 Exploit flow

More information

ORACLE EXADATA HCC 압축방식이해하기 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 시간이지나면서데이터는급속하게증가하고있다. 데이터가증가함에따라 DBMS 에서관리되어지는정보도급속하게증가하고있다. 이로인해저장공간의부족으로하드웨어비용의증가와데이터처리성능에많은문제점들

ORACLE EXADATA HCC 압축방식이해하기 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 시간이지나면서데이터는급속하게증가하고있다. 데이터가증가함에따라 DBMS 에서관리되어지는정보도급속하게증가하고있다. 이로인해저장공간의부족으로하드웨어비용의증가와데이터처리성능에많은문제점들 ORACLE EXADATA HCC 압축방식이해하기 엑셈컨설팅본부 /DB 컨설팅팀김철환 개요 시간이지나면서데이터는급속하게증가하고있다. 데이터가증가함에따라 DBMS 에서관리되어지는정보도급속하게증가하고있다. 이로인해저장공간의부족으로하드웨어비용의증가와데이터처리성능에많은문제점들이나타나고있다. 이러한문제점들을해결하고자 ORACLE 에서는 EXADATA 라는시스템을통해스토리지공간부족현상과데이터처리성능을향상시키고자하였다.

More information

Contents Data Mart 1. 개요 실습방향 테스트위한사전설정 본격실습시작 ) 데이터파일 dd 명령어로 백업수행및유실시키기 ) 장애복구수행 결론...7 페이지 2 / 7

Contents Data Mart 1. 개요 실습방향 테스트위한사전설정 본격실습시작 ) 데이터파일 dd 명령어로 백업수행및유실시키기 ) 장애복구수행 결론...7 페이지 2 / 7 ( 참 ) 본상단부머리말에있는 Data Mart 는본문서작성자의블로그이름입니다 dd 명령어를 이용한백업수행 최소개념이해 본문서의 pdf 문서는다음 URL 참조 http://mindata.tistory.com/55 Version 변경일자 ( 작성일자 ) 변경자 ( 작성자 ) 주요내용 1 2013.4.3 김민기 최초작성 2 3 페이지 1 / 7 Contents

More information

Microsoft PowerPoint - Linux_10gRAC_3Node

Microsoft PowerPoint - Linux_10gRAC_3Node Linux 환경에서 3 Node 10g RAC 구성및 Data 이관하기 일시 : 2006. 08. 10 Contents I. RAC 구성환경및전체순서 II. Volume 및 Server 환경 Setup III. CRS 및 DB S/W 설치 IV. CRS 및 DB S/W Patchset V. File-System DBF raw-device 이관 VI. Sinlge

More information

<4D F736F F D205BB4EBBBF3C1A4BAB8B1E2BCFA5DB1E2BCFAB9AEBCAD2D524D414EBBE7BFEBBFB9C1A65F39695F313067>

<4D F736F F D205BB4EBBBF3C1A4BAB8B1E2BCFA5DB1E2BCFAB9AEBCAD2D524D414EBBE7BFEBBFB9C1A65F39695F313067> 9i 에서의 RMAN 사용법예제 Author : 여현승 Creation Date : 2009-04-15 Last Updated : Latest Version : 1.0 Updated by Updated date Version < YYYY-MM-DD>

More information

PowerPoint Presentation

PowerPoint Presentation FORENSICINSIGHT SEMINAR SQLite Recovery zurum herosdfrc@google.co.kr Contents 1. SQLite! 2. SQLite 구조 3. 레코드의삭제 4. 삭제된영역추적 5. 레코드복원기법 forensicinsight.org Page 2 / 22 SQLite! - What is.. - and why? forensicinsight.org

More information

초보자를 위한 ADO 21일 완성

초보자를 위한 ADO 21일 완성 ADO 21, 21 Sams Teach Yourself ADO 2.5 in 21 Days., 21., 2 1 ADO., ADO.? ADO 21 (VB, VBA, VB ), ADO. 3 (Week). 1, 2, COM+ 3.. HTML,. 3 (week), ADO. 24 1 - ADO OLE DB SQL, UDA(Universal Data Access) ADO.,,

More information

Oracle Wait Interface Seminar

Oracle Wait Interface Seminar 1 대용량 DBMS 의효율적인 모니터링및성능관리방안 Copyrights 2001~2007, EXEM Co., LTD. All rights reserved. 목차 2 1. 성능문제와 OWI 분석방법론 2. OWI 구성요소 3. Latch & LOCK 4. Oracle I/O 5. Cache Buffer 3 성능문제와 OWI 분석방법론 성능지연사례 1) 평소에

More information

Microsoft Word - 04_EXCEPTION.doc

Microsoft Word - 04_EXCEPTION.doc ORACLE EXCEPTION INTRODUCTION PLSQL 블록이 PARSE 되는동안에발생되는에러를컴파일에러 (Compilation Error) 라고부르며, PLSQL 블록이실행되는동안에발생되는에러를런타임에러 (Run-Time Error) 라고부르는데, 이런타임에러를오라클에서는예외 (Exception) 라고부른다. 오라클의예외 (Exception) 는크게두가지로구분된다.

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information