it-swarm-ja.com

ユーザー名とパスワードなしでOracleデータベースにログインします

ユーザー名とパスワード(rootとして)を指定せずにUnixスクリプトからSQLファイルを実行してデータベースにログインしたい。これは可能ですか?

データベースはOracleです。

5
sam

データベースユーザーをOS認証済みとして定義できます。 Tim HallのOracle_Base サイトには、これを行う方法についての優れた入門書があります。災害のレシピであるSYSDBA権限でログインすることを許可する必要はありません。

3
DCookie

ユーザーがOracleグループに属している場合は、SYSDBAとして接続できます。

Unix環境での例:

$ export Oracle_SID=MYDB
$ sqlplus /nolog

SQL*Plus: Release...

SP2-0640: Not connected
sql> connect / as sysdba
Connected

SQL> select * from scott.employees ;

これは、バッチにとってはやり過ぎかもしれません(データベースを台無しにするすべての特権があるという事実を除けば)。

ただし、AFAIK、それが唯一のオプションです。

[〜#〜] update [〜#〜] DCookieの答えを考えると、これが唯一の方法ではありません。そして、私がすでに述べ、DCookieによって強調したように、これは非常に危険な道です。

1
Alain Pannetier

SQL * Plusを起動するときは、OracleDatabaseスキーマにログインするためのユーザー名とパスワードが必要です。ユーザー名とパスワードは、OracleDatabaseスキーマの許可ユーザーとしてユーザーを識別します。

データベース管理者(DBA)は、必要な権限でデータベースアカウントを作成し、アカウントにアクセスできるようにするユーザー名とパスワードを提供する責任があります。

1
user3206566

PostgreSQLを使用している場合は、「pg_hba.conf」ファイルでローカルホストネットワークの「trust」メソッドを指定できます。 MySQLの場合、似たようなものがあるかもしれませんが、よくわかりません(PostgreSQLでない場合は、使用しているデータベースに精通している誰かがこれを支援してくれることを願っています)。

0