web-dev-qa-db-ja.com

Oracleでsysdbaによって他のアカウントにどのようにログインしますか?

Hrのパスワードを忘れましたが、sysdbaの役割を持っています。

Linuxのようにsu hrを使用できますか?.

hrのパスワードを変更したくありません。

3
zhanzezhu

別のユーザーとしてログインするのは本当に簡単です。8i以降で使用できるプロキシユーザー機能を使用するだけです。残念ながら、SYSでは機能しませんが、他のユーザーでは機能します。基本的に、ユーザーに別のユーザーとして接続する権限を与えることができます。

SQL> alter user system identified by Oracle123;

User altered.

SQL> alter user hr identified by password account unlock;

User altered.

したがって、SYSTEMのパスワードはOracle123、およびHRのパスワードはpasswordです。ここで、SYSTEMHRとして接続することを許可します。

SQL> alter user hr grant connect through system;

User altered.

最後に、SYSTEMとそのパスワードを使用して接続し、HRを角かっこで囲みます。

SQL> connect system[hr]/Oracle123
Connected.
SQL> show user
USER is "HR"

SYSを除くすべてのユーザーを使用できます。

SQL> alter user hr grant connect through sys;
alter user hr grant connect through sys
                                    *
ERROR at line 1:
ORA-28154: Proxy user may not act as client 'SYS'
6
Balazs Papp

以下のコマンドを使用してパスワードを変更できます

alter user username identified by newpassword;
0
Sandeep