- sqlnet.ora??
作用類似于linux或者其他unix的 nsswitch.conf文件,通過這個(gè)文件來決定怎么樣找一個(gè)連接中出現(xiàn)的連接字符串(connect descriptor)
假如sqlnet.ora 是下面這個(gè)樣子
NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME) |
當(dāng)客戶端輸入sqlplus sys/oracle@orcl時(shí), 就會首先在 tnsnames.ora文件中找orcl的記錄.如果沒有相應(yīng)的記錄則嘗試把orcl當(dāng)作一個(gè)主機(jī)名
括號中還有其他選項(xiàng),如LDAP等,但HOSTNAME,LDAP通常并不常用,通常只設(shè)TNSNAME即可. |
- tnsnames.ora
?? 1. 提供tnsname到主機(jī)名或者ip的對應(yīng)
ORCL =
(DESCRIPTION = ?? (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))??? ??? #對應(yīng)的SOCKET信息 ???? (CONNECT_DATA =??????????????????? ???????? (SERVER = DEDICATED)?? ??? ??? ??? #使用專用服務(wù)器模式去連接 ?????????? (SERVICE_NAME = orcl)? ????? ??? #這里填入對應(yīng) service_name, ?????????? ??? ??? ??? ??? ??? ??? ??? ???? 可以通過"SQLPLUS>show parameter service_name;"查看 )??????? SALES = (DESCRIPTION = ? (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.188.219)(PORT = 1521)) ? (CONNECT_DATA = ???? (SERVER = DEDICATED) ???? ( SERVICE_NAME = sales ) ?? ) ) |
?? 2. 配tnsname.ora里面的service_name,可以用下面命令查看:
SQL>
show parameter service_name;
NAME???????????????????????????????? TYPE??????? VALUE ------------------------------------ ----------- ------------------------------ service_names??????????????????????? string????? orcl |
? 3. tnsnames.ora是為oracle客戶端訪問數(shù)據(jù)庫而設(shè)的,不是為了遠(yuǎn)程客戶端連接oracle 服務(wù)器而設(shè)的
刪除tnsnames.ora
[oracle@oracle admin]$ rm tnsnames.ora |
重啟oracle |
本地客戶端無法訪問數(shù)據(jù)庫了 [oracle@oracle ~]$ sqlplus scott/scott@orcl SQL*Plus: Release 10.2.0.1.0 - Production on Tue Feb 16 17:32:41 2010 Copyright (c) 1982, 2005, Oracle.? All rights reserved. ERROR: ORA-12154: TNS:could not resolve the connect identifier specified |
在遠(yuǎn)端(另一臺機(jī)器)
通過sqlplus方式連接oracle數(shù)據(jù)庫,沒問題 通過jdbc連接orcle數(shù)據(jù)庫,沒問題? |
listener.ora
listener進(jìn)程接受遠(yuǎn)程對數(shù)據(jù)庫的接入請求
Listener.ora
?
?? #SID_LIST_LISTENER 定義, 定義LISTENER進(jìn)程監(jiān)聽SID
SID_LIST_LISTENER = (SID_LIST =??? ??? ??? ??? ??? ??? ??? #可以監(jiān)聽多個(gè)SID,都存在一個(gè)SID表中 ? (SID_DESC = ????? (GLOBAL_DBNAME = boway)?????? ? # GLOBAL_DBNAME不是必需的除非使用HOSTNAME做數(shù)據(jù)庫連接 ????? (ORACLE_HOME = E:\oracle\product\10.1.0\Db_2) ????? ( SID_NAME = orcl ) ? ) ) #監(jiān)聽器定義,一臺數(shù)據(jù)庫可以有不止一個(gè)監(jiān)聽器 LISTENER = ? (DESCRIPTION = ?????? (ADDRESS = (PROTOCOL = TCP)(HOST = boway)(PORT = 1521)) ?? ) |
JDBC連接請求的URL 要對應(yīng)Listener.ora
? jdbc:oracle:thin:@192.168.3.98:1521: orcl |
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
