Samedi 31 janvier 2009 6 31 /01 /2009 09:18
Bonjour,

On parle souvent de création de base de données, mais ils arrive aussi de devoir supprimer des bases de données.
On peut alors utiliser (dbca, Database Configuration Assistant), qui permet la suppression d'une base.
Si on aime (ou que l'on n'a pas forcement le choix) les opérations manuelles, on peut faire le nettoyage à la main.
Depuis Oracle 10 et uniquement depuis cette version, il existe une commande qui permet la suppression d'une base ==> "DROP DATABASE".

Remarque : Pour les versions précedents d'Oracle, reportez vous au commentaire de  Wahren.

Opération de suppression d'une base: (en sys)
Je vais supprimer la base que j'ai cloné dans mon article précédent (DB2)


SET ORACLE_SID=DB2
SQLPLUS /nolog
CONNECT / as sysdba

SHUTDOWN ABORT;
STARTUP MOUNT EXCLUSIVE RESTRICT pfile='e:\oracle\product\admin\db2\pfile\init.ora';
DROP DATABASE;
EXIT;



Le "DROP DATABASE" a eu pour effet de supprimer les fichiers de la base de données (datafiles, redo, controlfile,...) mais les répertoires sont encore présents, ainsi que toute la partie log(udump, cdump,budum,pfile). Il faut donc les supprimer à la main.

Par ailleurs, sous windows, il faut penser à supprimer l'instance représenté par un windows service



oradim -delete -sid DB2


Notre base est maintenant supprimée.

Si ma base était une base de production (en fin de vie) à supprimer, j'aurai également pu passer par RMAN.
L'avantage de passer par RMAN aurait été de pouvoir supprimer la base ainsi que les backup associés et de désenregistrer la bae du Catalog. Attention, pour être désenregistrer du catalog, il faut evidemment être connecté au catalog pour effectuer l'opération.

La commande est la même.



DROP DATABASE; (uniquement suppression de la base)
DROP DATABASE INCLUDING BACKUPS; (pour supprimer également les backups)



On peut également ajouter l'option NOPROMPT pour ne pas avoir de demande de confirmation de la part de RMAN.

LAO.

Par LAO - Publié dans : Administration - Communauté : ORACLE
Ecrire un commentaire - Voir les 2 commentaires - Recommander
Retour à l'accueil

Commentaires

Bonjour et merci pour tes articles. Juste deux commentaires : 1- La commande "drop database" n'est possible qu'en 10g. Pour les versions inférieures, il faut supprimer les fichiers à la main. 2- dbca = database configuration assistant et non database creator database.
Commentaire n°1 posté par Wahren le 31/01/2009 à 10h43
Bonjour,

tout a fait d'accord avec toi pour Oracle 10, d'ailleurs je l'ai précisé dans l'article. De manière générale, je concois mes post avec une version 10.
Et pour DCBA...., je me disais aussi qu'il y a avait quelque chose qui sonnait faux...
Merci.
LAO
Réponse de LAO le 31/01/2009 à 10h50
Pour être plus complet, voici ce que j'ai posté dans la liste cru.fr : Avant la 10g : - arrêter l'instance (et éventuellement le listener) - supprimer tous les fichiers au niveau OS (datafiles, controlfiles,redologs, archivelogs) - si Windows, oradim ... -delete pour supprimer le service - si Unix, supprimer l'entrée dans /etc/oratab - supprimer l'entrée du listener.ora (et éventuellement du tnsnames.ora) Pour localiser les fichiers : SELECT name FROM v$datafile; SELECT name FROM v$controlfile; SELECT member FROM v$logfile;
Commentaire n°2 posté par Wahren le 31/01/2009 à 22h57
Merci pour ta participation active.. J'ai ajouté dans le post le lien vers ton commentaire pour la suppression d'une base avant la version 10.

LAO. 
Réponse de LAO le 01/02/2009 à 11h18

Catégories

Recherche

Calendrier

Mars 2010
L M M J V S D
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
<< < > >>

Profil

  • : LAO
  • My Oracle blog
  • : Homme
  • : 06/05/1972
  • : IDF
Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus - Articles les plus commentés