oracle veritabanı yonetiminde onemli teknikler

17
Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | Oracle Veritabanı Yönetiminde Önemli Teknikler 1 Orhan Eripek http://orhaneripek.com Senior Oracle DBA OCP (Oracle Certified Professional) Member of TROUG

Upload: orhan-eripek

Post on 16-Jul-2015

323 views

Category:

Technology


4 download

TRANSCRIPT

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı Yönetiminde Önemli Teknikler

1

Orhan Eripek http://orhaneripek.com Senior Oracle DBA OCP (Oracle Certified Professional) Member of TROUG

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Ajanda

Genel Tavsiyeler

Oracle Veritabanı ve Teknolojilerinin Kullanımları

Oracle VM Server - Client

Oracle Veritabanı Performans Yönetimi ve Önemli Teknikler (AWR, ORAchk, Trace Logs, Sql Profile, MV, Alert Mekanizması)

2

1

2

3

4

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Genel Tavsiyeler

3

Problem Çözüm

Kişisel ve Mesleki Gelişim, Sosyal Ağlar, İngilizce, Uzmanlık Seçiminde 3 Ana Kriter (Şirket, Yaşam Standartı, Maaş)

Uzmanlık Seçiminiz Oracle ise; Oracle Dokümantasyonu (Guides), Oracle Blogları, Oracle Eğitimleri, Seminer ve Konferanslar

TROUG (Turkish Oracle User Group - http://www.troug.org ) Üniversitelerle Buluşuyor!

Proje ve Zaman Yönetimi

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı ve Teknolojilerinin Kullanımları

4

Oracle RAC (Real Application Cluster)

Single Instance

Oracle RAC

Multiple DBs Same Machine

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı ve Teknolojilerinin Kullanımları

5

Oracle DWH (Veriambarı)

Sistem A Sistem B Sistem C Sistem D

DWH DB

ETL (Extract -> Transform -> Load)

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı ve Teknolojilerinin Kullanımları

6

Oracle DataGuard

Data Guard

Data Center / Istanbul Data Center / Izmir

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı ve Teknolojilerinin Kullanımları

7

Oracle GoldenGate

Source DB

GoldenGate

Target DBs

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı ve Teknolojilerinin Kullanımları

8

Oracle Audit Vault & Database Vault

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 9

Oracle Database 11g R2 or 12c for Linux

Oracle VM VirtualBox

Oracle Linux 7

Listener.ora Tnsnames.ora

Oracle - OraClient11g_home1

Oracle VM Server - Client

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Oracle Veritabanı Performans Yönetimi, EM

10

• Uzun süren SQL’ler (Top SQL) • Aktif Kullanıcılar (Active Sessions) • Parallel Sessions • Kilitli Tablolar (Locked Tables) • Çalışan Job’lar • Invalid Objeler • Public Verilmiş Objeler • Disk, CPU, Memory Kullanım

Kontrolü • Backup Kontrolü

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

AWR (Automatic Workload Repository) Raporu

11

• MMON istatistikleri üretir, bu bilgiler saat başı alınan snapshot’larda kaydedilir, problem anında belli snapshot’lar arasındaki veritabanı durumunu AWR raporları detaylı açıklar.

• Top 5 Events, Wait Events, Load Profile, System- I/O-Memory- Sql Statistics en önemli bölümleridir.

• $ORACLE_HOME/rdbms/admin/awrrpt.sql (RAC ise awrgrpt.sql ) scripti ile, Toad vb. toollar ile veya EM->Server-> Automatic Workload Repository ile AWR raporlarını oluşturabiliriz.

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. | 12

ORAchk 12.1.0.2.1 - Healt Check Raporu

- Oracle veritabanı ve sunucusu üzerinde kontroller yaparak bulgularını tespit eder, tavsiyelerde bulunur.

- Default değerleri sunmasının yanında Best Practices’ler ve SR linkleri verir.

- RACchk ve Exachk tool’ları da vardır.

- Doc ID 1268927.2 linkinden son versiyonu indirebilirsiniz.

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Materialized View & MV Refresh

13

CREATE MATERIALIZED VIEW MV1

TABLESPACE TEST

NOCACHE

LOGGING

COMPRESS BASIC

PARALLEL (DEGREE 4 INSTANCES 1)

BUILD DEFERRED

USING INDEX TABLESPACE TEST

REFRESH COMPLETE

ON DEMAND

WITH PRIMARY KEY

ENABLE QUERY REWRITE

AS

SELECT FROM TABLE_NAME...WHERE....

BEGIN

DBMS_SNAPSHOT.REFRESH(

LIST => 'MV1'

,METHOD => 'C'

,PUSH_DEFERRED_RPC => TRUE

,REFRESH_AFTER_ERRORS => FALSE

,PURGE_OPTION => 1

,PARALLELISM => 16

,ATOMIC_REFRESH => FALSE

,NESTED => FALSE); END;

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Trace Logs

14

Begin

execute_immediate ('ALTER SESSION SET TRACEFILE_IDENTIFIER= REAL_RUN');

execute_immediate ('ALTER SESSION SET SQL_TRACE=TRUE');

End;

max_dump_file_size

C:\app\oeripek\product\11.2.0\client_1\BIN>tkprof C:\Users\oeripek\Desktop\ORCL_j003.trc C:\DISK\deneme.out TKPROF: Release 11.2.0.1.0 - Development on Pzt Eyl 22 16:16:25 2014 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. C:\app\oeripek\product\11.2.0\client_1\BIN>

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Sql Profile

15

select * from v$sql where SQL_ID like 'faazrsvs99ns7';

select * from v$sql_plan where SQL_ID like '%faazrsvs99ns7%'

select ADDRESS, HASH_VALUE from V$SQLAREA where SQL_ID like 'faazrsvs99ns7';

exec sys.DBMS_SHARED_POOL.PURGE ('07000012B66E3230,4036285191', 'C');

select /* FIRST_ROWS PUSH_PRED(@SEL$3) PUSH_PRED(@SEL$4) INDEX(@SEL$3 notabl1_ TE_NDX) */ ….

DECLARE

clsql_text CLOB;

BEGIN

SELECT sql_fulltext INTO clsql_text FROM V$sqlarea where sql_id = 'faazrsvs99ns7';

dbms_sqltune.import_sql_profile(sql_text => clsql_text,

profile=> sqlprof_attr('FIRST_ROWS PUSH_PRED(@SEL$3) PUSH_PRED(@SEL$4) INDEX(@SEL$3 notabl1_ TE_NDX)'),

name=>'PROFILE_faazrsvs99ns7',

force_match=>true);

end;

select * from DBMSHSXP_SQL_PROFILE_ATTR where profile_name like '%faazrsvs99ns7%'

Copyright © 2014 Oracle and/or its affiliates. All rights reserved. |

Alert Mekanizması

16