• 締切済み

接続識別子について

Oracle DatabaseにSQP*Plusを使って、接続する際に、 接続識別子を入力すると思うのですが、 接続識別子とはどういう役割をしているのでしょうか? また、接続識別子を使う場合と使わない場合では、どう違うのでしょうか? 接続識別子がいまいち理解できませんでした・・・

みんなの回答

回答No.3

>接続識別子とはどういう役割をしているのでしょうか? 接続すべきオラクルサービスの識別と接続プロトコルの決定です。 通常は、tnsnames.oraに記述した識別名(=の左側の文字列)を指定しますが、 オラクルサービスの識別とプロトコルの決定が目的の指定なので、tnsnames.oraの右側に書いてある 長い記述をそのまま指定しても接続できます。 例えば、 sqlplus scott/tiger@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hoge)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=hogedb))) 長い記述が大変なので、tnsnames.oraで簡略名を定義し、接続先を簡易に指定できると思えば宜しいかと思います。 >接続識別子を使う場合と使わない場合では、どう違うのでしょうか? 接続識別子を指定しない場合、環境により動作が異なります。 サーバでもクライアントも、環境変数(Win版はLOCAL、UNIX版はTWO_TASK)が設定されていれば、 その値を指定したものとして接続します。 例えば、SET LOCAL=HOGEDBなら、sqlplus scott/tigerもsqlplus scott/tiger@HOGEDBも同じ動作をします。 環境変数LOCALやTWO_TASKが指定されていない場合、環境変数ORACLE_SIDやレジストリORACLE_SIDに従い リスナーを経由しない接続を行います。

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.2

#1 です。 >黒本で、DBAの勉強をしているのですが、 >オススメのサイトとかありませんか? ご存知かもしれませんが、基本はやはり本家OTNでしょう。 ↓ Oracle Technology Network http://www.oracle.com/technology/global/jp/index.html 後は、こことかかな。 ↓ Oracle DBA, Oracle SQL and PL/SQL Tips http://www.shift-the-oracle.com/

  • utakataXEX
  • ベストアンサー率69% (711/1018)
回答No.1

⇒sqlplus uid/pwd@connstr クライアントPCからサーバーに接続しに行く時は 「どこのサーバーのどのインスタンスに接続するのか」 が必要なので、接続識別子が必要です。 ⇒sqlplus uid/pwd 自分のローカルPCにインスタンスがある(つまりサーバー側 で作業している)なら、ユーザーIDとパスワードだけで接続 できます。

herodeep05
質問者

お礼

ありがとうございます。 黒本で、DBAの勉強をしているのですが、 オススメのサイトとかありませんか? (Oracleの管理担当を引き継ぐための勉強です)

関連するQ&A