Oracle原理:11g中的网络配置
目錄
1.11g的網(wǎng)絡(luò)連接方式
2.? ?11g中網(wǎng)絡(luò)配置的主要文件
3.靜態(tài)注冊和動(dòng)態(tài)注冊
4.netca和netManager
?
1.11g的網(wǎng)絡(luò)連接方式
? ?在WINDOWS下,安裝完Oracle會(huì)自動(dòng)完成好網(wǎng)絡(luò)配置實(shí)現(xiàn)網(wǎng)絡(luò)連接,但是在Linux下,得自己手動(dòng)配置才行。客戶端有tnsnames.ora的配置文件來配置網(wǎng)絡(luò)服務(wù)名,如服務(wù)器地址,監(jiān)聽端口,數(shù)據(jù)庫SID等。而服務(wù)器端有l(wèi)istener.ora配置文件來配置監(jiān)聽器,如監(jiān)聽協(xié)議、地址及其他信息。從本地訪問數(shù)據(jù)庫服務(wù)器,首先要開啟OracleServiceORCL服務(wù),如果是通過網(wǎng)絡(luò)訪問數(shù)據(jù)庫服務(wù)器,還要啟動(dòng)OracleOraDb11g_home1TNSListener服務(wù)。
? lsnrctl? [status/start/stop]??
? 在WINDOWS和Linux下都可以用上面的命令來查看/開啟/停止監(jiān)聽服務(wù),當(dāng)然如果是在WINDOWS下還可以在控制面板的服務(wù)里通過可視化界面直接?查看/開啟/停止服務(wù)。
2.? ?11g中網(wǎng)絡(luò)配置的主要文件
主要文件有三個(gè),都位于 $ORACLE_HOME\NETWORK\ADMIN路徑下的 sqlnet.ora 、listener.ora、tnsnames.ora.我的這三個(gè)文件在D:\oracle\product\11.2.0\dbhome_3\NETWORK\ADMIN。直接可以用可視界面進(jìn)行修改參數(shù),或者用vim編輯。
2.1 打開sqlnet.ora 里面有這一句話:SQLNET.AUTHENTICATION_SERVICES= (NTS) 這是基于操作系統(tǒng)的驗(yàn)證方式。這可以讓你在以管理員身份登錄操作系統(tǒng)時(shí),可以無需輸入用戶密碼就可以以SYSDBA角色直接登錄上,如下圖所示。如果把NTS改成NONE,那么就是以口令形式進(jìn)行登錄,此時(shí)就不可以無密碼直接登錄了。
sqlnet.ora 里面有還有一句話:NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT) , 這個(gè)是連接方式。默認(rèn)是先按照tnsnmanes.ora文件里指定的連接方式,如果在文件里查無相應(yīng)記錄則會(huì)用簡單連接的方式嘗試連接。想要用什么連接方式連接往括號(hào)里面加參數(shù)就行,不想用該連接方式就刪除對(duì)應(yīng)參數(shù)即可。參數(shù)有TNSNAMES,ONAMES,HOSTNAME,EZCONNECT。越前面的參數(shù)的越先用對(duì)應(yīng)的方式嘗試連接。
sqlplus user/password@IP:端口/orcl --在cmd窗口下 conn user/password@IP:端口orcl --在SQLPLUS窗口下 例如: sqlplus voapd/voapd@hu-PC/orcl像這種方式就是簡單連接,如果出現(xiàn)oracle中監(jiān)聽程序當(dāng)前無法識(shí)別連接描述符中請(qǐng)求服務(wù)的錯(cuò)誤,可以參考
https://www.cnblogs.com/telwanggs/p/10935367.html?的解決方案。
2.2listener.ora文件里有(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))? ? ? ,這個(gè)是調(diào)用外部過程的監(jiān)聽,比如調(diào)用C++/JAVA等一些高級(jí)語言的方法程序來完成相應(yīng)的任務(wù),如果把這行刪了,就無法調(diào)用外部過程了.
GLOBAL_DBNAME :全局?jǐn)?shù)據(jù)庫名。通過select * from global_name; 查詢得出 。
PROTOCOL:監(jiān)聽協(xié)議,一般都使用TCP?
LISTENER :監(jiān)聽名稱,可以配置多個(gè)監(jiān)聽。
GLOBAL_DBNAME:全局?jǐn)?shù)據(jù)庫名
SID_NAME:服務(wù)名,通常和全局?jǐn)?shù)據(jù)庫名一致。
我的配置如圖:
2.3.在客戶端沒有tsnames.ora文件時(shí),除了復(fù)制別人的,還可以用netca進(jìn)行可視化配置。沒有tsnames,ora文件也就無法按照tnsnmanes.ora文件里指定的連接方式進(jìn)行連接了。
打頭的左對(duì)齊的變量就是服務(wù)名(SID),例如上文的ORCL、ORACLR_CONNECTION_DATA。
其中在ADDRESS 寫上要連接服務(wù)器的端的信息,連接方式TCP,主機(jī)為hu-PC端口為1521,當(dāng)然HOST也可以是IP地址、域名等.
可以在 cmd窗口中 輸入? tnsping [服務(wù)名]? 來看能不能ping通服務(wù),而這里的服務(wù)名就是tsnames.ora里的SID來查找的。
3.靜態(tài)注冊和動(dòng)態(tài)注冊
? 3.1 在listener.ora里如果有類型下面的語句就是靜態(tài)注冊,指明了全局?jǐn)?shù)據(jù)庫名,服務(wù)名,Oracle主目錄等。
SID_LIST_LISTENER =(SID_LIST =(SID_DESC =(SID_NAME = CLRExtProc)(ORACLE_HOME = D:\oracle\product\11.2.0\dbhome_3)(PROGRAM = extproc)(ENVS = "EXTPROC_DLLS=ONLY:D:\oracle\product\11.2.0\dbhome_3\bin\oraclr11.dll"))(SID_DESC =(GLOBAL_DBNAME = ORCL)(ORACLE_HOME = D:\oracle\product\11.2.0\dbhome_3)(SID_NAME = ORCL)))3.2 在listener.ora里如果有類型下面的語句就是動(dòng)態(tài)注冊
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = hu-PC)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))?))在cmd中輸入lsnrctl status? 如果狀態(tài)為UNKNOWN就是靜態(tài)注冊,如果是READY就是動(dòng)態(tài)注冊.動(dòng)態(tài)注冊可以不需要listener.ora文件。在啟動(dòng)監(jiān)聽服務(wù)時(shí)需要讀取listener.ora文件內(nèi)容,如果沒有l(wèi)istener.ora文件時(shí),默認(rèn)情況PMON會(huì)向LSNTCTL動(dòng)態(tài)注冊協(xié)議為TCP/IP,端口為1521注冊到監(jiān)聽器。
?lsnrctl status 來查看我監(jiān)聽狀態(tài)
?想要靜態(tài)注冊和動(dòng)態(tài)注冊之間轉(zhuǎn)化,就需要把listener.ora的靜態(tài)注冊的部分給刪掉,或者把listener.ora給刪除。重啟服務(wù)如圖所示。在讀listener.ora文件內(nèi)容里要是沒有相應(yīng)的靜態(tài)注冊信息,待PMON進(jìn)程重啟后會(huì)對(duì)監(jiān)聽器進(jìn)行動(dòng)態(tài)注冊。
由于PMON后臺(tái)進(jìn)程是隨著數(shù)據(jù)庫打開才會(huì)打開的,動(dòng)態(tài)注冊大概需要1分鐘才能完成。
?
4.netca和netManager
? ? 以管理員的身份啟動(dòng)cmd,輸入netca會(huì)有一個(gè)界面,如圖,這是一個(gè)對(duì)參數(shù)文件進(jìn)行修改的可視化界面,要比上面操作文件來改參數(shù)要方便得多。監(jiān)聽程序配置實(shí)際上就是配置listener.ora配置文件的可視化界面。命名方法配置是配sql,ora的,本地網(wǎng)絡(luò)服務(wù)配置tsnames.ora的。
在WIN菜單下搜索net Manageer打開,這里面可以進(jìn)行靜態(tài)注冊,選擇添加數(shù)據(jù)庫,寫入相應(yīng)的信息,Oracle主目錄就是ORACLE_HOME.
添加完數(shù)據(jù)庫后,重啟lsnrctl服務(wù)等待1分鐘。
可以重新查看listener.ora文件,發(fā)現(xiàn)靜態(tài)注冊信息又添加上去了。
注意:不建議直接手動(dòng)操作配置文件,盡量采用可視化管理工具來操作。如果出現(xiàn)TNS監(jiān)聽異常,或者服務(wù)無法打開,嘗試把listener.ora備份后刪除,在重新用可視化工具進(jìn)行配置。
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Oracle原理:11g中的网络配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle 原理:用户和权限,Prof
- 下一篇: Oracle原理: 行级锁和表级锁