Par sécurité, il est recommandé de changer son mot de passe de temps en temps et il en est de même pour les comptes Oracle. Le serveur de bases de données demande d’ailleurs de le modifier régulièrement (tous les 180 jours, soit environ tous les 6 mois), toutefois sans prévenir à l’avance que le compte sera verrouillé si cette opération n’est pas effectuée (sauf si on utilise ce compte dans les 7 jours qui précèdent l’expiration). Et c’est justement un problème parce qu’on se retrouve un beau matin avec le message « ORA-28001 : the password has expired » et donc impossible de se connecter avec le compte utilisateur en question.
Cet autre tutoriel explique comment modifier son password Oracle depuis la console web Enterprise Manager mais ce guide montre comment changer le mot de passe d’un utilisateur Oracle en ligne de commande, avec SQLPlus ou SQLDeveloper.
Cette procédure fonctionne pour les serveurs de BDD Oracle 11g et 12c, qu’il soit installé sur Windows Server, Linux, UNIX ou dans un docker.
Mettre à jour un mot de passe utilisateur Oracle
1. Se connecter au serveur Oracle, local ou distant, en SQL Plus ou avec SQL Developer, avec un compte utilisateur non expiré :
- sqlplus user/password@serveurdistant (où ‘distant‘ est l’alias de tnsnames.ora)
- ouvrir une connexion SQL Developer sur le serveur en question
2. Saisir la commande suivante :
ALTER USER username IDENTIFIED BY "motdepasse" ;
où username est le nom d’utilisateur et motdepasse le nouveau mot de passe.
Remarques : les guillemets sont optionnels mais indispensables en cas de caractères spéciaux, par exemple « mot&passe! » .
Il est possible de redéfinir le même mot de passe que celui précédemment utilisé. Cela ne modifiera donc pas le moyen d’accès des sessions enregistrées mais cela repoussera le délai d’expiration du compte.
3. Le retour doit être du type :
« Utilisateur modifié » (SQL Plus) ou « User username modifié(e) » (SQL Developer)
Et c’est reparti pour 180 jours de validité du mot de passe.
tres utile merci