web-dev-qa-db-ja.com

OracleでSQLplusを接続する

Oracleのsqlplusでユーザーsysを接続したいのですが、接続した後、次のように入力します。

sqlplus sys as sysdba
password:123456
Error:
  ORA-01030:insufficient privilege

  warning:You are no longer to connect Oracle.

誰かが私の問題を解決するのを助けてくれますか?

12
Sopolin

ご使用のオペレーティングシステムユーザーアカウントは、ORA_DBAグループ(windows)またはDBAグループ(* nix)のメンバーとしてログインしていますか?

答えが「はい」の場合、次にチェックすることは、sysdbaユーザーとして定義されているすべてのユーザーのパスワードが含まれているOracle_HOME\database\orapwORCL.oraファイルの存在を確認することです。存在しない場合は、データベースをシャットダウンしてorapwdユーティリティを実行する必要があります。

  • cd Oracle_HOME\database
  • orapwd file = orapwORCL.ora password = 123456 entries = 10

これにより、sysパスワードが123456として定義されます。これで、データベースを起動して、sys/123456をsysdbaとして接続できるようになります。

Sysdbaログインのpassword = based認証では、パスワードファイルが存在している必要があります。この理由は、データベースが起動しておらず、データベースがユーザーを認証できない場合は、sysdba接続を許可する必要があるためです。

7
DCookie

あなたの例は少し文字化けして見えます。ユーザーsysとパスワード123456を使用して、コマンドラインからsqlplusに接続するには、次のように入力します。

sqlplus sys/123456 as sysdba

または

sqlplus "sys/123456 as sysdba"

oracle 10より前。すでにsqlplus内にいる場合(例がSQL>で始まるという事実から推測します)、connectコマンドを使用します。

SQL> connect sys/123456 as sysdba

すべての場合で、環境変数Oracle_SIDを設定していない場合は、次のように、パスワードの後に​​それを指定する必要があります。

sqlplus sys/123456@<mydbname> as sysdba

ここで、<mydbname>は、Oracle 10以降を使用している場合は<hostname>/<sid>の形式、またはすべてのtnsnames.oraファイル($Oracle_HOME/network/adminにある)からの有効なエントリのいずれかです。バージョン。

20
Steve Broberg