Supprimer des utilisateurs ainsi que leurs propriétés associées est utile pour faire du ménage dans son serveur SGBD Oracle, pour supprimer des bases ou pour récupérer de l’espace disque. Il s’agit d’une opération classique de maintenance et qui ne nécessite pas de connaissances pointues en administration de bases de données.

Il existe deux manières d’annuler un user : on peut simplement supprimer le compte utilisateur ou supprimer le compte ainsi que ses objets (tablespace, etc). Dans ce cas, on ajoute l’attribut CASCADE.

Attention à ne pas supprimer un compte sys ou system au risque de planter le serveur Oracle.

La procédure est à réaliser avec un compte sys ou qui dispose au moins du privilège DROP USER.

 

Supprimer un utilisateur Oracle 12c avec la console Enterprise Manager

1. Se connecter à la console EM (avec un login autorisé à Drop user) : https://serveuroracle:5500/em

2. Aller à l’onglet Sécurité, Utilisateurs.

3. Sélectionner l’utilisateur à supprimer.

4. Cliquer sur le bouton « Supprimer un utilisateur » :

tutoriel oracle drop user

5. Laisser cochée la ligne « Cascade » pour supprimer les objets de cet utilisateur et valider par OK.

tutoriel oracle drop user

 

Supprimer un utilisateur en ligne de commande

1. Ouvrir la console SQL Plus (ou un cmd avec sqlplus)

2. Se connecter au serveur avec un compte qui dispose du droit Drop user : connect

3. Taper la commande : DROP USER nom CASCADE ;

4. La réponse doit être « Utilisateur supprimé. »

En savoir plus sur DROP USER

 

Erreur lors de la suppression ?

oracle drop user

ORA-01940 : cannot drop a user that is currently connected
ORA-06512

Si des connexions fantômes sont encore actives sur le serveur ou qu’une autre erreur empêche la suppression de l’utilisateur, suivre cette méthode plus radicale. Concrètement, on arrête le serveur pour le relancer en mode restrictif (seuls les DBA pourront s’y connecter) avant de le repasser en mode normal. Prévoir quelques minutes pour cette opération.

sqlplus oracle drop user restrict

connect /as sysdba

SHUTDOWN IMMEDIATE;

STARTUP RESTRICT;

DROP USER nom CASCADE ;

SHUTDOWN IMMEDIATE ;

STARTUP ;