sql >> Database >  >> RDS >> Oracle

Handmatig nieuwe RAC-instantie toevoegen

Om dit bericht te beginnen, zal ik zeggen dat u, indien mogelijk, de DBCA moet gebruiken om een ​​nieuwe instantie aan uw RAC-database toe te voegen. De DBCA regelt alle details voor u. Het is een eenvoudige wizard van 6 pagina's en uw nieuwe instantie is actief op uw nieuwe node.

Onlangs werd ik belast met het toevoegen van een nieuwe instantie voor onze productiedatabases die op ons cluster met 3 knooppunten draaien. Ik kon het vierde exemplaar op het vierde knooppunt maken voor 2 van de 3 databases die op dit cluster draaien. Toen ik probeerde de derde database uit te breiden naar het vierde knooppunt, kreeg ik een foutmelding dat de $ORACLE_HOME-directory niet op alle knooppunten werd gedeeld. Om te beginnen hoeft de $ORACLE_HOME-directory niet op alle knooppunten te worden gedeeld. En dit werkte voor de andere twee databases in dezelfde homedirectory. Ik moet nog uitzoeken waarom er een probleem is met deze derde database. Na twee weken was er vrijwel geen voortgang met mijn serviceverzoek om het probleem op te lossen. Dus besloot ik de instanties handmatig toe te voegen, omdat Oracle Support niet de hulp biedt die ik nodig heb. In mijn gedachten wist ik dat het handmatig toevoegen van de instances niet zo moeilijk was, maar ik kon niet veel informatie vinden over hoe ik dit moest doen. Dit bericht toont de stappen om handmatig een nieuwe instantie aan uw RAC-database toe te voegen.

1. Stel instantiespecifieke parameters in op uw SPFILE. Ik moest de volgende parameters toevoegen voor mijn nieuwe instantie:

verander systeem set instance_number=4 scope=spfile sid=’orcl4′;

verander systeem set local_listener=’LISTENER_ORCL4′  scope=spfile sid=’orcl4′;

verander systeem set log_archive_format=’%t_%s_%r.dbf’ scope=spfile sid=’orcl4′;

verander systeem set log_archive_trace=0 scope=spfile sid=’orcl4′;

verander systeem set thread=4 scope=spfile sid=’orcl4′;

verander systeem set undo_tablespace=’UNDOTBS4′ scope=spfile sid=’orcl4′;

2. Voor een van de parameters is het LISTENERS_ORCL4-item in het TNSNAMES.ORA-bestand vereist. Maak dit item in het bestand en alle andere items die u nodig hebt voor deze nieuwe instantie.

3. Ik heb mijn spfile- en wachtwoordbestand op gedeelde opslag gezet. Op het nieuwe knooppunt moet ik daar een softlink naar maken.

cd $ORACLE_HOME/dbs

ln -s /u01/app/oracle/oradata/orcl/data01/spfileorcl.ora spfileorcl4.ora

ln -s /u01/app/oracle/oradata/orcl/data01/orapworcl orapworcl4

4. Voeg online loggroepen voor opnieuw uitvoeren toe.

database wijzigen logbestand thread 4 toevoegen groep 40
( '/u01/app/oracle/oradata/smp/redo01/redo40a.log',
'/u01/app/oracle/oradata/smp/redo01/ redo40b.log') maat 52429312;

5. Stand-by logbestanden voor opnieuw uitvoeren toevoegen.

database wijzigen add standby logfile thread 4
‘/u01/app/oracle/oradata/smp/redo01/smp_4srl400.f’ size 52429312;

6. Aangezien ik een standby-database heb, moet ik ook online redo-logs en standby redo-logs toevoegen aan de standby-database. Zie mijn vorige bericht.

7. Schakel opnieuw thread in.

verander database activeer thread 4;

8. Maak de nieuwe instantie in Grid Infrastructure

srvctl instantie toevoegen -d orcl -i orcl4 -n mijnhost04

9. Start de nieuwe instantie

srvctl startinstantie -d orcl -i orcl4

10. Controleer op het nieuwe knooppunt of SMON actief is.

ps -ef|grep smon

11. Controleer of de instantie open is.

selecteer instance_number,instance_name,thread#,status van gv$instance;

12. Wijzig /etc/oratab op nieuwe node om instantie-invoer te bevatten

orcl4:/u01/app/oracle/product/11.2.0.2:N

13. Meld u op het nieuwe knooppunt aan bij de instantie met SQL*Plus om ervoor te zorgen dat u toegang hebt tot de instantie.

14. Verifieer instantie met GI.

srvctl-statusdatabase -d orcl

15. De instantie is nu actief op het nieuwe knooppunt. Het enige dat overblijft is om alle databaseservices beschikbaar of geprefereerd te maken op dat nieuwe knooppunt en uw verbindingen kunnen de nieuwe instantie gaan gebruiken.

srvctl dienst wijzigen -d orcl -s orcl_svc -n -i orcl1,orcl2,orcl3,orcl4

srvctl start service -d orcl-s orcl_svc -i orcl4

srvctl-statusservice -d orcl

Dat is alles!


  1. Groepeer rijen met behulp van groep per clausule in MySQL

  2. SQL CREATE TABLE … AS SELECT-instructie

  3. Commentaar karakter/tekens in postgres / postgresql / psql?

  4. Hoe dubbele rijen in SQL te elimineren