Administrace Oracle
Ing. Michal Valenta PhD. Katedra softwarového inºenýrství Fakulta informa£ních technologií eské vysoké u£ení technické v Praze c J.
Pokorný, M. Valenta, 2010
Administrace webového a databázového serveru MI-AWD ZS 2010/11, P°edn. 11
Evropský sociální fond. Praha & EU: Investujeme do va²í budoucnosti M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
1 / 21
Úvod historie, produkty, nasazení, licence, ²kolení
Histrie Oracle 1977 Larry Ellison, Bob Miner, Ed Oates Software Development Laoboratories (SDL); projekt pro CIA DBMS nazvaný Oracle. P°ímo inspirováno teoretickou prací o rela£ním databázovém modelu. Poté za£ali s vývojem komer£ní verze. 1978 zm¥na rmy z SDL na Relational Software Inc. (RSI). 1979 první komer£ní verze produktu Oracle. 1992 Oracle7 v£etn¥ deklarativní refere£ní integrity, trigger· a uloºených procedur. 1997 Oracle8 koncepty objektového roz²í°ení, opu²t¥ní £ist¥ rela£ního model ORDBMS. 1998 Oracle8i otev°ení sm¥rem k internetu podpora Javy a HTTP protokolu. 2001 Oracle9i Real Application Cluster (RAC), optimalizace a v¥t²í moºnosti kongurace instance. 2003 Oracle10g Grid computing. 2004 p°íklon k linuxové platform¥. 2007 Oracle11g M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
2 / 21
Úvod historie, produkty, nasazení, licence, ²kolení
Rámcový p°ehled produkt· Oracle
databázový server: I enterprise edition I standard edition I express edition
roz²í°ení databázového serveru (spatial, ...) aplika£ní server vývojová prost°edi SQL Developer, JDeveloper správcovské nástroje Enterprise Manager enterprise apliakace a °e²ení (Financials, ...) specializované DB stroje (Berkeley DB) ...
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
3 / 21
Úvod historie, produkty, nasazení, licence, ²kolení
Licence a dosaºitelnost software
p°edev²ím komer£ní záleºitost I variace (mnoºství procesor·, sou£asn¥ pracující uºivatelé, ...) I ceny standard a enterprise se výrazn¥ li²í
k dispozici pro r·zné platformy k vyzkou²ení lze stáhnout libovolný produkt v trial verzi Express Edition kompletn¥ zdarma i pro komer£ní ú£ely, limitováno velistí databáze max. 4GB
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
4 / 21
Úvod historie, produkty, nasazení, licence, ²kolení
Dokumentace a jiné zdroje
http://technet.oracle.com I dokumentace online i ke staºení I produkty k vyzkou²eni (trial) I nutno se registrovat
http://metalink.oracle.com I znalostní báze s vyhledáváním I patche I vázané na koupenou podporu
Linuxová komunita je velmi sdílná i mimo ociální zdroje.
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
5 / 21
Úvod historie, produkty, nasazení, licence, ²kolení
kolení administrátor·
... je velký bussiness 2 Day DBA (od verze 9i) Administration Workshop I - 5 dn· Administration Workshop II - 5 dn· Performance And Tuning Workshop - 5 dn· a mnoho dal²ích kurz· certika£ní program cena cca 50.000,-K£ za 5 dn· ²kolení
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
6 / 21
Nástroje pro administraci
Nástroje administrátora shell, textový editor SQL*Plus / iSQL*Plus (sqlplus) Listener Control (lsnrctl)
tnsping Recovery Manager (rman) SQL Loader (sqlldr) Export / Import (exp,
imp)
DB Verify (dbv) Oracle Universal Installer (oui) Database Conguration Assistant (dbca) Network Conguration Assistant (ntca) Oracle Enterprise Manager (OEM), OEM Grid Control (emctl)
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
7 / 21
Základní pojmy a architektura
Architektura Oracle
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
8 / 21
Základní pojmy a architektura
Základní pojmy
instance = System Global Area (SGA) + background processes SID = jméno instance, instance m·ºe mít jiné jméno neº databáze, ke které se p°ipojuje database = data es + log les + control les 2 a n-vrstvá architektura ... z hlediska administrátora databáze vºdy dvouvrstvá SQL*Net = proprietární nadstavba nad TCP/IP protokolem SGA = Database Buer Cache + Redo Log Buer + Shared Pool + ... Shared Pool = Data Dictionary Cache + Library Cache PGA = Program Area £ást pam¥ti alokovaná server procesem
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
9 / 21
Základní pojmy a architektura
parameter le (init.ora / sple) bu¤ textový nebo binární (sple)
<SID>.ora
/ sple<SID>.ora (default; sple má p°ednost)
umíst¥ní $ORACLE_HOME/dbs (default varianta) £te se p°i startu instance obsahuje parametry týkající se zejména: I umíst¥ní control le I velikosti sdílené pam¥ti I dump les a alert log I shared server kongurace
Oracle denuje cca 300 parametr· v¥t²ina má default hodnotu jen n¥kolik málo je povinných pohled
V$PARAMETER
M. Valenta (FIT VUT)
nebo p°íkaz
show
Oracle
v SQL*Plus
BI-AWD, 2011, P°edn. 11
10 / 21
Základní pojmy a architektura
Startup / shutdown proces
start / nomount I p°e£te se parametr le I dojde k alokaci SGA I nastartují se background procesy
mount I p°e£te se control le I dojde ke kontrole konzistence databáze (datových souboru, ºurnál·)
open I instance je p°ipojena k databázi I databáze je v kosistentním stavu I databáze je zp°ístupn¥na uºivatel·m
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
11 / 21
Základní pojmy a architektura
Privilegovaný p°ístup do databáze
dv¥ speciální systémová privilegia - SYSDBA, SYSOPER p°i pouºití tohoto privilegia je uºivatel p°ihlá²en do schématu SYS p°ihlá²ení privilegovaného uºivatele:
connect / as sysdba) connect username as sysdba)
I ov¥°ení p°es OS (
I ov¥°ení p°es passwordle (
SYSDBA nebo SYSOPER m·ºe: I p°ihlásit se k instanci v jiném stavu neº OPEN I nastartovat/shodit databázi I provád¥t zálohu a b¥ºnou obnovu systému I provád¥t administrátorské operace typu p°idání/odebrání datale,
tablespace, logle
pouze SYSDBA m·ºe provést incomplete recovery
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
12 / 21
Základní pojmy a architektura
Data Dictionary
(static) data dictionary views I k dispozici aº ve stavu OPEN I pohledy s prexy USER_, ALL_ a DBA_
DBA_TABLES, DBA_ROLES, ALL_USERS, DBA_TABLESPACES,...)
I pouºívá podtrºítka a mnoºné £íslo (
(dynamic, performance) data dictionary views
V$INSTANCE,
I n¥které k dispozici jiº ve stavu STARTED (
V$PARAMETER,
...)
V$LOG,
I dal²í (zejména fyzická strkutura) ve stavu MOUNT (
V$DATAFILE, V$TABLESPACE, ...)
I za£ínají vºdy prexem V$, nepouºívají podtrºítka,
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
13 / 21
P°íprava systému, instalace
P°íprava systému a instalace
p°edinstala£ní p°íprava: I parametry OS (sdílená pam¥´, semafory) I le system (velikost bloku) I patche a poºadované knihovny
Oracle Flexible Architecture (OFA) I pravidla a zvyklosti adresá°ové struktury I software: F
F
$ORACLE_BASE/product/
/ (= $ORACLE_HOME) nap°íklad /opt/oracle/product/11.0.3 struktura uvnit° $ORACLE_HOME je pevn¥ daná (./admin, ./dbs, ./rdbms/admin, ./network/admin, ...)
I databáze: F
<mountpoint>/oracle/data/ nap°íklad /u01/oracle/data/orcl
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
14 / 21
P°íprava systému, instalace
Podstatná rozhodnutí obvykle OS user
oracle,
OS groups
sysoper
a
sysdba
instalace: I umíst¥ní instalace ($ORACLE_HOME)
? jedna aplikace = samostatná databáze ? vytvá°ení databáze: I jméno databáze I jméno instance I znaková sada (platí vºdy pro celou databázi) I
CHARACTER SET F F
I
pro datové typy CHAR, VARCHAR2, LONG, CLOB UTF8, EE8ISO8859P2, EE8MSWIN1250, ... (AL16UTF16 pouºít nelze)
NATIONAL CHARACTER SET F F
pro datové typy NCHAR, NVARCHAR2, NCLOB AL16UTF16 nebo UTF8
rozdílné znakové sady klientských aplikací °e²í vrstva v SQL*Net M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
15 / 21
P°íprava systému, instalace
Proces instalace software od verze 8i (implicitn¥) gracká (na v²ech platformách; Java, vlastní JRE)
response file $ORACLE_BASE/oraInventory/logs
lze provést tichou instalaci pomocí tzv. logy instalace obvykle v
Standard Edition | Enterpise Edition | Custom (mnoho závislostí) velikost instalace serveru obvykle více neº 3GB probíhá i kontrola nastavení OS a poºadovaných balík· lze instalovat samostatn¥ pouze software (implicitn¥ volá dbca) zárove¬ téº instalace instalátoru (p°idání | odebrání sw) ($ORACLE_HOME/oui/bin/runInstaller) na stroji si Oracle snaºí drºet seznam instalací Oracle Inventory I odkaz na n¥j je (obvykle) v
/etc/oraInst.loc
I implicitne $ORACLE_BASE/oraInventory
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
16 / 21
P°íprava systému, instalace
Nastavení prost°edí
orainstRoot.sh $ORACLE_BASE/oraInventory
b¥hem instalace je t°eba spustit skript implicitn¥ v I I I
/etc/oraInst.loc (umíst¥ní Oracle Inventory) /etc/oratab (seznam instancí) lokace adresá°e, který je v $PATH ( /usr/local/bin/) pro skripty coraenv, oraenv, dbhome, které zaji²´ují správné nastavení prost°edí
d·leºité prom¥nné prost°edí: I I I I I
ORACLE_HOME PATH = $PATH:$ORACLE_HOME/bin LD_LIBRARY_PATH = $LD_LIBRARY_PATH:$ORACLE_HOME/lib ORACLE_SID (p°ípadn¥ TWO_TASK) NLS_LANG (vhodné american_america.UTF8)
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
17 / 21
P°íprava systému, instalace
Instalace databáze DBCA
$ORACLE_HOME/bin/dbca pracuje s templates umí téº roz²í°it stávající databázi (nap°íklad podpora replikací) umí správn¥ smazat databázi (d·leºité zejména na MS Windows) umí vygenerovat skripty, které lze prohlédnout / doplnit / spustit.
M. Valenta (FIT VUT)
Oracle
BI-AWD, 2011, P°edn. 11
18 / 21
P°íprava systému, instalace
Praxe Debian Etch and half + KDE
Oracle rozli²uje certied a non-certied linux p°i instalaci je t°eba být v KDE p°ihlá²en jako oracle (resp. vlastník instalace oracle)
xhost +
a následné
su oracle
v shell nesta£í
ne v²echny automatické kontroly dopadly úsp¥²n¥ první pokus o instalaci skon£il neúsp¥²n¥ ve fázi kompilace analýza log souboru + google
⇒ aptitude install libaio1 libaio-dev pouºíváte-li dynamické p°id¥lování adresy p°es DHCP m·ºe mít emctl problémy se startem
⇒ lze obejít 127.0.1.1
p°es
M. Valenta (FIT VUT)
/etc/hosts nap°íklad: valenta.felk.cvut.cz
Oracle
valenta
BI-AWD, 2011, P°edn. 11
19 / 21
P°íprava systému, instalace
Praxe Gentoo 64bit základní instalace z Gentoo Live CD
emerge dev-libs/libaio ln -s /usr/lib64/gcc/x86_64-pc-linux-gnu/4.1.2/libstdc++.so.6 /usr/lib64/libstdc++.so.6 ${ORACLE_HOME}/lib32/stubs/libc.so: Code: - GROUP ( libc.so.6 /usr/lib/libc_nonshared.a ) + GROUP ( libc.so.6 /usr/lib32/libc_nonshared.a ) ${ORACLE_HOME}/lib32/stubs/libpthread.so:Code: - GROUP ( libpthread.so.0 /usr/lib/libpthread_nonshared.a ) + GROUP ( libpthread.so.0 /usr/lib32/libpthread_nonshared.a ) $ORACLE_HOME/lib/sysliblist:Code: - -ldl -lm -lpthread -lnsl -lirc -lipgo + -ldl -lm -lpthread -lnsl -lirc -lipgo -lrt dotaºení souboru
libgatsh.so
z 32-bitové instalace do
$ORACLE_HOME/lib32,
zdroj:
database/stage/Components/oracle.rdbms.util/11.1.0.6.0/1/DataFiles/filegroup14.jar
export ORACLE_HOME=/opt/oracle/product/11.1.0/db_1 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib32:$ORACLE_HOME/lib $ORACLE_HOME/bin/genagtsh $ORACLE_HOME/lib32/libagtsh.so chyby dohledány p°eváºn¥ pomocí
M. Valenta (FIT VUT)
$ORACLE_HOME/install/make.log Oracle
a Google
BI-AWD, 2011, P°edn. 11
20 / 21