Oracle est un système de gestion de base de données relationnelle couramment utilisé pour stocker et gérer des données critiques pour les applications d'entreprise à grande échelle. SID est l'identifiant de l'instance Oracle et est utilisé pour distinguer différentes instances Oracle. Chaque instance a un SID unique. Dans certains cas, il est nécessaire de modifier le SID d'Oracle, par exemple en exécutant plusieurs instances sur le même serveur ou en modifiant le nom de l'instance actuelle. Cet article explique comment modifier le SID d'Oracle.
Avant de modifier le SID, vous devez d'abord confirmer le SID actuel. Vous pouvez utiliser la commande suivante pour interroger :
echo $ORACLE_SID
Cette commande affichera le SID actuel.
Avant de modifier le SID, l'instance Oracle actuelle doit être arrêtée. L'instance peut être arrêtée à l'aide de la commande suivante :
sqlplus / as sysdba shutdown immediate;
Cela arrêtera immédiatement l'instance Oracle.
Avant de modifier le SID, vous devez éditer deux fichiers : /etc/oratab et $ORACLE_HOME/network/admin/ noms tns .ora. Ce qui suit décrit comment modifier ces deux fichiers.
3.1 Modifier le fichier /etc/oratab
Le fichier /etc/oratab contient une liste d'instances Oracle et peut être utilisé pour démarrer, arrêter ou redémarrer des instances Oracle . Dans le fichier, il y a une ligne pour chaque instance. Le format de chaque ligne est le suivant :
ORACLE_SID:ORACLE_HOME:Y|N
où ORACLE_SID est le nom unique de l'instance, ORACLE_HOME est le répertoire personnel Oracle de l'instance, Y signifie que l'instance doit démarrer automatiquement, N signifie que l'instance ne doit pas démarrer automatiquement.
Pour modifier le SID, vous devez ouvrir le fichier /etc/oratab avec un éditeur, rechercher la ligne de l'instance actuelle et remplacer son champ ORACLE_SID par le SID souhaité. La ligne modifiée devrait ressembler à ceci :
NEW_ORACLE_SID:/path/to/oracle/home:N
Dans cet exemple, modifiez le champ ORACLE_SID en NEW_ORACLE_SID. Une fois l'édition terminée, enregistrez et fermez le fichier.
3.2 Editez le fichier tnsnames.ora
Le fichier tnsnames.ora contient le nom du service réseau de la base de données Oracle. Dans ce fichier, il y a une entrée pour chaque service. Afin de modifier le SID, modifiez l'entrée dans le fichier tnsnames.ora.
Tout d'abord, ouvrez le fichier tnsnames.ora à l'aide d'un éditeur. Recherchez l'entrée de l'instance actuelle et modifiez-la avec le SID souhaité. L'entrée modifiée devrait ressembler à ceci :
NEW_ORACLE_SID = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = your_host)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = NEW_ORACLE_SID) ) )
Dans cet exemple, modifiez le SID dans le champ SERVICE_NAME et dans l'intégralité de l'entrée en NEW_ORACLE_SID. Une fois l'édition terminée, enregistrez et fermez le fichier.
Sous Windows, vous devez également modifier la clé de registre pour mettre à jour le nom de l'instance Oracle vers la nouvelle SID.
Tout d'abord, ouvrez l'éditeur de registre et accédez au chemin suivant :
HKEY_LOCAL_MACHINESOFTWAREORACLEKEYORACLE_HOME_NAME
Sous ce chemin, remplacez le champ ORACLE_SID par le SID souhaité. Après modification, fermez l'éditeur de registre.
Après avoir modifié le SID, vous pouvez redémarrer l'instance Oracle.
Tout d'abord, confirmez que le SID actuel a été modifié par la nouvelle valeur souhaitée. Vous pouvez interroger à l'aide de la commande suivante :
echo $ORACLE_SID
Ensuite, utilisez la commande suivante pour démarrer l'instance Oracle :
sqlplus / as sysdba startup
Cela démarrera l'instance Oracle. Si quelque chose ne va pas, vous pouvez afficher l'erreur à l'aide de la commande suivante :
select * from v$diag_info;
Cela fournira des détails sur l'erreur pour aider à résoudre le problème.
Dans cet article, nous présentons comment modifier Oracle SID. Ce faisant, veillez à sauvegarder tous les fichiers pertinents et à arrêter l'instance Oracle avant d'apporter des modifications.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!