Comment déplacer les fichiers de base de données Oracle vers un nouvel emplacement

Je me suis rendu compte il y a quelques jours qu’il ne restait que quelques Go de disponible dans le disque de ma machine virtuelle Oracle Linux et que j’allais avoir besoin de plus d’espace pour stocker des données supplémentaires. J’ai donc décidé d’ajouter un nouveau disque à la machine virtuelle (cliquez sur le lien pour voir comment je l’ai fait) et de déplacer les fichiers de la base de données Oracle sur le nouveau disque. Voyons donc comment je l’ai fait dans ce nouveau tutoriel.

Beaucoup de fichers...
Beaucoup de fichers…

J’ai d’abord exécuté la commande “select name from v$datafile;” pour identifier les noms et les emplacements des fichiers de la base de données. Comme vous pouvez le voir dans la capture d’écran suivante, la plupart des fichiers se trouvaient dans le répertoire “/opt/oracle/oradata/ORCLCDB/” mais certains d’entre eux se trouvaient dans le répertoire “/opt/oracle/product/19c/dbhome_1/dbs/“.

select name from v$datafile;
select name from v$datafile;

L’idée était de déplacer ces fichiers vers le nouveau disque virtuel. Je devais donc arrêter l’instance Oracle afin de pouvoir déplacer les fichiers. J’ai utilisé la commande “shutdown immediate” pour fermer et démonter la base de données.

shutdown immediate
shutdown immediate

Pour simplifier, je voulais avoir tous les fichiers de base de données au même endroit, j’ai donc déplacé les deux fichiers qui se trouvaient initialement dans le répertoire “/opt/oracle/product/19c/dbhome_1/dbs/” vers le répertoire “/opt/oracle/oradata/ORCLCDB/” à l’aide de la commande shell “mv“.

mv command
mv command

Tous les fichiers de données se trouvaient maintenant dans le répertoire “/opt/oracle/oradata/ORCLCDB/“. J’ai donc utilisé la commande shell “rsync -a /opt/oracle/oradata/ /mnt/data/oradata/” pour copier le contenu du répertoire “/opt/oracle/oradata/” sur le nouveau disque monté en tant que “/mnt/data/“.

rsync -a /opt/oracle/oradata/ /mnt/data/oradata/
rsync -a /opt/oracle/oradata/ /mnt/data/oradata/

J’ai décidé de renommer le répertoire d’origine “/opt/oracle/oradata” en “/opt/oracle/oradata.old” afin d’avoir temporairement une copie de sauvegarde des fichiers de la base de données en cas de problème.

mv /opt/oracle/oradata /opt/oracle/oradata.old
mv /opt/oracle/oradata /opt/oracle/oradata.old

J’ai créé un nouveau lien symbolique à partir du répertoire “/mnt/data/oradata” vers “/opt/oracle/oradata” à l’aide de la commande shell “ln -s /mnt/data/oradata /opt/oracle/oradata“. Cela permettrait de ne pas avoir à changer les noms de la plupart des fichiers de données de la base de données. J’ai vérifié le résultat avec la commande shell “ls -l /opt/oracle”.

ls -l /opt/oracle
ls -l /opt/oracle

Je suis retourné à l’interface de ligne de commande sqlplus et j’ai redémarré l’instance oracle à l’aide de la commande “startup mount”.

startup mount
startup mount

J’ai renommé les deux fichiers qui se trouvaient à l’origine dans le répertoire “/opt/oracle/product/19c/dbhome_1/dbs/” afin d’utiliser leur nouvel emplacement à l’aide de la commande sqlplus “alter database rename file“.

alter database rename file
alter database rename file

Puis j’ai ouvert la base de données à l’aide de la commande sqlplus “alter database open”.

alter database open
alter database open

J’ai décidé de tester si tout allait bien en exécutant une instruction SELECT pour l’une des tables créées lors de la configuration d’OAS (stockée dans le fichier de données BI_biplatform.dbf) :

SELECT OBJECT_TYPE from BI_BIPLATFORM.S_NQ_DSS_OBJECT_TYPES;
SELECT OBJECT_TYPE from BI_BIPLATFORM.S_NQ_DSS_OBJECT_TYPES;

Et tout s’est bien passé. Je pouvais donc supprimer la copie de sauvegarde “/opt/oracle/oradata.old” à l’aide de la commande shell “rm -rf /opt/oracle/oradata.old/”.

rm -rf /opt/oracle/oradata.old/
rm -rf /opt/oracle/oradata.old/

Après cela, j’ai examiné l’espace disponible sur les disques virtuels à l’aide de la commande shell “df -m“.

df -m
df -m

Le disque d’origine disposait désormais d’un peu moins de 8 Go tandis que le nouveau disque disposait de plus de 31 Go. J’avais dorénavant beaucoup d’espace pour stocker mes données BI !

Clause de non-responsabilité

Les informations contenues dans ce site Web sont uniquement à des fins d’information générale. Nous essayons de maintenir ces informations à jour et correctes, mais nous n’offrons aucune garantie d’aucune sorte quant à l’exhaustivité, l’exactitude ou la fiabilité du contenu du site Web. En aucun cas, nous ne serons responsables de toute perte ou dommage de quelque nature que ce soit résultant de l’utilisation de ce site Web.

Cette page Comment déplacer les fichiers de base de données Oracle vers un nouvel emplacement a été initialement publiée sur MyBIJourney

Toutes les marques déposées sont la propriété de leurs propriétaires respectifs.
FacebookTwitterPinterestWhatsAppMail