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


4

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

データベースはOracleです。

回答:


2

データベースユーザーをOS認証として定義できます。 ティムホールのOracle_Base siteはこれを行う方法についての良い入門書を持っています。あなたは人々がSYSDBA権限でログインすることを許可する必要はありません、災害のレシピです。


「OS認証」を導入するための+1 thx。それについて知りませんでした。それを使用する機会がたくさんあるでしょう。
Alain Pannetier

オラクルはまた、LDAPサーバ、例えばドメイン認証のためのアクティブディレクトリに対して認証する能力を有する。あなたはその機能のための別の部分を必要とします - 追加されたコストオプション: - /
DCookie

確かに私は過去にOIDを実装しました。忘れてしまった…:-(明日このドメインをちりばめます。
Alain Pannetier

1

ユーザーが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 ;

それはバッチにはやり過ぎになるかもしれません(あなたがあなたのdbを台無しにするためのすべての特権を持っているという事実以外に)。

しかし、残念ながら、それが唯一の選択肢です。

更新 DCookieの答えを考えれば、これが唯一の方法ではありません。そして、私がすでに述べたようにDCookieによって強調されたように、これは非常に危険な道です。


それは唯一の選択肢ではありません、そしてそれはかなり危険なものでもあります。 SYSDBAユーザーはデータベースに対して何でもできます。それにもかかわらず、あなたはとにかくこれらの特権でログインできるようにするためにログインユーザーを設定する必要があります。
DCookie

@Alain Pannetierこんにちは、私は私のgentoo Linuxでoracle vmを使いました。私は同じ問題を抱いていた、私のOracleユーザーはOracleグループに属していますが、sysdbaとして接続することはできません。 DBは12c + oracle linuxです。何かコメントはありますか?私のORACLE_SIDはorclに設定されています。
pregmatch

1

SQL * Plusを起動すると、Oracle Databaseスキーマにログインするためのユーザー名とパスワードが必要です。ユーザー名とパスワードにより、ユーザーはOracle Databaseスキーマの承認ユーザーとして識別されます。

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


0

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


データベースはOracleです
sam
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.