Многие из моих пользователей не используют sqlplus. Я не могу дать им изменить пользователя. Мы теряем пароли каждые 60 дней.
Я не могу заставить команду sqlplus "пароль" работать в SQL-разработчике.
Я не хочу писать им пакет для изменения своих паролей, так как у нас много баз данных. У меня есть лучший вариант?
Правильный синтаксис для обновления пароля с помощью SQL Developer:
изменить пользователя имя_пользователя, идентифицированное "new_password" заменить "old_password" ;
Вы можете проверить дополнительные параметры этой команды здесь: http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_4003.htm#i2058207
alter user __user_name__ identified by "newp@ss!!!" replace "oldp@ss!!!"
Больше информации на asktom.oracle.com/pls/asktom/…
На листе SQL:
введите "пароль" (без кавычек) Выделите, нажмите CTRL + ВВОД. Появится экран смены пароля.
У SQL Developer есть встроенная опция пароля reset, которая может работать для вашей ситуации. Это требует добавления Oracle Instant Client на рабочую станцию. Когда мгновенный клиент находится в пути при запуске SQL-разработчика, вы получите следующий параметр:
Oracle Instant Client не нуждается в привилегиях администратора для установки, просто возможность писать в каталог и добавлять этот каталог к пути пользователей. У большинства пользователей есть привилегии для этого.
Recap: для использования reset пароля для Oracle SQL Developer:
На этом этапе вы можете щелкнуть правой кнопкой мыши источник данных и reset ваш пароль.
См. http://www.thatjeffsmith.com/archive/2012/11/resetting-your-oracle-user-password-with-sql-developer/ для полного прохода
Также см. комментарий в документах oracle: http://docs.oracle.com/cd/E35137_01/appdev.32/e35117/dialogs.htm#RPTUG41808
Альтернативная конфигурация, позволяющая SQL Developer (протестированная на версии 4.0.1) распознавать и использовать Instant Client на OS X:
(OS X) Обратитесь к этому вопросу, чтобы решить проблемы, связанные с переменной среды DYLD_LIBRARY_PATH. Я использовал следующую команду, а затем перезапустил SQL Developer, чтобы получить изменение:
$launchctl setenv DYLD_LIBRARY_PATH/путь/to/oracle/instantclient_11_2
Ваши пользователи могут по-прежнему изменять свои пароли с помощью "alter user onlyTheirUserName, идентифицированного newpassword". Они не должны иметь привилегии ALTER USER, чтобы изменить свой собственный пароль.
В зависимости от настроек администратора вам может потребоваться указать свой старый пароль, используя опцию REPLACE
alter user <username> identified by <newpassword> replace <oldpassword>
Чтобы сделать это немного ясно:
Если имя пользователя: abcdef и старый пароль: a123b456, новый пароль: m987n654
изменить пользователя abcdef, идентифицированный m987n654 заменить a123b456;
Я подтвердил, что это работает в SQL Developer 3.0.04. Наши пароли должны иметь специальный символ, поэтому в нашем случае необходима строка с двойными кавычками. Конечно, это работает только в том случае, если пароль еще не истек, и вы в настоящее время вошли в систему.
ALTER USER MYUSERID
IDENTIFIED BY "new#password"
REPLACE "old#password"
Я понимаю, что есть много ответов, но я нашел решение, которое может быть полезным для некоторых. Я столкнулся с той же проблемой, я запускаю oracle sql на моем локальном компьютере, и у меня есть куча пользователей. Я помню пароль для одного из моих пользователей, и я использовал его для reset пароля других пользователей.
Шаги:
подключиться к базе данных с использованием действительного пользователя и пароля, в моем случае все мои пользователи истекли, кроме "системы", и я помню этот пароль
найдите в дереве "Other_users" node, как показано ниже:
3.В дереве "Other_users" найдите своих пользователей, которым вы хотели бы reset пароль, и щелкните правой кнопкой мыши заметку и выберите "Редактировать пользователей"
4. Заполните новый пароль в окне редактирования пользователя и нажмите "Применить". Убедитесь, что вы сняли флажок "Пароль истек (пользователь должен изменить следующий логин)".
И это сработало для меня. Это не так хорошо, как другое решение, потому что вам нужно войти в систему хотя бы на одну учетную запись, но она работает.
Теперь вы можете сделать это в SQL Developer 4.1.0.17, не требуется PL/SQL, если у вас есть другая учетная запись с правами администратора:
вы можете найти пользователя в таблице DBA_USERS, например
SELECT profile
FROM dba_users
WHERE username = 'MacsP'
Теперь перейдите в sys/system (administrator) и используйте запрос
ALTER USER PRATEEK
IDENTIFIED BY "new_password"
REPLACE "old_password"
Чтобы проверить статус учетной записи, просто просмотрите
SELECT * FROM DBA_USERS.
и вы можете видеть статус своего пользователя.
Одно примечание для людей, у которых может не быть установленного пароля для sysdba или sys, и регулярно использовать сторонний клиент. Вот некоторая информация о входе в командную строку sqlplus без пароля, который мне помог. Кстати, я использую Fedora 21.
locate sqlplus
В моем случае sqlplus находится здесь:
/u01/app/oracle/product/11.2.0/xe/config/scripts/sqlplus.sh
Теперь запустите
cd /u01/app/oracle/product/11.2.0/xe/config/scripts
./sqlplus.sh / as sysdba
Теперь вам нужно подключиться к базе данных со старыми учетными данными. Вы можете найти шаблон, предоставленный Oracle, в своем выпуске:
Use "connect username/password@XE" to connect to the database.
В моем случае у меня есть пользовательский "oracle" с паролем "oracle", поэтому мой ввод выглядит как
connect oracle/oracle@XE
Готово. Теперь введите новый пароль дважды. Затем, если вы не хотите, чтобы ваш пароль истекал, вы можете запустить
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Существует еще один способ reset пароля через командную строку...
1) Перейдите в папку базы данных Oracle (в моем случае Oracle Database 11g Express Edition) в меню START MENU.
2) В этой папке нажмите "Запустить командную строку SQL"
Изображение папки базы данных Oracle
3) Тип " соединить имя пользователя/пароль" (ваше имя пользователя и старый пароль без кавычек)
4) Отображаемое сообщение...
ОШИБКА: ORA-28001: срок действия пароля истек
Изменение пароля для hr
- > Новый пароль:
Введите имя пользователя, изображение пароля
5) Введите новый пароль
6) Повторите новый пароль
7) Сообщение отображается...
Пароль изменен Connected.
SQL >
8) GO TO Sql developer → введите новый пароль → подключен
Встроенная опция пароля reset может не работать для пользователя. В этом случае пароль может быть reset, используя следующий оператор SQL:
ALTER user "user" identified by "NewPassword" replace "OldPassword";