oracle中的listener.ora和tnsnames.ora
一、oracle的客戶(hù)端與服務(wù)器端
???oracle在安裝完成后服務(wù)器和客戶(hù)端都需要進(jìn)行網(wǎng)絡(luò)配置才能實(shí)現(xiàn)網(wǎng)絡(luò)連接。?
???服務(wù)器端配置監(jiān)聽(tīng)器,客戶(hù)端配置網(wǎng)絡(luò)服務(wù)名?
?
服務(wù)器端可配置一個(gè)或多個(gè)監(jiān)聽(tīng)程序 。
二、oracle至少啟動(dòng)的服務(wù)
????如果通過(guò)網(wǎng)絡(luò)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)服務(wù)器,至少要啟動(dòng)OracleOraDb11g_home1TNSListener和OracleServiceORCL服務(wù)。?
如果本地訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)服務(wù)器,至少要啟動(dòng)OracleServiceORCL服務(wù)。?
網(wǎng)絡(luò)訪(fǎng)問(wèn):例: sqlplus scott/scott@orcl?
本地訪(fǎng)問(wèn):例: sqlplus scott/scott
三、詳細(xì)介紹
① 服務(wù)器端的監(jiān)聽(tīng)器的配置信息有:監(jiān)聽(tīng)協(xié)議(如:TCP/IP)、地址(端口號(hào))、其他相關(guān)信息,并將上述配置信息保存在listener.ora文件中,在安裝服務(wù)器軟件時(shí)自動(dòng)配置了一個(gè)監(jiān)聽(tīng)器。?
②客戶(hù)端的網(wǎng)絡(luò)服務(wù)名的配置信息有:服務(wù)器地址、監(jiān)聽(tīng)端口號(hào)、數(shù)據(jù)庫(kù)SID,與服務(wù)器的監(jiān)聽(tīng)器建立連接,保存于tnsnames.ora中。
oracle中用于配置監(jiān)聽(tīng)器和服務(wù)名的可視化工具為:?
?????Net Configuration Assistant (NETCA)?
?????Net Manager
四、監(jiān)聽(tīng)的啟動(dòng)于暫停
①在windows操作系統(tǒng)中,可以使用服務(wù)管理器(services.msc)中手動(dòng)啟動(dòng)與禁用。?
?
?
②在linux操作系統(tǒng)中(或者在dos中)
查看監(jiān)聽(tīng)當(dāng)前狀態(tài):lsnrctl status
啟動(dòng)監(jiān)聽(tīng) :lsnrctl starts
停用監(jiān)聽(tīng) : lsnrctl stop
五、三個(gè)重要的文件(進(jìn)行網(wǎng)絡(luò)配置)
???????????oracle11g中進(jìn)行網(wǎng)絡(luò)配置的主要文件有三個(gè),位于$ORACLE_HOME\NETWORK\ADMIN下的sqlnet.ora、listener.ora、tnsnames.ora文件。(前面已介紹過(guò)后兩個(gè)的作用)
sqlnet.ora的作用?
????????當(dāng)用戶(hù)登錄到操作系統(tǒng)后,如果進(jìn)而允許此用戶(hù)登錄數(shù)據(jù)庫(kù)系統(tǒng),則需要在sqlnet.ora中設(shè)置SQLNET.AUTHENTICATION_SERVICES= (NTS);?
????????如果設(shè)置為SQLNET.AUTHENTICATION_SERVICES= (NONE),則不允許登錄到數(shù)據(jù)庫(kù)系統(tǒng)中。
六、客戶(hù)端的兩種連接方式
1,簡(jiǎn)單連接:類(lèi)似conn scott/scott@計(jì)算機(jī)名:1521/orcl的連接方式,不需要客戶(hù)端進(jìn)行任何配置。?
2,本地命名:類(lèi)似conn scott/scott@orcl的連接方式,需要客戶(hù)端配置一個(gè)本地命名解析文件,為$ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora文件,可以使用netca配置。?
在sqlnet.ora文件中進(jìn)行規(guī)定。
七、Oracle11g的服務(wù)名的含義
服務(wù)名:???????服務(wù)名就是連接字符串,可以通過(guò)它訪(fǎng)問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù),可以通過(guò)NETCA配置,配置時(shí)要指明遠(yuǎn)程數(shù)據(jù)庫(kù)的主機(jī)名,網(wǎng)絡(luò)協(xié)議用TCP/IP,配置完成后可以用如 下方式登陸:(以服務(wù)名為test) username/password@test , 也就是:是對(duì)數(shù)據(jù)庫(kù)的一個(gè)標(biāo)識(shí),通過(guò)服務(wù)名可訪(fǎng)問(wèn)數(shù)據(jù)庫(kù) 。
測(cè)試服務(wù)能否連接上:tnsping <服務(wù)名>
八、注冊(cè)*(靜態(tài)注冊(cè)和動(dòng)態(tài)注冊(cè))
???????注冊(cè)就是將數(shù)據(jù)庫(kù)作為一個(gè)服務(wù)注冊(cè)到監(jiān)聽(tīng)程序,在數(shù)據(jù)庫(kù)服務(wù)器啟動(dòng)過(guò)程中,數(shù)據(jù)庫(kù)服務(wù)器會(huì)向監(jiān)聽(tīng)程序注冊(cè)相應(yīng)的服務(wù) 。
靜態(tài)注冊(cè)
在listener.ora中,如果有類(lèi)似?
SID_LIST_LISTENER =?
(SID_LIST =?
(SID_DESC =?
(GLOBAL_DBNAME = Orcl)?
(ORACLE_HOME = D:\app\Administrator\product\11.1.0\db_1)?
(SID_NAME = ORCL)?
)?
)?
,就是靜態(tài)注冊(cè)。
動(dòng)態(tài)注冊(cè)
在listener.ora中,如果有類(lèi)似?
LISTENER =?
(DESCRIPTION_LIST =?
(DESCRIPTION =?
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))?
(ADDRESS = (PROTOCOL = TCP)(HOST = a84p1l1x02meo8p)(PORT = 1521))?
)?
),就是動(dòng)態(tài)注冊(cè)。?
動(dòng)態(tài)注冊(cè)的一個(gè)特點(diǎn)就是不需要LISTENER.ORA文件。默?
認(rèn)情況PMON 向LSNRCTL 注冊(cè)TCP/IP協(xié)議,PORT 為1521。
???????使用lsnrctl status查看某個(gè)服務(wù)是靜態(tài)注冊(cè)、還是動(dòng)態(tài)注冊(cè);如果是UNKNOWN,表示靜態(tài)注冊(cè);如果是READY,表示動(dòng)態(tài)注冊(cè)。?
????????READY的服務(wù)是由PMON進(jìn)程動(dòng)態(tài)的注冊(cè)到監(jiān)聽(tīng)器,因此PMON進(jìn)程所在的數(shù)據(jù)庫(kù)一定處于打開(kāi)狀態(tài),所以說(shuō)這些服務(wù)名所對(duì)應(yīng)的實(shí)例已經(jīng)準(zhǔn)備好(READY)接受用戶(hù)的連接請(qǐng)求。?
????????UNKNOWN的服務(wù)是通過(guò)編輯listener.ora而靜態(tài)注冊(cè)的服務(wù)名,監(jiān)聽(tīng)器并不知道該服務(wù)名對(duì)應(yīng)的實(shí)例是否打開(kāi)了,所以用UNKNOWN表示。
動(dòng)態(tài)注冊(cè)、靜態(tài)注冊(cè)可以根據(jù)需要進(jìn)行轉(zhuǎn)換。
原文:https://blog.csdn.net/bibibrave/article/details/82355466?
總結(jié)
以上是生活随笔為你收集整理的oracle中的listener.ora和tnsnames.ora的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux oracle 数据库导出
- 下一篇: 高数:极限