sql >> Databáze >  >> RDS >> Oracle

Instalace RAC pro databázi s datovými soubory

Není to tak dávno, co jsem potřeboval upgradovat Oracle Clusterware a RDBMS z 11.1.0.7 na 11.2.0.2. Mám spoustu zkušeností se softwarem Oracle RDBMS, ale mám podezření, že jsem jako většina DBA v tom, že moje zkušenost s Clusterware není na stejné úrovni jako moje zkušenost s RDBMS. Takže i když jsem neměl žádné obavy z upgradu softwaru RDBMS, přistupoval jsem k upgradu Clusterware s určitou mírou nervozity. Je pravda, že tento neklid se zrodil z nižšího stupně zkušeností s produktem. Před pokusem o produkční provoz jsem tedy testoval, testoval a testoval, jak jsem mohl.
Upgrade Clusterware proběhl hladce díky spoustě plánování a testování.

Po upgradu jsem přemýšlel o tom, co se povedlo a co ne, a co bych mohl v budoucnu udělat jinak. Napadlo mě, že jsem mohl totálně pokazit upgrade Clusterware, odfouknout software Clusterware a přesto být schopen nainstalovat Clusterware od nuly a zprovoznit svou databázi RAC. Tento příspěvek ukáže kroky, které jsem provedl v testovacím prostředí, abych provedl tento úkol. Takže pokud zjistíte, že máte totálně zpackaný upgrade nebo instalaci Clusterware, nemusíte se bát, protože pokud máte stále své databázové soubory, budete moci věci uvést do provozu. Pokud se upgrade Clusterware nezdařil, budete muset před pokračováním opravit hlavní příčinu selhání. Pokud jste tedy měli špatnou konfiguraci propojení clusteru nebo neplatné úložiště pro své hlasovací disky, budete muset tyto problémy vyřešit a poté můžete postupovat podle těchto kroků.

Mám platnou databázi se všemi svými datovými soubory ve sdíleném úložišti, které je přístupné všem uzlům v clusteru. Můj test má dva uzly pro cluster. Předpokládá se také, že databáze byla vypnuta čistě. Tento dokument předpokládá, že název databáze je ORCL.

Poznámka:Pokud vaše databáze, kterou přidáváte do RAC, již byla součástí RAC, můžete přeskočit kroky 9-11 níže. Kroky 9-11 jsou povinné, pokud při přidávání do Clusterware také převádíte databázi z jednoinstanční databáze na databázi Oracle RAC.

Kroky
1. Proveďte chladnou zálohu datových souborů databáze. V případě, že se něco stane, můžete vždy obnovit ze zálohy pouhým zkopírováním souborů z média.
2. Ujistěte se, že jsou uzly vyčištěny z instalace/upgradu Clusterware. Podrobné pokyny v případě potřeby naleznete v poznámce Metalink 239998.1.
3. Nainstalujte Oracle Clusterware správně. Nejprve byste měli opravit problémy, které způsobily selhání tohoto kroku.
a. Ověřte, zda je cluster v provozu.
i. $CRS_HOME/bin/crsctl stavový server
1. Všechny uzly v clusteru by měly být ONLINE.
4. Nainstalujte Oracle RDBMS do clusteru.
a. OUI by mělo detekovat Clusterware a nabídnout provedení instalace RAC.
5. Spusťte DBCA a vytvořte databázi prostředí. K nastavení všeho v CRS za nás použijeme DBCA.
a. Vyberte možnosti pro vytvoření databáze RAC.
b. Použijte stejný název jako vaše stávající databáze.
c. Vytvořte databázi shellu na všech uzlech v clusteru.
d. Použijte společné umístění pro databázové soubory, ale nepřepisujte své stávající datové soubory.
6. Vypněte shellovou databázi
a. srvctl stop databáze –d orcl
7. Nastavte si SPFILE
a. Pokud máte SPFILE své staré databáze:
i. Umístěte soubor na sdílený disk.
ii. Aktualizujte $ORACLE_HOME/dbs/initorcl.ora, aby ukazoval na správné umístění SPFILE. Udělejte to na všech uzlech
b. Pokud nemáte SPFILE, vytvořte PFILE od začátku a poté použijte příkaz CREATE SPFILE FROM PFILE k vytvoření SPFILE.
i. Ujistěte se, že parametr CONTROL_FILES ukazuje na správné umístění, nikoli na řídicí soubory databáze shellu.
c. (Volitelné) Pokud máte soubor s hesly, zkopírujte jej do sdíleného úložiště a poté aktualizujte softlink v $ORACLE_HOME/dbs (na všech uzlech), aby ukazoval na soubor s hesly. Pokud nemáte soubor s hesly, můžete si jej v případě potřeby vytvořit později.
8. Aktualizujte CRS s umístěním SPFILE (jako root)
a. cd $CRS_HOME/bin
b. ./srvctl konfigurační databáze –d orcl
i. Výstup by vám měl říci, že SPFILE je v umístění databáze shellu
c. ./srvctl upravit databázi –d orcl –p /správná_cesta/spfileorcl.ora
i. Proveďte krok 8b, abyste ověřili, že došlo ke změně.
ii. Ověřte změnu také na druhém uzlu. Tento příkaz úpravy byste měli pro všechny uzly spustit pouze jednou.
9. Upravte obsah SPFILE.
a. sqlplus /nolog
b. připojit / jako sysdba
c. vytvořte pfile=’/home/oracle/pfile.txt’ ze spfile=’/path_to_spfile/spfileorcl.ora’;
d. Otevřete soubor pfile v textovém editoru a proveďte následující změny:
i. Přidejte:
1. *.cluster_database=true
2. *.cluster_database_instances=2
3. orcl1.instance_number=1
4. orcl2.instance_number=2
5. orcl1.thread=1
6. orcl2.thread=2
ii. Změňte parametr *.undo_tablespace na orcl1.undo_tablespace
e. Použijte pfile ke změně spfile
i. vytvořte spfile=’/path_to_spfile/spfileorcl.ora’ z pfile=’/home/oracle/pfile.txt’;
10. Vytvořte nový tabulkový prostor UNDO pro druhou instanci.
a. export ORACLE_SID=orcl1
b. sqlplus / jako sysdba
c. spuštění
d. vytvořit undo tablespace undotbs2 datafile ‘/cesta/undotbs02.dbf’ velikost 30m;
e. alter system set undo_tablespace=undotbs2 scope=spfile sid=’orcl2′;
11. Vytvořte znovu protokoly pro nové vlákno
a. změnit databázi přidat logfile vlákno 2 skupina 10 ‘/cesta/redo10.log’ velikost 50m;
b. změnit databázi přidat logfile vlákno 2 skupina 11 ‘/cesta/redo11.log’ velikost 50m;
c. změnit databázi přidat logfile vlákno 2 skupina 12 ‘/cesta/redo12.log’ velikost 50m;
d. změnit databázi povolit veřejné vlákno 2;
12. srvctl start databáze –d orcl

V tomto okamžiku jste nyní nainstalovali Clusterware od začátku a přidali do něj existující databázi. Nyní, když mám osvědčený způsob, jak vzít libovolnou sadu databázových souborů a přidat je do jakékoli instalace clusterwaru, snížil jsem svou nervozitu při provádění upgradů Clusterware na produkčních systémech. I když udělám totální nepořádek, mohu Clusterware odfouknout, přeinstalovat a poté přidat databázi do Clusterware a mít svou databázi RAC zprovozněnou během okamžiku.


  1. Jak najdu uloženou proceduru obsahující <text>?

  2. Ovládací prvek ListView Události řazení přetažením

  3. Izolace transakcí v PostgreSQL

  4. Funkce HEXTORAW() v Oracle