Beaucoup de mes utilisateurs n'utilisent pas SQLPlus. Je ne peux pas leur donner un autre utilisateur. Nous expirons les mots de passe tous les 60 jours.
Je ne parviens pas à utiliser la commande SQLPlus "mot de passe" dans SQL Developer.
Je ne veux pas leur écrire un paquet pour changer leurs mots de passe car nous avons beaucoup de bases de données. Ai-je une meilleure option?
La syntaxe correcte pour la mise à jour du mot de passe à l'aide de SQL Developer est la suivante:
modifier l'utilisateur user_name identifié par "new_password" remplacer "old_password" ;
Vous pouvez vérifier plus d'options pour cette commande ici: http://docs.Oracle.com/cd/B28359_01/server.111/b28286/statements_4003.htm#i2058207
Dans une feuille de calcul SQL:
tapez "mot de passe" (sans les guillemets) Mettez en surbrillance, appuyez sur CTRL + ENTRÉE. L'écran de changement de mot de passe apparaît.
SQL Developer dispose d'une option de réinitialisation du mot de passe intégrée qui peut convenir à votre situation. Il faut également ajouter Oracle Instant Client au poste de travail. Lorsque le client instantané est dans le chemin lorsque le développeur SQL est lancé, l'option suivante est activée:
Oracle Instant Client n'a pas besoin de privilèges d'administrateur pour installer, mais simplement de la possibilité d'écrire dans un répertoire et de l'ajouter au chemin des utilisateurs. La plupart des utilisateurs ont les privilèges pour le faire.
Récapitulation: Pour utiliser Réinitialiser le mot de passe sur Oracle SQL Developer:
À ce stade, vous pouvez cliquer avec le bouton droit sur une source de données et réinitialiser votre mot de passe.
Voir http://www.thatjeffsmith.com/archive/2012/11/resetting-your-Oracle-user-password-with-sql-developer/ pour un aperçu complet
Voir également le commentaire dans la documentation Oracle: http://docs.Oracle.com/cd/E35137_01/appdev.32/e35117/dialogs.htm#RPTUG41808
Une configuration alternative pour que SQL Developer (testé sur la version 4.0.1) reconnaisse et utilise Instant Client sur OS X est la suivante:
(OS X) Reportez-vous à cette question pour résoudre les problèmes liés à la variable d'environnement DYLD_LIBRARY_PATH. J'ai utilisé la commande suivante puis redémarré SQL Developer pour prendre en charge la modification:
$ launchctl setenv DYLD_LIBRARY_PATH/chemin/vers/Oracle/instantclient_11_2
Vos utilisateurs peuvent toujours changer leurs mots de passe en "alter user onlyTheirUserName identifié par newpassword". Ils n'ont pas besoin du privilège ALTER USER pour changer leur propre mot de passe.
Selon les paramètres de l'administrateur, vous devrez peut-être utiliser votre ancien mot de passe à l'aide de l'option REPLACE.
alter user <username> identified by <newpassword> replace <oldpassword>
Pour être un peu clair:
Si le nom d'utilisateur: abcdef et l'ancien mot de passe: a123b456, nouveau mot de passe: m987n654
modifier l'utilisateur abcdef identifié par m987n654 remplacer a123b456;
Je me rends compte qu'il y a beaucoup de réponses, mais j'ai trouvé une solution qui pourrait être utile à certains. J'ai rencontré le même problème, j'utilise Oracle sql develop sur mon ordinateur local et j'ai beaucoup d'utilisateurs. Je me souviens du mot de passe d’un de mes utilisateurs et je l’ai utilisé pour réinitialiser le mot de passe d’autres utilisateurs.
Pas:
se connecter à une base de données en utilisant un utilisateur et un mot de passe valides, dans mon cas, tous mes utilisateurs ont expiré, à l'exception de "système" et je me souviens de ce mot de passe
trouvez le nœud "Other_users" dans l'arborescence comme le montre l'image ci-dessous
3.Dans l'arborescence "Other_users", recherchez les utilisateurs dont vous souhaitez réinitialiser le mot de passe, cliquez avec le bouton droit sur la note et sélectionnez "Modifier les utilisateurs".
4.mettez le nouveau mot de passe dans la boîte de dialogue d'édition d'utilisateur et cliquez sur "Appliquer". Assurez-vous que vous avez décoché "Mot de passe expiré (l'utilisateur doit modifier la prochaine connexion)".
Et cela a fonctionné pour moi. Ce n’est pas aussi efficace que les autres solutions, car vous devez être capable de vous connecter à au moins un compte mais cela fonctionne.
J'ai confirmé que cela fonctionne dans SQL Developer 3.0.04. Comme nos mots de passe doivent comporter un caractère spécial, la chaîne entre guillemets est nécessaire dans notre cas. Bien sûr, cela ne fonctionne que si le mot de passe n'a pas encore expiré et que vous êtes actuellement connecté.
ALTER USER MYUSERID
IDENTIFIED BY "new#password"
REPLACE "old#password"
L'option de réinitialisation du mot de passe intégrée peut ne pas fonctionner pour l'utilisateur. Dans ce cas, le mot de passe peut être réinitialisé à l'aide de l'instruction SQL suivante:
ALTER user "user" identified by "NewPassword" replace "OldPassword";
Essayez cette solution si l'option Réinitialiser le mot de passe (de SQL Developer) ne fonctionnait pas :
Étape 1: Ouvrez la ligne de commande Exécuter SQL (à partir du menu Démarrer, fourni avec le package d'installation de SQL Developer)
Étape 2: Exécutez les commandes suivantes:
Remarque: Si le mot de passe a déjà expiré, l'option Changing password for <user>
apparaîtra automatiquement.
Il existe un autre moyen de réinitialiser le mot de passe en passant par la commande Invite ...
1) Accédez au dossier de la base de données Oracle (dans mon cas, Oracle Database 11g Express Edition) dans le menu Démarrer.
2) Dans ce dossier , cliquez sur "Exécuter la ligne de commande SQL".
image du dossier de la base de données Oracle
3) Tapez " connectez-vous nom d'utilisateur/mot de passe " (votre nom d'utilisateur et votre ancien mot de passe sans les guillemets)
4) Le message affiché est ...
ERREUR: ORA-28001: le mot de passe a expiré
Changer le mot de passe pour hr
-> Nouveau mot de passe:
Entrez le nom d'utilisateur, le mot de passe image
5) Tapez le nouveau mot de passe
6) Retapez le nouveau mot de passe
7) Le message affiché est ...
Mot de passe modifié Connecté.
SQL>
8) ALLER À développeur SQL -> tapez le nouveau mot de passe -> connecté
vous pouvez trouver l'utilisateur dans la table DBA_USERS comme
SELECT profile
FROM dba_users
WHERE username = 'MacsP'
Maintenant, allez au sys/system (administrateur) et utilisez la requête
ALTER USER PRATEEK
IDENTIFIED BY "new_password"
REPLACE "old_password"
Pour vérifier le statut du compte, passez simplement par
SELECT * FROM DBA_USERS.
et vous pouvez voir le statut de votre utilisateur.
Vous pouvez maintenant le faire dans SQL Developer 4.1.0.17 , aucun PL/SQL n'est requis, en supposant que vous disposiez d'un autre compte disposant de privilèges administratifs:
Une note pour les personnes qui pourraient ne pas avoir le mot de passe défini pour sysdba ou sys et utiliser régulièrement un client tiers. Voici quelques informations sur la connexion à la ligne de commande sqlplus sans mot de passe qui m’a aidé. J'utilise Fedora 21 au fait.
locate sqlplus
Dans mon cas, sqlplus se trouve ici:
/u01/app/Oracle/product/11.2.0/xe/config/scripts/sqlplus.sh
Maintenant courir
cd /u01/app/Oracle/product/11.2.0/xe/config/scripts
./sqlplus.sh / as sysdba
Maintenant, vous devez vous connecter à la base de données avec vos anciennes informations d'identification. Vous pouvez trouver le modèle fourni par Oracle dans votre sortie:
Use "connect username/password@XE" to connect to the database.
Dans mon cas, j'ai l'utilisateur "Oracle" avec le mot de passe "Oracle" donc mon entrée ressemble à
connect Oracle/oracle@XE
Terminé. Maintenant, tapez votre nouveau mot de passe deux fois. Ensuite, si vous ne voulez plus que votre mot de passe expire, vous pouvez exécuter
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;