Upload
orhan-eripek
View
323
Download
4
Embed Size (px)
Citation preview
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%'