První pomoc pro DBA administrátory

Transkript

První pomoc pro DBA administrátory
První pomoc pro DBA
administrátory
CIDUG
Milan Rafaj
IBM Česká republika
Oč
em to bude
• Kde hledat informace
• Nástroje
– Obslužné programy
– SQL API
– TOP 11
CIDUG
• Dotazy
Kde hledat informace
•
•
•
•
•
online.log
errpt a jiné ž
urnály OS
bar_act.log
tsm_error.log č
i jiný SMV_error.log
Release notes
CIDUG
– $INFORMIXDIR/release/en_us/0333
• Documentation Notes
– $INFORMIXDIR/release/en_us/0333
Obsluž
né programy
• Informix
–
–
–
–
onstat
finderr
onmode
SQLIDEBUG/sqliprint
• Unix
–
–
–
–
–
–
CIDUG
ipcs/onstat –g seg
vmstat
iostat
sar
netstat
errpt (AIX)
SQL API
• sysmaster
• admin API (IDS 11.x+)
• DB Scheduler (IDS 11.x+)
CIDUG
TOP 11
•
•
•
•
•
•
•
•
•
•
•
onstat –m/onstat –c/onstat –g osi # IDS 11.xx+
onstat –g env # často opomíjené
onstat –g ath|cpu|glo|ckp # vylepšení IDS 11.xx+
sysprofile/syssesprofile
onstat –g ses|sql
onstat –g pqs # IDS 10.xx+
onmode –Y/set explain on|statistics
SQLTRACE/Admin API # IDS 11.xx+
onstat –g his # IDS 11.xx+
SQLIDEBUG/sqliprint
DB Scheduler # IDS 11.xx+
CIDUG
Stav instance a stroje
CIDUG
Stav instance
• Onstat -|-m
–
–
–
–
–
–
–
–
–
Offline -1 (255)
Initialization 0 (nikdy se nevrací)
Quiescent 1
Fast Recovery 2
Archive Backup 3
Shutting Down 4
On-Line 5
Aborting 6
Single User 7
CIDUG
Konfigurace instance a stroje
• onstat –c a onstat –g osi
CIDUG
Konfigurace prostř
edí - server
• onstat –g env
CIDUG
Konfigurace prostř
edí - aplikace
• onstat –g env ses_id|all
CIDUG
Rozšíř
ené informace o vláknech
(IDS 11.xx+)
CIDUG
Stav vláken
• onstat –g ath
– Místo sleeping forever
• IO Idle
• IO Wait
CIDUG
• onstat –g cpu
– CPU čas
– Počet plánování
– Stav
• onstat –g glo
onstat –g ath
CIDUG
onstat –g cpu
CIDUG
onstat –g glo
CIDUG
onstat –g iof
CIDUG
onstat –g ckp
CIDUG
Databáze sysmaster
CIDUG
Nové tabulky ve verzi IDS 11.50
•
•
•
•
•
•
•
•
syscheckpoint
sysenv
sysenvses
sysonlinelog
sysbaract
sysnetworkio
sysdual
syssqltrace
CIDUG
Statistiky optimalizátoru
CIDUG
Statistiky optimalizátoru
• Úroveňdetailů(sysmaster:syssqexplain)
– Plán optimalizátoru vždy
– export SQLSTATS=1
• Profilové informace (poč
ty č
tení apod.)
CIDUG
– export SQLSTATS=2
• Profilové a č
asové statistiky (navíc č
asy zpracování)
• SET EXPLAIN STATISTICS
– Nová možnost v aplikacích od IDS 10.00
• EXPLAIN_STAT
– Nový onconfig parametr od IDS 11.10
• Onstat –g pqs
– Dynamické statistiky během zpracování SQL
Dynamické zapnutí statistik
optimalizátoru
• Zapnutí
– onmode –Y {session id} 1
– onmode –Y {session id} 1 [soubor] #10.00.xC8+
• Vypnutí
CIDUG
– onmode –Y {session id} 0
• Nelze zapnout SQL statistiky dynamicky
• Pouze př
íkazy optimalizované po zapnutí
Statistiky optimalizátoru v
aplikacích
• SQL př
íkazy
–
–
–
–
SET
SET
SET
SET
EXPLAIN
EXPLAIN
EXPLAIN
EXPLAIN
ON
ON AVOID_EXECUTE
OFF
STATISTICS # IDS 10.00+
CIDUG
• Umístění souboru
– UNIX
• sqexplain.out
• Aktuální adresářpro lokální klienty
• Home adresářna serveru pro vzdálené klienty
– Windows
• %INFORMIXDIR%\sqexpln\{username}.out
Pět sekcí souboru SQEXPLAIN
• Základní
informace
• Poř
adí
př
ístupu
• Detailní plán
optimalizátoru
• Informace o
UDR
• Statistiky
optimalizátoru
(volitelné)
QUERY
----SELECT tab1.c2
FROM tab1,tab2
WHERE tab1.c2 = tab2.c2 AND tab1.c2
MATCHES "systable*"
Estimated Cost: 321
Estimated # of Rows Returned: 148
CIDUG
1) miller3.tab1: SEQUENTIAL SCAN
Filters: miller3.tab1.c2 MATCHES
'systable*'
2) miller3.tab2: INDEX PATH
(1) Index Keys: c2
(Key-Only)
(Serial, fragments: ALL)
Lower Index Filter:
miller3.tab2.c2 MATCHES 'systable*'
DYNAMIC HASH JOIN
Dynamic Hash Filters: miller3.tab1.c2
= miller3.tab2.c2
Informace o UDR
• Informace o UDR použ
itých v dotazu
– Jméno UDR
– UDR Id
CIDUG
• UDR Id je důležité, protože UDR mohou mít stejná
jména, ale různé argumenty
Př
íklad:
UDRs in query:
-------------UDR id :
UDR name:
234
x
Statistiky optimalizátoru
Table map :
---------------------------Internal name
Table name
---------------------------t1
tab1
t2
tab2
Skutečná čísla
Odhady optimalizátoru
type
table
rows_prod
est_rows
time
rows_scan
est_cost
------------------------------------------------------------------------------scan
t1
92
92
0:0:0
5244
282
CIDUG
type
table
rows_prod
est_rows
time
rows_scan
est_cost
------------------------------------------------------------------------------scan
t2
92
92
0:0:0
92
5
type
rows_prod
est_rows
rows_bld
rows_prb
novrflo time est_cost
------------------------------------------------------------------------------hjoin
8464
148
92
92
0
0:0:0 321
SQL statistiky během zpracování
onstat –g pqs {sid}
– Sledování průběhu zpracování
– Aktuální data
– Vž
dy dostupné statistiky
– Pouze po dobu zpracování př
íkazu
CIDUG
Query Operators :
Opaddr
opname
phase
rows
time
in1
in2
----------------------------------------------------------------b444d60
scan
done
52
0:0:0
0
0
b45cd60
scan
done
4
0:0:0
0
0
b45e2f0
join
done
92
0:0:0
b444d60 b45cd60
b460d60
scan
done
13
0:0:0
0
0
b45e208
join
done
795
0:0:0
b45e2f0 b460d60
SQL statistiky během zpracování
Query Operators :
Opaddr
opname
phase
rows
time
in1
in2
---------------------------------------------------------------b444d60
scan
done
52
0:0:0
0
0
b45cd60
scan
done
4
0:0:0
0
0
b45e2f0
join
done
92
0:0:0
b444d60 b45cd60
b460d60
scan
done
13
0:0:0
0
0
b45e208
join
done
795
0:0:0
b45e2f0 b460d60
CIDUG
Join
Scan
Join
Scan
Scan
Historie SQL
CIDUG
Historie SQL
• Staticky
– Onconfig parametr SQLTRACE
•
SQLTRACE level=MED,ntraces=2000,size=2,mode=global
• Dynamicky
– Admin API
•
CIDUG
Execute function task(„set sql tracing on“,2000,“2k“,“med“,“global“);
• 2 režimy (globální a sezení)
• 4 úrovně
– Off - vypnuto
– Low – text př
íkazu, statistiky, iterátory (plán)
– Med – totéžco Low a jména tabulek, databází a zásobník ulož
ených
procedur
– High – totéžco Med a host proměnné
Historie SQL
• Tabulky v databázi sysmaster
– syssqltrace
• Řádek pro každý SQL př
íkaz v trasovacím buffru
CIDUG
– syssqltrace_info
• Informace o parametrech trasování
– syssqltrace_iter
• Řádek pro každý iterátor př
íkazu SQL
Onstat –g his
CIDUG
Onstat –g his
CIDUG
Onstat –g his
CIDUG
symaster:syssqltrace
select sql_sid,sql_uid,sql_runtime,
sql_statement[1,400]
from syssqltrace
order by 3 desc
CIDUG
sysmaster:syssqltrace
CIDUG
Trasování SQL komunikace
CIDUG
Trasování SQL komunikace
export SQLIDEBUG=2:vystupni_soubor
dbaccess <db> benchmark.sql|aplikace
unset SQLIDEBUG
sqliprint –cmd_time vystupni_soubor.pid
CIDUG
!!! Pozor binární soubor můž
e být velmi velký
Př
íklad výstupu sqliprint
CIDUG
DB Scheduler a jeho využ
ití
CIDUG
DB Scheduler
• Automatické plánování administrátorských úloh
• Pracovní vlákna
– dbScheduler - 1 vlákno, které plánuje spouštění úloh
– dbWorker- 2 vlákna, která úlohy provádějí
• Task – úloha provádějící nějakou činnost
CIDUG
– Startup Taks – provádí se jen př
i startu databázové instance
• Sensor – úloha provádějící nějakou č
innost A SBÍRAJÍCÍ NĚJAKÁ
DATA
– Startup Sensor – provádí se jen př
i startu databázové instance
• Tabulky
–
–
–
–
–
ph_group – skupiny administrátoských úloh
ph_task – administrátorská úloha
ph_run – záznam o provedení administrátorské akce
ph_alerts – uživatelsky definované události
ph_threshold – uživatelsky definované limity a konfigurační parametry
taskůa senzorů
DB Scheduler
Př
eddefinované úlohy (16 v IDS 11.50)
– mon_command_history
– mon_config_startup
– mon_moncheckpoint
– mon_profile
– Auto Update Statistics Refresh
– Auto Update Statistics Evaluation
CIDUG
Př
íklad senzoru
• Vytvoř
í se tabulka, pokud
neexistuje
• Mezi 8:00 a 17:00 se
každou minutu provede
př
íkaz insert
• Smažou se data starší
nežjedna hodina
INSERT INTO ph_task(
tk_name, tk_description,
tk_type, tk_group,
tk_result_table,tk_create,
tk_execute, tk_start_time,
tk_stop_time, tk_frequency,
tk_delete
) VALUES (
„Priklad profil“,“ulozeni onstat –p
kazdou minutu a uchovani po
dobu 1
hodiny“,“SENSOR“,“PRIKLADY“,
“ex_profile“,“CREATE TABLE
ex_profile(ID INTEGER,name
VARCHAR(20),c2
BIGINT)“,“INSERT INTO
ex_profile SELECT
$DATA_SEQ_ID,name,value
FROM sysmaster:sysprofile”,
DATETIME(08:00:00)HOUR TO
SECOND,DATETIME(17:00:00)
HOUR TO SECOND,INTERVAL(1)
MINUTE TO MINUTE,INTERVAL(1)
HOUR TO HOUR)
CIDUG
Dotazy
CIDUG

Podobné dokumenty

Ladění konfigurace IDS pomocí open source „tpmC like“

Ladění konfigurace IDS pomocí open source „tpmC like“ • Nastavení SET LOCK MODE TO WAIT 10 • Správná obsluha ošetření chyby v GUI

Více

Implementace Label Based Access Control v Informix Dynamic

Implementace Label Based Access Control v Informix Dynamic Юª²3 »´»³»²¬ ³? ²»¶ª§††3 °®·±®·¬« Õ±³°±²»²¬¿ ª» ª·-¿ ce dovoluje použít pouze jeden Array element Uživatel m že p » íst všechna data, jejichžvisa µ¿ ±¾-¿¸«¶» »´»³»²¬§ -¬»¶²7 nebo nižší úrovn ¶¿µ± ...

Více

Mobilní kompresory

Mobilní kompresory Dva manometry tlaku ve vzdušníku a provozního tlaku Záruka 10 let na vzdušník proti prorezavění 4 velkoryse dimenzované gumové nohy pro bezpečné ustavení a optimální přepravu Dobře přístupný vypouš...

Více

Historie obce Mníšek Rok 1961 Slavnostní otevření kulturního domu

Historie obce Mníšek Rok 1961 Slavnostní otevření kulturního domu V roce 1979 koncem dubna bylo zapoèato s výkopem základù, ale poèasí nepøálo a brzdilo hodnì veškeré práce, které probíhaly po sobotách a nedìlích brigádnì. Již koncem roku 1979 bylo známo, že pøi ...

Více

Ing. Petr Pomykáček

Ing. Petr Pomykáček , je nutné opravit BASEURL z localhost na IP nebo jméno počítač e, na které/ém web server bě ž í. Tlač ítkem „Save“ uložíme konfiguraci do souboru D:\xampp\htdocs\OAT\conf\config.php, který lze kdy...

Více

Nové vlastnosti IDS 11.50

Nové vlastnosti IDS 11.50 293: IS [NOT] NULL predicate may be used only with simple columns. select i from tab where j*3 is not null

Více

Nový kompresor v systaineru SysMaster 150-8-6

Nový kompresor v systaineru SysMaster 150-8-6 Velký pracovní okruh díky 4 m kabelu Integrovaná přihrádka pro připojovací kabel Bezkonkurenčně lehký

Více

Informix Warehouse Accelerator

Informix Warehouse Accelerator Instalace a konfigurace

Více

HI-2014 - Česká herpetologická společnost

HI-2014 - Česká herpetologická společnost a exkurze na zmije obecné. Sobotní ráno bylo chladné a zatažená obloha nedávala příliš naději, že zastihneme aktivující hady.Většina přednášek tak zazněla před obědem v přednáškovém sále bývalé far...

Více