接続文 "sqlplus /"でsqlplusがユーザー名とパスワードをどのように受け取るのか疑問に思っていました。"sqlplus /"の動作方法
「sqlplus /」と別のユーザーで接続する場合は、どのように構成を変更できますか。私のスクリプト "sqlplus /"はharcodedであり、これを変更することはできません。ちょうど同じコマンドを使って別のユーザーと接続したい。 Oracleのドキュメントから
接続文 "sqlplus /"でsqlplusがユーザー名とパスワードをどのように受け取るのか疑問に思っていました。"sqlplus /"の動作方法
「sqlplus /」と別のユーザーで接続する場合は、どのように構成を変更できますか。私のスクリプト "sqlplus /"はharcodedであり、これを変更することはできません。ちょうど同じコマンドを使って別のユーザーと接続したい。 Oracleのドキュメントから
:
/
は、オペレーティング・システム認証を使用して、デフォルトのログオンを表します。デフォルトのログオンでは、SQL * Plusは通常、ユーザー名OPS $ nameを使用してログインしようとします.nameはオペレーティング・システムのユーザー名です。接頭辞 "OPS $"は他の文字列に設定できることに注意してください。
たとえば、INIT.ORAパラメータファイルの設定をLOGONnameまたはUSERIDnameに変更したい場合があります。オペレーティング・システム認証の詳細は、「Oracle9iデータベース管理者ガイド」を参照してください。
したがって、オペレーティングシステムの詳細を使用してOracleユーザー名を構成します。つまり、おそらく任意の名前を設定できません。
接頭辞を指定するOracle初期化パラメータは、OS_AUTHENT_PREFIX
であり、デフォルト値はOPS$
です。あなたはあなたはSQLPLUSを呼び出すスクリプトを変更することができない場合、行う、(徹底的にテストされていない)の線に沿って、オラクルの1の前のパスであなた自身 SQLPLUSスクリプトを挿入することである可能性があり
一つのこと:
#!/bin/bash
if [[ "$1" != "/" ]] ; then
$ORACLE_HOME/bin/sqlplus "[email protected]"
exit
fi
shift
$ORACLE_HOME/bin/sqlplus $MY_ORA_USER/$MY_ORA_PWD "[email protected]"
そして、これは、スクリプトによって呼び出されたものであろうと、それは簡単な/
だったかどうかを確認するために、最初のパラメータをチェックします。そうでなければ、同じパラメータで実際のsqlplus
を呼び出します。
それ以外の場合は、/
を、MY_ORA_*
環境変数で構成されたユーザー/パスワードに置き換えます。
SQLPLusが起動したら、独自のコマンドを実行できますか? SQL> connect "user/passw @ db" – Rene
'sqlplus'がハードコーディングされていても、同じ名前のラッパーを作成し、それをあなたの' PATH'に先に入れることができます。 – tripleee