Questo capitolo contiene le istruzioni per la configurazione di Red Hat Enterprise Linux per rendere i servizi del database altamente disponibili.
![]() | Nota |
---|---|
Le seguenti descrizioni riportano un esempio su come configurare un database. Fare attenzione alle differenze esistenti nelle nuove versioni di ogni database. Di conseguenza questa informazione potrebbe non essere applicabile. |
Un servizio del database puó inoltrare informazioni altamente disponibili ad una applicazione del database. L'applicazione provvede ad un accesso di rete ai sistemi che usano il database, come i Web server. Se il servizio subisce un fail over, l'applicazione puó accedere ai dati comuni del database attraverso un nuovo sistema del cluster. Un indirizzo IP viene assegnato ad un servizio database accessibile via rete, il quale segue una procedura fail over assieme al servizio, per mantenere un facile accesso per gli utenti.
Questa sezione fornisce un esempio su come impostare un servizio del cluster per un database di Oracle. Anche se le variabili usate nel servizio degli script dipendono dalla configurazione specifica di Oracle, l'esempio puó aiutare ad impostare un servizio per ambienti individuali. Consultare la Sezione 4.2 per informazioni inerenti al miglioramento delle prestazioni del servizio.
Nell'esempio che segue:
Il servizio include un indirizzo IP da usare per i client di Oracle.
Il servizio monta due file system, uno per il software di Oracle (/u01/) e l'altro per il database sempre di Oracle (/u02/) i quali sono stati impostati prima che il servizio fosse stato aggiunto.
Un conto di gestione di Oracle chiamato oracle viene creato su entrambi i sistemi del cluster prima dell'aggiunta del servizio.
La directory di gestione é situata su di uno shared disk il quale viene usato congiuntamente con il servizio di Oracle (per esempio, /u01/app/oracle/admin/db1).
Create una configurazione utente/gruppo costante, in grado di accedere al servizio di Oracle per ogni sistema del cluster, Per esempio:
mkdir /users groupadd -g 900 dba groupadd -g 901 oinstall useradd -u 901 -g 901 -d /users/oracle -m oracle usermod -G 900 oracle |
L'esempio inerente il servizio di Oracle, usa tre script che devono essere posizionati nel /hime/oracle e posseduti dal conto di gestione di Oracle. Lo script di oracle é usato per iniziare o terminare il servizio Oracle. Specificare lo script quando il servizio viene aggiunto. Questo script richiama l'esempio degli altri script di Oracle. Lo script startdb e lo script stopdb iniziano e arrestano il database. Lo script startdbi e lo script stopdbi iniziano e terminano il database. Notate che ci sono modi diversi per un'applicazione di interagire con il database di Oracle.
Il seguente é un esempio dello script oracle, usato per iniziare, arrestare e controllare lo stato del servizio di Oracle.
#!/bin/sh # # Cluster service script to start, stop, and check status of oracle # cd /users/oracle case $1 in start) su - oracle -c ./startdb ;; stop) su - oracle -c ./stopdb ;; status) status oracle ;; esac |
Il seguente é un esempio dello script startdb, usato per iniziare l'Oracle Database Server instance:
#!/bin/sh # # # Script to start the Oracle Database Server instance. # ######################################################################## # # ORACLE_RELEASE # # Specifies the Oracle product release. # ######################################################################## ORACLE_RELEASE=9.2.0 ######################################################################## # # ORACLE_SID # # Specifies the Oracle system identifier or "sid", which is the name of # the Oracle Server instance. # ######################################################################## export ORACLE_SID=TEST ######################################################################## # # ORACLE_BASE # # Specifies the directory at the top of the Oracle software product and # administrative file structure. # ######################################################################## export ORACLE_BASE=/u01/app/oracle ######################################################################## # # ORACLE_HOME # # Specifies the directory containing the software for a given release. # The Oracle recommended value is $ORACLE_BASE/product/<release> # ######################################################################## export ORACLE_HOME=/u01/app/oracle/product/${ORACLE_RELEASE} ######################################################################## # # LD_LIBRARY_PATH # # Required when using Oracle products that use shared libraries. # ######################################################################## export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:$LD_LIBRARY_PATH ######################################################################## # # PATH # # Verify that the users search path includes $ORACLE_HOME/bin # ######################################################################## export PATH=$PATH:${ORACLE_HOME}/bin ######################################################################## # # This does the actual work. # # Start the Oracle Server instance based on the initSID.ora # initialization parameters file specified. # ######################################################################## /u01/app/oracle/product/9.2.0/bin/sqlplus << EOF sys as sysdba spool /home/oracle/startdb.log startup pfile = /u01/app/oracle/product/9.2.0/admin/test/scripts/init.ora open; spool off quit; EOF exit |
Il seguente é un esempio dello script stopdb, usato per terminare l'Oracle Database Server instance:
#!/bin/sh # # # Script to STOP the Oracle Database Server instance. # ###################################################################### # # ORACLE_RELEASE # # Specifies the Oracle product release. # ###################################################################### ORACLE_RELEASE=9.2.0 ###################################################################### # # ORACLE_SID # # Specifies the Oracle system identifier or "sid", which is the name # of the Oracle Server instance. # ###################################################################### export ORACLE_SID=TEST ###################################################################### # # ORACLE_BASE # # Specifies the directory at the top of the Oracle software product # and administrative file structure. # ###################################################################### export ORACLE_BASE=/u01/app/oracle ###################################################################### # # ORACLE_HOME # # Specifies the directory containing the software for a given release. # The Oracle recommended value is $ORACLE_BASE/product/<release> # ###################################################################### export ORACLE_HOME=/u01/app/oracle/product/${ORACLE_RELEASE} ###################################################################### # # LD_LIBRARY_PATH # # Required when using Oracle products that use shared libraries. # ###################################################################### export LD_LIBRARY_PATH=${ORACLE_HOME}/lib:$LD_LIBRARY_PATH ###################################################################### # # PATH # # Verify that the users search path includes $ORACLE_HOME/bin # ###################################################################### export PATH=$PATH:${ORACLE_HOME}/bin ###################################################################### # # This does the actual work. # # STOP the Oracle Server instance in a tidy fashion. # ###################################################################### /u01/app/oracle/product/9.2.0/bin/sqlplus << EOF sys as sysdba spool /home/oracle/stopdb.log shutdown abort; spool off quit; EOF exit |
Per aggiungere un servizio Oracle usando Tool di configurazione del Cluster, eseguire quanto segue:
Avviare Tool di configurazione del Cluster selezionando Menu Principale => Impostazioni del sistema => Impostazioni del Server => Cluster, oppure digitando redhat-config-cluster al prompt di una shell. Per default Tool dello stato del Cluster apparirà per default.
Avviare il Tool di configurazione del Cluster selezionando Cluster => Configura dai menu del Tool dello stato del Cluster.
Fate clic sulla tabella Servizi
Aggiungere il servizio Oracle.
Fate clic su Nuovo. Apparirà la finestra di dialogo Servizio.
Inserire un Nome del servizio per il servizio Oracle.
Selezionare un Dominio di Failover o lasciarlo come None.
Digitare una quantità (in secondi), per controllare lo stato di salute del servizio di Oracle attraverso la funzione status dello script init.
Inserire uno Script dell'utente, come ad esempio /home/oracle/oracle.
Fate click su OK
Aggiungere un indirizzo IP per il servizio di Oracle.
Selezionare il servizio di Oracle e fate clic su Aggiungi figlio.
Selezionare Aggiungere l'indirizzo IP del servizio e fate clic su OK. Apparirà la finestra di dialogo Indirizzo IP del servizio.
Inserire un Indirizzo IP.
Inserire una Maschera di rete, o lasciarla su None.
Inserire un Indirizzo Broadcast, o lasciarlo su None.
Fate clic su OK.
Aggiungere un dispositivo per il servizio di Oracle e per i file amministrativi.
Selezionare il servizio di Oracle e fate clic su Aggiungi figlio.
Selezionate Aggiungi dispositivo e fate clic su OK. Apparirà una finestra di dialogo Dispositivo.
Inserire il File speciale del dispositivo (per esempio, /dev/sdb5).
Nel campo Mount Point, inserire /u01.
Selezionare il tipo di file system in Tipo di FS, o lasciarlo vuoto.
Inserire qualsiasi mount point Opzioni, incluso rw (lettura-scrittura).
Selezionate o deselezionate Forzare l'unmount.
Fate clic su OK.
Aggiungere un dispositivo per i file del database di Oracle.
Selezionare il servizio di Oracle e fate clic su Aggiungi figlio.
Selezionate Aggiungi dispositivo e fate clic su OK. Apparirà una finestra di dialogo Dispositivo.
Inserire il File speciale del dispositivo (per esempio, /dev/sdb6).
Nel campo Mount Point, inserire /u02.
Selezionare il tipo di file system in Tipo di FS, o lasciarlo vuoto.
Inserire qualsiasi mount point Opzioni, incluso rw (lettura-scrittura).
Selezionate o deselezionate Forzare l'unmount.
Fate clic su OK.
Selezionare File => Salva per salvare il servizio di Oracle.