• 締切済み

Oracleクライアントでのサービス名とSIDの指定について

どうもこんにちは。 WindowsXPを使用し、Oracle10のOracleクライアントの設定を行っていますが、TNS?の設定で疑問なところがあります。 接続するデータベースを識別するために、サービス名(グローバル・データベース名)かSIDを指定するそうですが、これはどちらを指定すればいいのでしょうか? サービス名を指定してもSIDを指定しても動くのですが、OracleNetManagerを使用すると、「Oracle8以前ではSIDを使用し、Oracle8以上ではサービス名を指定する」というような記述があります。 これは、「SIDを指定する方法はOracle8以前との互換性を保つために用意されており、Oracle8以降はSIDではなくサービス名を指定すべき」ということなのでしょうか? あるいは、「Oracle8以降ではどちらでも指定できる」ということなのでしょうか? web検索など利用していますが、なかなか情報が見つかりません。

  • Oracle
  • 回答数1
  • ありがとう数1

みんなの回答

  • toshi_2000
  • ベストアンサー率30% (306/1002)
回答No.1

>接続するデータベースを識別するために、サービス名(グローバル・データベース名)かSIDを指定するそうですが、これはどちらを指定すればいいのでしょうか? サービス名を指定します。 Oracle8,9では、どちらでも指定できます。

redasurc
質問者

お礼

回答ありがとうございます。 >>接続するデータベースを識別するために、サービス名(グローバル・データベース名)かSIDを指定するそうですが、これはどちらを指定すればいいのでしょうか? >サービス名を指定します。 サービス名を指定してもSIDを指定しても接続できたのですが、これは「サービス名で指定した方が望ましい」ということでしょうか。

関連するQ&A

  • ORACLE_SIDについて

    一つのサーバAがあったとします。このサーバに対してデータベース名が1,2,3,4,5というものが5つあったとします。この5つのデータベースに対して一つずつ、ORACLE_SIDが存在し、すべて同じorclだったとします。このようなことは可能でしょうか?また、可能であればクライアントからどのようにして接続先を選ぶのでしょうか?教えてください。

  • SIDの設定が保存されていない?

    ORACLEのDATABASEフォルダをコピーしてデータベースサーバーを移設しようとしております。 Listnerやtnsnameを設定し、下記のコマンドでSIDとサービスの登録を行いました。 Set ORACLE_SID=SID名 oradim80 -new -sid SID名 -intpwd ORACLE -startmode auto -pfile ~\initSID名.ora これでサービス起動し、接続も出来ました。 しかし、DOSプロンプトからSVRMGR30を実行するとまず接続出来ないと出て、その後にconnect internal/oracleとすると接続出来ませんでした。 試しに、初めにSet ORACLE_SID=SID名をしてからSVRMGR30を起動すると接続出来ました。 DATABASEフォルダをコピーしてくる方法ではSIDの設定は保持されないのでしょうか?こんな経験がありましたらどうか教えて下さい。 よろしくお願いします。 WindowsNT Oracle8.0.4

  • オラクルのグローバルデータベース名について

    グローバルデータベース名またはSIDはどこに設定されているのでしょうか?環境変数?レジストリ? 問題はOracle8iをアンインストールしてOracle9iのインストール時に同じグローバルデータベース名もしくはSIDがありますというエラーメッセージが出てしまいます。同じ名称でDBを作成したいのですが。 アドバイスお願いします。

  • Oracle9i Clientについて

    こんばんわ。 ORACLE勉強中の超入門者です。 今Windows2000ServerにOracle9iをインストールしています。 「Oracle9i Database 9.0.1.0.0」 「Oracle9i Management and Integration 9.0.1.0.0」 まで完了しました。 最後に、 「Oracle9i Client 9.0.1.0.0」 をインストールしようとしたのですが、最後の方で以下のエラーが発生します。 『それらを使用するプロセスに対応付けられたサービスはありません』 入門者のため、書籍を見ながら付属CD-ROMでインストールを進めています。 「Oracle9i Clinent ...」については、”クライアントはデータベースコンポーネントをインストールしたサーバ以外からデータベースアクセスする場合に必要となるものです。”と記載されていましたが、マシンが1台しか無いためデータベースサーバと同じマシンにインストールしようとしました。 『...サーバ以外からデータベースにアクセスする...』という記述部分が具体的にピンとこないのですが、例えばネットワーク経由(telnet?)でサーバにログインしてSQL*PLUSをたたくといった事の場合でしょうか?Clientを入れなくても同じマシン上でSQL*PLUSなどを使ってSQLをたたいたりということはできるのでしょうか? 各製品がどのような動きをするのかがわからないため、とりあえず全て不足の無いようインストールしようとしています。 上記のエラーについてですが、やはりデータベースと同じサーバ(マシン)にインストールしようとしているがために出たエラーなのでしょうか? よろしくお願いします。

  • オラクル8.1.7クライアントと9.2クライアントの共存がうまくいかず困っています

    オラクル初心者です。 オラクル8.1.7クライアントが導入されているWindows XP のPCに、オラクル9.2クライアントをインストールし、バッチプログラムで9.2用のorahomeを見に行くように設定してから、あるプログラムを起動させたところ、「ORA-12154: TNSサービス名を解決できませんでした」というエラーメッセージが出てしまいました。 TSNPINGを行ったのですが、問題なく通りました。 どなたか、解決方法を教えてください。お願いします。

  • SIDとは?

    Oracle使用の参考書を買ったんですが、データベースにはMysqlを使おうと思っていろいろとやっている最中です。XMLファイルの設定で『データベースのホスト、ポート番号、SID等は環境に合わせて変更する必要があります』と書かれてあるのですが、SIDとはなんなんでしょうか? また私がしようとしている、Oracle用に書かれてあるプログラムをMysqlに書きかえるってことは困難なのでしょうか?お願いします。

  • Oracleのアンインストール方法について

    元々、システムAAとBBを使用するためにOracle9iクライアントをインストールしていました。 システムCCを使用することになったのですが、Oracleがインストールされているか確認せずに、 新たにOracle9iクライアントをインストールしてしまいました。 現在、Oracle9iが2つ存在しています。2つのインストール先フォルダは、 (1)C:\ORACLE9 (2)D:\oracle ・・・元々インストールされていた方 おそらく、新たにインストールしてしまったOracleの方が悪さをしているのだと思うのですが、 システムAAを起動すると「ORA-121** TNS:サービス名が解決できませんでした。」というエラーが 表示されて、DBに接続できなくなってしまいました。 (システムCCは問題なく使用できます) 元々インストールされていた方(2)を確認すると、システムAA、BB、CCの各ネットサービス名が 設定されていました。 新たにインストールした方(1)は、システムCCのネットサービス名しか設定されていませんでした。 (1)の方の「C:\ORACLE9\network\ADMIN\tnsnames.ora」にシステムAAのやつを追記したけど、 上記エラーと同じエラーが表示されて接続できませんでした。 そこで、(1)の方のOracleをアンインストールして、システムAA、BB、CCが正常起動できるか確認 したいと思うのですが、Oracleのアンインストールはどのようにするのでしょうか。 アンインストールの方法をご教授下さい。

  • Oracle9iを再インストールするときに問題が発生します(以前のOracle9iを完全に削除したい)。質問その1

    Oracle初心者です。よろしくお願いします。2つほど質問があります。OSはWindowsXPProです。質問文が長いといわれたので、2つに分けますがよろしくお願いします。 Oracle9iの試用版をインストールしました。  しかし、インストール時にちょっと設定を失敗したため、もう一度インストールしようと思い、「setup.exe」をクリックし「Oracle Universal Installer」の画面が表示されました。そこから「製品の削除」を行いアンインストールしました。一応、Windowsの「プログラムの追加と削除」をみてOracleがアンインストールされていることを確認しました。  それから、もう一度、一からインストールを開始して画面を進めていったところ、「グローバルデータベース名」と「SID」を入力する際に、以前と同じデータベース名を入力すると「指定されたSIDは、マシン上にすでに存在します。別のSIDを指定してください」とのダイアログボックスがでます。できれば、以前と同じデータベース名およびSIDを指定したいのですが・・  また、「コントロールパネル」→「管理ツール」→「サービス」をみるとアンインストールしたはずなのに、Oracleのプロセスが3つほど開始されています。これはどういうことなんでしょうか?メモリも食いますし、削除したいんですが。。 普通にインストールするとOracleHTTPサーバ、ApacheJServ(JSP、サーブレットのコンテナ)が勝手にインストールされますが、これらは余分なので削除したいのですが・・ 長文を読んでいただきありがとうございました。

  • ORACLE9i Clientのエラーについて

    初めまして。 今、oracle9iのDBサーバーと、同じセグメントにあるclientをインストしたマシンで接続しようと頑張っているのですが、うまくいきません・・・。 設定としては、tnspingもOK出ているのですが、clientから sqlplus ID/PW@service_name で入ると 「ORA-12541 TNS リスナーがありません」 が出てしまって接続できません。 接続先のDBサーバーのリスナーも上がっているのは確認しています。 clientで接続する際には、DBサーバー側のlistener.oraも設定し直す必要があるのでしょうか?それとも他の設定ファイルを編集する必要があるのでしょうか? それとも、client側もリスナーあげなきゃいけないのでしょうか?? ちなみに今回設定をしたのは、client側のtnsnames.oraだけです。足りないのがあれば教えてください。よろしくお願いします! (↑すみません勉強不足で。。)

  • データベース接続時にTNSリスナーがアプリケーションエラー

    oracle9iでデータベースの作成中に TNSリスナーがアプリケーションエラーが起きたのですが、 そのまま無視してもデータベースの作成はできました。 それから接続時に必ずTNSリスナーでアプリケーションエラーが発生しますが、接続は可能になります。 ただし、アプリケーションエラーのタイミングでTNSリスナーサービスが終了してしまうようです。 それまで問題なく接続できていたDBに接続する場合にも上記の現象が発生するようになりました。 プラットフォーム:win2000advancedServer、oracle9iはフルインストール。ただし起動中のサービスは ・Oracle90Home90Agent ・Oracle90Home90TNSListener ・OracleServiceXXX(XXXはデータベース名称) データベースセットアップ内容は以下: 1.OracleDatabaseConfigurationAssistantを起動 2.「データベースの作成」を選択 3.「NewDatabase」を選択 4.サービス名とSIDを指定。ここではドメインを省略してグローバル・データベースとSIDを同じにした。 5.データベースオプションのデータベース機能を全部OFFにした。カスタムスクリプトはデフォルトのまま。 6.接続オプションとして専用サーバーモードを選択 7.初期化パラメータはデフォルトを使用 8.データベース記憶域はデフォルトを使用 9.作成オプションは「データベースの作成」を選択 現状、毎回接続前にリスナーサービスの起動をかければ接続時にアプリケーションエラーがおきても接続は可能になりますが、使用に耐えられません。。 ○インストール時にアプリケーションエラーが起きたデータベースを削除すればこの現象は回避できるのでしょうか?もしくはこの問題はoracleの再インストールを考慮した方が良いでしょうか。