初心者の質問で申し訳ないのですが。。。。
下記サイトからOracle Database 10g Client Release(10.2.0.3)を
ダウンロードしてインストールしました。
(URL)
http://www.oracle.com/technology/software/produc …
インストール後、Visual Studioの開発環境からデータソースの新規追加を行い、接続テストを試みたところ、
以下のエラーが出力されました。
(Error)
ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
いろいろ調べていると、上記エラーの発生原因として、tnsnames.oraファイルの内容に誤りがあるのでは?
という認識をもっているのですが、
肝心のtnsnames.oraファイルがOracle Clientのインストール環境下に存在しません。
そもそも、tnsnames.oraファイルというのは、クライアント側で設定するものではないのでしょうか??
基本的な質問で本当に申し訳ないのですが、
どなたかご回答をお願い致します。
No.4ベストアンサー
- 回答日時:
tnsnames.ora, listener.ora
たしかに、いろいろと分かりにくいですよね
今回のエラーは
ORA-12514: TNS:listener
でありますので、 DBサーバ側の tnsnames.oraは関係ありません。
listener.ora そして DBNAMEの問題です。
listenr.oraは、TNSリスナーの設定ファイルです。
質問に書かれているリンク先から、
Oracle Database 10g Release 2 (10.2.0.3/10.2.0.4)
Enterprise/Standard Edition for Microsoft Windows Vista and Windows 2008
をダウンロードして、インストールしたと理解しました。
>tnsnames.oraファイルというのは、クライアント側で設定するものではないのでしょうか
その通りです。詳細は異なりますが、おおまかに、
tnsnames.oraは、クライアントで設定します。
そして、サーバー側で設置するものが、
listener.oraです。
not currently know of service とあります。
これは、
サーバーのlistener.oraが設定している、Service名と、
クライアントの tnsnames.oraが設定いる Service名が一致しな
いことを意味しています
9i(正式には8i)以降は、listener.oraの中にサービス名を記入せず、
動的リスナーであることが多いので、今回は、すでに起動中の
リスナーから確認してみましょう
◆実際にやってみましょう
DBサーバー側で
コマンドプロンプトを起動してください
C:\Users\MOTOTAKA>lsnrctl
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 08-10月-2009
Copyright (c) 1991, 2006, Oracle. All rights reserved.
LSNRCTLへようこそ。詳細は"help"と入力してください。
◆状況を確認します
LSNRCTL> status
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))に接続中
リスナーのステータス
------------------------
別名 LISTENER
バージョン TNSLSNR for 32-bit Windows: Version 10.2.0.3.0 - Pr
開始日 08-10月-2009 23:57:00
稼働時間 0 日 0 時間 0 分 48 秒
トレース・レベル off
セキュリティ ON: Local OS Authentication
SNMP OFF
パラメータ・ファイル C:\oracle\product\10.2.0\db_1\network\admin\listener
ログ・ファイル C:\oracle\product\10.2.0\db_1\network\log\listener.
リスニング・エンドポイントのサマリー...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=MOTOTAKA-PC)(PORT=1521)))
サービスのサマリー...
サービス"ORCL_XPT"には、1件のインスタンスがあります。
インスタンス"orcl"、状態READYには、このサービスに対する1件のハンドラがあります
サービス"PLSExtProc"には、1件のインスタンスがあります。
インスタンス"PLSExtProc"、状態UNKNOWNには、このサービスに対する1件のハンドラが
サービス"orcl"には、1件のインスタンスがあります。
インスタンス"orclsid"、状態READYには、このサービスに対する1件のハンドラがあります
コマンドは正常に終了しました。
LSNRCTL>
いろいろありますが、この
サービス"orcl"には、1件のインスタンスがあります。
インスタンス"orclsid"、状態READYには、このサービスに対する1件のハンドラがあります
がサービス名です。ですので、この場合は、
サービス名が orcl
この名称(大文字小文字関係なし)と、
クライアントの tnsnames.ora のサービス名を合わせる必要があります。
ちなみに、
SID(インスタンス名)が orclsid
になります。
◆ クライアントの tnsnames.oraをみてみます
MMM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 15211))
)
(CONNECT_DATA =
(SID = XE)
)
)
このようになっていたら、
サービス名接続ではなく、SID接続になります。
よって、サービス名 orcl で接続させためには、
MMM =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 15211))
)
(CONNECT_DATA =
(SERVICE_NAME = ORCL)
)
)
としてください。
サービス名は、大文字小文字関係なしです。
これにより、
今回のエラー
ORA-12514: TNS:listener
は、解決します
Your DBA MOTO:TAKER
No.3
- 回答日時:
>データベースサーバはリモートのサーバ環境にあります。
>ただ、その場合でも、やはりOracle Clientをインストールした
>環境では、データベースサーバに接続するための情報を記述した
>tnsnames.oraファイルが必要になるのですよね??
はい、その通りです。
No.2
- 回答日時:
tnsnames.oraは、DBサーバでもクライアントでも使用します。
あるDBサーバから他のDBサーバに接続する時、接続情報はtnsnames.oraに設定されたものを使用します。
Oracleクライアントのみインストールした環境からDBサーバへアクセスする場合も、tnsnames.oraに設定されたものを使用します。
どこかに接続先の情報を設定しなければアクセスできませんよね?
そのリモートのサーバ環境のIPアドレスやらホスト名やらを設定するのがtnsnames.oraです。
というか、Oracleアプリケーション、Oracleサーバー間のネットワーク通信は「Oracle Net」という共通のコンポーネントを使用して行われます。
その設定ファイルとしてtnsnames.oraがあるわけです。
No.1
- 回答日時:
Oracle Clientのインストールの最後の方で,ネーミングメソッドが云々と言う画面が出てきて、そこに適当な値を設定すると、tnsnames.oraが作成されます。
tnsnames.oraがないのならインストールが中断したか、ネーミングメソッドの設定をキャンセルしたのでしょう。
ちなみに、Oracle Clientにはデータベースはないですけど。
データベースサーバに接続することだけが可能です。
データベースサーバはどこかほかにあるのですよね。
この回答への補足
ご回答ありがとうございます。
>ちなみに、Oracle Clientにはデータベースはないですけど。
>データベースサーバに接続することだけが可能です。
>データベースサーバはどこかほかにあるのですよね。
>
はい、そうですね。
データベースサーバはリモートのサーバ環境にあります。
ただ、その場合でも、やはりOracle Clientをインストールした
環境では、データベースサーバに接続するための情報を記述した
tnsnames.oraファイルが必要になるのですよね??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- ソフトウェア 移行PCにDockerがインストールされていても各種開発環境のアプリはインストールが必要? 2 2023/05/21 21:53
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- Windows 10 Windows Updateが動作しません 7 2022/08/12 16:26
- オープンソース Python openpyxlを使用したセル番地の使用について 1 2023/08/03 22:05
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- WordPress(ワードプレス) Wordpress 複数プラグインの不具合? 1 2022/10/09 21:52
- MySQL PHP 画像のアップロード Qiita 2 2022/11/28 04:44
このQ&Aを見た人はこんなQ&Aも見ています
-
あなたの「必」の書き順を教えてください
ふだん、どういう書き順で「必」を書いていますか? みなさんの色んな書き順を知りたいです。 画像のA~Eを使って教えてください。
-
スマホに会話を聞かれているな!?と思ったことありますか?
スマートフォンで検索はしてないのに、友達と話していた製品の広告が直後に出てきたりすることってありませんか? こんな感じでスマホに会話を聞かれているかも!?と思ったエピソードってありますか?
-
【お題】マッチョ習字
【大喜利】 「精神を鍛えるため」にと、ジムから書初めの宿題を出されたマッチョたちが半紙に書いてきたこと
-
自分の通っていた小学校のあるある
進学したり大人になってから、「あれって自分の小学校だけだったのかな」と思うことありますよね。 逆に「他の小学校ってそんなことするの!?」と思ったり。 そんな「自分の通っていた小学校」のあるあるを教えてください!
-
2024年においていきたいもの
2024年もあとわずかですが、いま抱えているもので「これは来年にもっていきたくないなぁ」というものを教えて下さい。
-
passwordが入れられません・・・・
PostgreSQL
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SIDとSERVICE_NAMEの違いとは?
-
サーバ上のOracleデータベース...
-
ORA-01092 ORACLEインスタンス...
-
突然オラクルへ接続できなくな...
-
CloverをインストールしたUSBメ...
-
倒産した18禁ゲーム会社のパ...
-
WiFi環境があればTikTokLiteは...
-
ORA-12170のエラーについて
-
DB作成中のエラーについて
-
PCゲーム Hard☆Love☆Life
-
.NET Frameworkがコントロール...
-
SQL*PLUSにてデータベース名表示
-
東方紅魔郷
-
ダークソウル3のたまねぎ頭NPC...
-
SQLServer2005上の別DBからテ...
-
シムシティ4 DX をCDなしで遊び...
-
Oracle DBに接続できなくなりま...
-
データーベースはないがいいで...
-
AutoCAD lt 2006インストールで...
-
ORAー12560:TNS:protocol adap...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SIDとSERVICE_NAMEの違いとは?
-
突然オラクルへ接続できなくな...
-
異なる文字コードの環境にイン...
-
ORA-01092 ORACLEインスタンス...
-
tnsnames.oraファイルについて
-
サーバ上のOracleデータベース...
-
DBサーバの接続エラー
-
OracleDB接続エラー(ORA-12541...
-
Enterprise Manager を使用し、...
-
ORA-12514が出た時の対処法と原因
-
共有サーバ接続で ora-12523
-
OracleClientサーバIPアドレス変更
-
SID、SERVICE_NAMES、GLOBAL_DB...
-
OracleのWindowsプロセス名
-
HTTPリスナー
-
ログを見ても無応答の原因がつ...
-
Oracleのデータベースが使用不可に
-
OracleのUID
-
TNSListener サービスを再起動...
-
SQLNET.ORAの設定について
おすすめ情報