Administrace Oracle
„automatická
správa úložiště“
integrovaný správce diskových oddílů a souborových systémů usnadňuje práci s databází na úrovni dat uložených na disku v Oracle od verze 10g (2003)
(obdoba v MS SQL ?není?, jen aplikace třetích stran – např. IBM Tivoli Storage Manager for Databases)
hlavní
výhody oproti přímé práci se soubory na disku/discích:
ASM ovládáno přímo z databáze pomocí SQL-like syntaxe (ale lze i externími programy) disková úložiště v ASM zařazena do tzv. diskových skupin; o fyzickém umístění souborů rozhoduje ASM
→ administrátor se stará jen o diskové skupiny, ne o soubory (často mnoho)
další
výhody:
ASM poskytuje (na úrovni alokačních jednotek)
striping
mirroring
soubor rozložen na více discích → rychlejší přístup redundance pro případ havárie HW
hot spare
online přeuspořádávání dat → možnost přidávání / odebírání disků za běhu
další
automatický load balancing
výhody:
ASM přeuspořádává data dynamicky tak, aby zatížení disků I/O operacemi bylo rovnoměrné
možnost začlenění failover mechanizmů
v rámci diskové skupiny lze definovat skupiny disků, v rámci nichž nehrozí při poškození některého z nich ztráta dat
další
výhody:
podpora extrémně velkých datových souborů (15-140 PB dle redundance; bez ASM „jen“ 128 TB) možnost správy téměř neomezené diskové kapacity – v jedné ASM instanci může běžet až
63 diskových skupin 1 milión souborů v každé z nich 10 000 disků, každý s kapacitou až 4 PB 40 exabytů celkem = 40 000 000 TB X jen s Oracle Exadata Storage
další
malá režie – 64–128 MB na instanci ASM možnost začlenění do existujících databází
výhody:
nová data do souborů v ASM, stará lze ponechat mimo ASM / do ASM přesunout
možnost běhu distribuovaně v rámci clusteru
technologie Oracle Real Application Clusters jedna instance databáze běží distribuovaně na více počítačích spojených sítí vytvořena iluze konkurenčního přístupu k jedné databázi přes více serverů → ke každému možno přistupovat samostatně
na
serveru běží instance ASM
samostatný proces (startuje i ovládá se podobně jako DB); může být k němu připojeno i více databází možnost sdílet diskové skupiny více databázemi v Oracle RAC – na každém nodu clusteru jedna ASM instance komunikace mezi nimi – peer-to-peer
jako
v souborovém systému – základem alokační jednotka (AU, allocation unit)
1 AU = 1 MB (od Oracle 11g lze nastavit 1-64 MB) ASM dokáže pracovat i s jejími částmi (např. jemnější striping používá 128 KB bloky) soubory rozděleny na bloky této velikosti a umístěny na disky dle nastavené politiky (striping, mirroring…) do tzv. extentů (místa vyhrazeného pro daný soubor), sestavených z AU
rozmístění
AU
alokačních jednotek – v režii ASM
v ASM souborech názvy generovány automaticky, lze jim přiřadit uživatelské aliasy mapování reálných databázových souborů do ASM souborů v rámci diskové skupiny – v samostatných souborech (metadata)
instalace
– pomocí Oracle Universal
Installer administrační nástroje: GUI – Oracle Enterprise Manager (EM), Database Configuration Assistant (DBCA) konzole – SQL*Plus
$ export ORACLE_SID=+ASM $ echo 'INSTANCE_TYPE=ASM' >> /tmp/init+ASM.ora $ sqlplus / as sysdba SQL> CREATE SPFILE FROM PFILE='/tmp/init+ASM.ora'; File created. SQL> startup nomount ASM instance started Total System Global Area 125829120 bytes Fixed Size 1301456 bytes Variable Size 124527664 bytes Database Buffers 0 bytes Redo Buffers 0 bytes SQL> shutdown ASM instance shutdown
pro
mount – diskové skupiny připojeny automaticky nomount – musí být připojeny ručně
pro
startup
shutdown
normal – počká na ukončení session a dokončení zpracovávaných dotazů immediate/transactional – nečeká na ukončení session abort – vypne se hned
INSTANCE_TYPE
– povinný; říká, že vytvářený objekt bude instance ASM; INSTANCE_TYPE = ASM DB_UNIQUE_NAME – unikátní jméno ASM instance; default: +AMS, nodům v clusteru se dávám +AMS1 , 2 atd. ASM_POWER_LIMIT – rychlost přesouvání dat v rámci load balancingu (1-11)
ASM_DISKSTRING
– seznam zařízení (odděleny čárkou), které má ASM objevit; podporovány metaznaky * a ? v zápisu; standardně NULL = ASM objeví všechny dostupné disky, na které má R/W práva ASM_DISKGROUPS – seznam diskových skupin, které lze připojit; defaultně NULL – žádnou nelze REMOTE_LOGIN_PASSWORDFILE – soubor s jmény a hesly k ASM … a další – viz dokumentace
CREATE DISKGROUP disk_group_1 NORMAL REDUNDANCY FAILGROUP failure_group_1 DISK '/dev/sda1' NAME hdda1, '/dev/sda2' NAME hdda2, FAILGROUP failure_group_2 DISK '/dev/sdb1' NAME hddb1, '/dev/sdb2' NAME hddb2;
DROP DISKGROUP disk_group_1 INCLUDING CONTENTS;
úroveň
redundance:
NORMAL REDUNDANCY – 2-way mirroring HIGH REDUNDANCY – 3-way mirroring EXTERNAL REDUNDANCY – bez mirroringu, mirroring pomocí jiného SW nebo RAID mirroring
-- přidání disku do skupiny ALTER DISKGROUP disk_group_1 ADD DISK '/dev/hdd*3', '/dev/hdd*4'; -- odebrání disku ze skupiny; lze použít undrop ALTER DISKGROUP disk_group_1 DROP DISK hdda2;
-- vymezení prostoru na disku pro ASM; -- spadne, pokud je udaná velikost větší než skutečná ALTER DISKGROUP disk_group_1 RESIZE DISK diska1 SIZE 100G; -- to samé, ale pro celou selhávací skupinu ALTER DISKGROUP disk_group_1 RESIZE DISKS IN FAILGROUP failure_group_1 SIZE 100G; -- to samé, ale pro celou diskovou skupinu ALTER DISKGROUP disk_group_1 RESIZE ALL SIZE 100G;
-- připojení, resp. odpojení diskových skupin ALTER DISKGROUP ALL DISMOUNT; ALTER DISKGROUP ALL MOUNT; ALTER DISKGROUP disk_group_1 DISMOUNT; ALTER DISKGROUP disk_group_1 MOUNT;
chování
diskové skupiny (stripování, mirroring atd.) – definováno použitím šablon
kolekce atributů; defaultně sada předpřipravených šablon + možnost vytvořit vlastní viz pohled V$ASM_TEMPLATE
Template Name CONTROL
External Redundanc File Type y Control files Unprotected
Normal Redundanc y 2-way mirror
High Redundanc Stripe y d 3-way mirror Fine
DATAFILE
Datafiles and copies
Unprotected 2-way mirror 3-way mirror Coarse
ONLINELOG
Online logs Unprotected 2-way mirror 3-way mirror Fine
ARCHIVELOG Archive logs Unprotected 2-way mirror 3-way mirror Coarse TEMPFILE
Tempfiles
Unprotected 2-way mirror 3-way mirror Coarse
-- přidání nové šablony ke skupině ALTER DISKGROUP disk_group_1 ADD TEMPLATE reliable ATTRIBUTES (MIRROR FINE); -- změna atributu šablony ALTER DISKGROUP disk_group_1 ALTER TEMPLATE reliable ATTRIBUTES (COARSE); -- zrušení šablony ALTER DISKGROUP disk_group_1 DROP TEMPLATE reliable;
-- vytvoření adresáře ALTER DISKGROUP disk_group_1 ADD DIRECTORY '+disk_group_1/mydir‚ -- přejmenování adresáře ALTER DISKGROUP disk_group_1 RENAME DIRECTORY '+disk_group_1/mydir' TO '+disk_group_1/yourdir'; -- smazání adresáře ALTER DISKGROUP dgroup1 DROP DIRECTORY '+disk_group_1/yourdir ' FORCE;
podobné
příkazy jako na předchozím slidu, jen místo DIRECTORY slovo FILE nebo ALIAS
-- kontrola metadat ALTER DISKGROUP disk_group_1 CHECK ALL; lze
volat na diskové skupiny, selhávací skupiny i jednotlivé disky zjištěné chyby jsou vypsány a opraveny
Opravu lze přeskočit přidáním NOREPAIR
-- ruční vyvažování ALTER DISKGROUP disk_group_1 REBALANCE POWER 6; REBALANCE
POWER lze nastavit v rozsahu 0 (vypnuto) – 11 (nejrychlejší)
postup:
vytvořit instanci ASM a nakonfigurovat diskové skupiny vytvořit standardní databázovou instanci (tj. INSTANCE_TYPE = RDBMS (default)) ) či upravit stávající tak, aby používala ASM
pomocí konfiguračního souboru s parametry (obdobně jako u vytváření instance ASM)
parametry:
DB_CREATE_FILE_DEST DB_CREATE_ONLINE_LOG_DEST_n DB_RECOVERY_FILE_DEST CONTROL_FILES LOG_ARCHIVE_DEST_n LOG_ARCHIVE_DEST STANDBY_ARCHIVE_DEST
např.
DB_CREATE_FILE_DEST = '+disk_group_1' DB_RECOVERY_FILE_DEST = '+d_group_2' DB_RECOVERY_FILE_DEST_SIZE = 10G
nyní
stačí už jen vytvořit nový tabulkový prostor, přiřadit jej uživatelům a pracovat s databází jako obvykle CREATE TABLESPACE tspace1; Do
něj mohu přesunout stávající data ALTER TABLE old_talbe MOVE TABLESPACE tspace1;
Recovery
Manager
pro migraci a zálohování dat
konzolový
program, připojení k databázi i ovládání podobně jako u SQL*Plus lze v něm i používat SQL příkazy, zápis: SQL “příkaz”
$ rman RMAN> CONNECT TARGET SYS@orcl target database Password: XXXXXXXXX connected to target database: ORCL (DBID=1217369048) RMAN> BACKUP AS COPY DATAFILE "+DATA/orcl/datafile/users.261.689589837" FORMAT "+USERDATA"; Starting backup at 16-JUN-09 …
http://download.oracle.com/docs/cd/B28359_01/server.111/b31 107/asmcon.htm
http://download.oracle.com/docs/cd/E11882_01/server.112/e18 951/asminst.htm
http://www.thegeekstuff.com/2008/10/oracle-11g-step-by-stepinstallation-guide-with-screenshots/
http://www.oraclewiki.net/startdocshowtoinstalloracle11glinuxasm
http://en.wikipedia.org/wiki/Automatic_Storage_Management
http://www.orafaq.com/wiki/Automatic_Storage_Management