新聞中心
在IT領(lǐng)域中,數(shù)據(jù)庫是非常重要的組成部分。數(shù)據(jù)庫的監(jiān)聽端口號則是一種很關(guān)鍵的設(shè)置,決定了數(shù)據(jù)庫與其它應(yīng)用程序之間的交流是否暢通。在這篇文章中,我們將會探討。

成都創(chuàng)新互聯(lián)從2013年成立,先為章貢等服務(wù)建站,章貢等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為章貢企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
什么是數(shù)據(jù)庫監(jiān)聽端口號?
在計算機系統(tǒng)中,所有應(yīng)用程序都需要通過端口號來與其它程序交流。而數(shù)據(jù)庫就是數(shù)值系統(tǒng)中非常重要的組成部分之一。數(shù)據(jù)庫系統(tǒng)使用端口號進行進程間通信,以便服務(wù)器等應(yīng)用程序與其它設(shè)備或應(yīng)用程序之間的相互連接。每個端口號對應(yīng)著一個特定的應(yīng)用程序,因此端口號是非常重要的網(wǎng)絡(luò)通信元素。
數(shù)據(jù)庫監(jiān)聽端口號是哪里來的?
在安裝和配置數(shù)據(jù)庫服務(wù)器時,系統(tǒng)會為每個數(shù)據(jù)庫實例分配一個監(jiān)聽端口號。這個端口號是由數(shù)據(jù)庫管理員手動設(shè)置的,通常情況下由數(shù)據(jù)庫服務(wù)器動態(tài)分配。因此,數(shù)據(jù)庫操作員應(yīng)該確認服務(wù)器配置中包括一個端口號,以便管理控制與服務(wù)器之間的通信。
如何更改數(shù)據(jù)庫監(jiān)聽端口號?
更改數(shù)據(jù)庫監(jiān)聽端口號的方法有兩種:
方法一:通過數(shù)據(jù)庫管理工具或配置文件更改端口號。
最直接更改數(shù)據(jù)庫監(jiān)聽端口號的方法是打開數(shù)據(jù)庫系統(tǒng)配置文件或相應(yīng)的管理工具。例如,在SQL Server中,系統(tǒng)管理員可以在SQL Server配置管理器的網(wǎng)絡(luò)配置中更改默認端口號。另外,同樣在SQL Server中,也可以通過T-SQL語句更改端口號。該語句如下所示:
EXEC sp_configure ‘network packet size’, 5000;
GO
RECONFIGURE;
GO
EXEC sp_configure ‘listen all’, 1;
GO
RECONFIGURE;
GO
運行上述代碼后,輸入另一個端口號的值來替換默認端口號,即可更改監(jiān)聽端口號。
方法二:通過端口映射更改數(shù)據(jù)庫監(jiān)聽端口號。
如果需要訪問數(shù)據(jù)庫服務(wù)器的客戶端或外部網(wǎng)絡(luò)在防火墻、NAT或代理服務(wù)器后面,并且禁止直接訪問數(shù)據(jù)庫服務(wù)器,則可以使用端口映射更改監(jiān)聽端口號。端口映射將有關(guān)通信協(xié)議、地址和端口的信息映射到目標服務(wù)器的另一個端口上。例如,您可以將外部網(wǎng)絡(luò)一個端口發(fā)送到內(nèi)部端口,從而實現(xiàn)訪問數(shù)據(jù)庫的目的。
數(shù)據(jù)庫監(jiān)聽端口號的正確設(shè)置對數(shù)據(jù)庫服務(wù)器的安全和穩(wěn)定至關(guān)重要。在本文中,我們介紹了兩種不同的更改數(shù)據(jù)庫監(jiān)聽端口號的方法。在具體實踐操作中,一定要小心謹慎,確保操作正確,避免影響到數(shù)據(jù)庫系統(tǒng)的正常運行。
相關(guān)問題拓展閱讀:
- oracle如何配置監(jiān)聽
- Oracle數(shù)據(jù)庫監(jiān)聽配置
- 服務(wù)器的偵聽端口是什么意思
oracle如何配置監(jiān)聽
一、監(jiān)聽器(LISTENER)
監(jiān)聽器是Oracle基于服務(wù)器端的一種網(wǎng)絡(luò)服務(wù),主要用于監(jiān)聽客戶端向數(shù)據(jù)庫服務(wù)器端提出的連接請求。既然是基于服務(wù)器端的服務(wù),那么它也只存在于數(shù)據(jù)庫服務(wù)器端,進行監(jiān)聽器的設(shè)置也是在數(shù)據(jù)庫服務(wù)器端完成的。
二、本地服務(wù)名(Tnsname)
Oracle客戶端與服務(wù)器端的連接是通過客戶端發(fā)出連接請求,由服務(wù)器端監(jiān)聽器對客戶端連接請求進行合法檢查,如果連接請求有效,則進行連接,否則拒絕該連接。
本地服務(wù)名是Oracle客戶端網(wǎng)絡(luò)配置的一種,另外還有Oracle名字服務(wù)器(Oracle Names Server)等。Oracle常用的客戶端配置就是采用的本地服務(wù)名,本文中介紹的也主要是基于本地服務(wù)名的配置。
三、Oracle網(wǎng)絡(luò)連接兄喚配置方法
配 置Oracle服務(wù)器端與客戶端都可以在其自帶的圖形化Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)里完成(強烈建議在這個圖形化的工具下完成Oracle服務(wù)端或客戶端的配置)。在Windows下,點擊“開始/程序/Oracle – OraHome92/Configuration and Migration Tools/Net Manager”啟動Oracle網(wǎng)絡(luò)管理器工具,在Linux/Unix下,利用netmgr命令來啟動圖形化Oracle網(wǎng)絡(luò)管理器,如:
$ netmgr
Windows下啟動Net Manager圖形窗口如下圖示:
圖(一)
1、 Oracle監(jiān)聽器配置(LISTENER)
如 圖(一)示,選中樹形目錄中監(jiān)聽程序項,再點擊左上側(cè)“+”按鈕添加監(jiān)聽程序,點擊監(jiān)聽襲絕程序目錄,默認新加的監(jiān)聽器名稱是LISTENER(該名稱也可以 由任意合法字符命名)。選中該名稱,選中窗口右側(cè)欄下拉選項中的“監(jiān)聽位置”,點擊添加地址按鈕。在出現(xiàn)的網(wǎng)絡(luò)地址欄的協(xié)議下拉選項中選中 “TCP/IP”,主機文本框中輸入主機名稱或IP地址(如果主機即用作服務(wù)端也作為客戶端,輸入兩項之一均有效;如果主機作為服務(wù)端并需要通過網(wǎng)絡(luò)連 接,建議輸入IP地址),端口文本框中輸入數(shù)字端口,默認是1521,也可以自定義任意有效數(shù)字端口。配置好的監(jiān)聽位置如下圖示:
圖(二)
選 中窗口右側(cè)欄下拉選項中的“數(shù)據(jù)庫服務(wù)”,點擊添加數(shù)據(jù)庫按鈕。在出現(xiàn)的數(shù)據(jù)庫欄中輸入全局數(shù)據(jù)庫名,如myoracle。注意這里的全局數(shù)據(jù)庫名與數(shù)據(jù) 庫SID有所區(qū)別,全局數(shù)據(jù)庫名實際通過域名來控制在同一網(wǎng)段內(nèi)數(shù)據(jù)庫全局命名的唯一性,就如Windows下的域名控制器,如這里可以輸入 myoracle.192.168.1.5。Oracle主目錄可以不填寫,輸入SID,如myoracle。完整的數(shù)據(jù)庫服務(wù)配置如下圖示:
圖(三)
保 存以上配置,默認即可在Oracle安裝目錄下找到監(jiān)聽配置文件 (Windows下如D:oracleora92networkadminlistener.ora,Linux/Unix下$ ORACLE_HOME/network/admin/listerer.ora)。至此,Oracle服務(wù)端監(jiān)聽器配置已經(jīng)完成。
2、 本地服務(wù)名配置(Tnsnames)
本 地服務(wù)名是基于Oracle客戶端的網(wǎng)絡(luò)配置,所以,如果客戶端需要連接數(shù)據(jù)庫服務(wù)器進行操作,則需要配置該客戶端,其依附對象可以是任意一臺欲連接數(shù)據(jù) 庫服務(wù)器進行操作的pc機,也可以是數(shù)據(jù)庫服務(wù)器自身。如前面所介紹,可以利用Oracle自帶的圖形化管理工具Net Manager來完成Oracle客戶端的配置。選中如圖(一)中的服務(wù)命名,再點擊左上側(cè)“+”按鈕,彈出如下圖示對話框:
圖(四)
輸入Net服務(wù)名,如myoracle,點擊下一步,進入下圖示對話框:
圖(五)
選中TCP/IP(Internet協(xié)議),點擊下一步,如下圖示:
圖(六)
輸入主機名與端口號。注意這里的主機名與端口號必須與數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置的主機名和端口號相同。點擊下一步,如下圖示:
圖(七)
選 中(Oracle8i或更高版本)服拍塵姿務(wù)名,輸入服務(wù)名。這里的服務(wù)名實際上就是數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置中的全局數(shù)據(jù)庫名,前者與后者必須相同。連接類型 通常選專用服務(wù)器,這要視數(shù)據(jù)庫服務(wù)器的配置而定,如果配置的共享數(shù)據(jù)庫服務(wù)器,這里的連接類型就要選共享服務(wù)器,否則建議選專用服務(wù)器(關(guān)于專用服務(wù)器 的介紹請參閱相關(guān)文檔)。配置好后點擊下一步,如下圖示:
圖(八)
如 果數(shù)據(jù)庫服務(wù)器端相關(guān)服務(wù)啟動了,可以點擊測試按鈕進行連接測試。Oracle默認是通過scott/tiger用戶進行測試連接,由于scott用戶是 Oracle自帶的示例用戶,對于正式的業(yè)務(wù)數(shù)據(jù)庫或?qū)I(yè)測試數(shù)據(jù)庫可能沒有配置這個用戶,所以需要更改成有效的用戶登錄才可能測試成功。如果這里測試連 接不成功,也不要緊,先點完成按鈕結(jié)束配置。
回 到Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)主窗口,保存配置,默認即可在Oracle安裝目錄下找到本地服務(wù)名配置文件 (Windows下如D:oracleora92networkadmintnsnames.ora,Linux/Unix下$ ORACLE_HOME/network/admin/ tnsnames.ora)。配置完成的本地服務(wù)名如下圖示:
圖(九)
樹形目錄下的服務(wù)命名可以通過編輯菜單里的重命名菜單更改成任意合法字符組成的服務(wù)名稱,注意服務(wù)名稱前不能有空格字符,否則可能無法連接數(shù)據(jù)庫服務(wù)器。
3、 連接數(shù)據(jù)庫服務(wù)器
(1) 啟動服務(wù)器端監(jiān)聽器與數(shù)據(jù)庫服務(wù)
Linux/Unix下,啟動監(jiān)聽器:
$ lsnrctl start
關(guān)閉監(jiān)聽器:
$ lsnrctl stop
查看監(jiān)聽狀態(tài):
$ lsnrctl status
啟動數(shù)據(jù)庫:
$ sqlplus /nolog
SQL>conn sys@myoracle as sysdba –這里的myoracle是前面配置的客戶端本地服務(wù)名
或
SQL>conn / as sysdba
SQL>startup
Windows下,啟動監(jiān)聽器:
C:lsnrctl start
啟動Oracle實例服務(wù):
C:oradim ?a href=”
” class=”none” title=”cs” rel=”external”>cstartup –sid myoracle
關(guān)閉Oracle實例服務(wù):
C:oradim –shutdown –sid myoracle
以上服務(wù)必須同時啟動,客戶端才能連接數(shù)據(jù)庫。由于默認配置的監(jiān)聽器名稱是Listener,上述命令可以正常啟動監(jiān)聽器,如果監(jiān)聽器名稱是其它名稱,如aListener,則需要用下列方式才能啟動:
Linux/Unix下:
$ lsnrctl start aListener
Windows下:
C:lsnrctl start aListener
(2) 測試連接數(shù)據(jù)庫服務(wù)器
測試的方法多種多樣,可以在上面配置本地服務(wù)名時進行測試,也可以是第三方客戶端工具,如PL/SQL Developer,最方便的是用Oracle自帶的sqlplus工具,以下利用sqlplus進行測試:
C:sqlplus /nolog
SQL>conn zgh@myoracle
已連接。
四、客戶端連接服務(wù)器端常見問題排除方法
要排除客戶端與服務(wù)器端的連接問題,首先檢查客戶端配置是否正確(客戶端配置必須與數(shù)據(jù)庫服務(wù)器端監(jiān)聽配置一致),再根據(jù)錯誤提示解決。下面列出幾種常見的連接問題:
1、 ORA-12541: TNS: 沒有監(jiān)聽器
顯而易見,服務(wù)器端的監(jiān)聽器沒有啟動,另外檢查客戶端IP地址或端口填寫是否正確。啟動監(jiān)聽器:
$ lsnrctl start
或
C:lsnrctl start
2、 ORA-12500: TNS: 監(jiān)聽程序無法啟動專用服務(wù)器進程
對于Windows而言,沒有啟動Oracle實例服務(wù)。啟動實例服務(wù):
C:oradim –startup -sid myoracle
3、 ORA-12535: TNS: 操作超時
出現(xiàn)這個問題的原因很多,但主要跟網(wǎng)絡(luò)有關(guān)。解決這個問題,首先檢查客戶端與服務(wù)端的網(wǎng)絡(luò)是否暢通,如果網(wǎng)絡(luò)連通,則檢查兩端的防火墻是否阻擋了連接。
4、 ORA-12154: TNS: 無法處理服務(wù)名
檢 查輸入的服務(wù)名與配置的服務(wù)名是否一致。另外注意生成的本地服務(wù)名文件(Windows下如D:oracleora92networkadmin tnsnames.ora,Linux/Unix下/network/admin/tnsnames.ora)里每項服務(wù)的首 行服務(wù)名稱前不能有空格。
5、 ORA-12514: TNS: 監(jiān)聽進程不能解析在連接描述符中給出的 SERVICE_NAME
打開Net Manager,選中服務(wù)名稱,檢查服務(wù)標識欄里的服務(wù)名輸入是否正確。該服務(wù)名必須與服務(wù)器端監(jiān)聽器配置的全局數(shù)據(jù)庫名一致。
6、 Windows下啟動監(jiān)聽服務(wù)提示找不到路徑
用 命令或在服務(wù)窗口中啟動監(jiān)聽提示找不到路徑,或監(jiān)聽服務(wù)啟動異常。打開注冊表,進入HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/OracleOraHome92TNSListener項,查看ImagePath字符串項是否存在,如果沒 有,設(shè)定值為D:oracleora92BINTNSLSNR,不同的安裝路徑設(shè)定值做相應(yīng)的更改。這種方法同樣適用于Oracle實例服務(wù),同 上,找到如同HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/Oracle ServiceMYORACLE項,查看ImagePath字符串項是否存在,如果沒有,則新建,設(shè)定值為d:oracleora92 binORACLE.EXE MYORACLE。
一、監(jiān)聽器(LISTENER)
監(jiān)聽器是Oracle基于服務(wù)器端的一種網(wǎng)絡(luò)服務(wù),主要用于監(jiān)聽客戶端向數(shù)據(jù)庫服務(wù)器端提出的連接請求。既然是基于服務(wù)器端的服務(wù),那么它也只存在于數(shù)據(jù)庫服務(wù)器端,進行監(jiān)聽器的設(shè)置也是在數(shù)據(jù)庫服務(wù)器端完成的。
二、本地服務(wù)名(Tnsname)
Oracle客戶端與服務(wù)器端的連接是通過客戶端發(fā)出連接請求,由服務(wù)器端監(jiān)聽器對客戶端連接請求進行合法檢查,如果連接請求有效,則進行連接,否則拒絕該連接。
本地服務(wù)名是Oracle客戶端網(wǎng)絡(luò)配置的一種,另外還有Oracle名字服務(wù)器(Oracle Names Server)等。Oracle常用的客戶端配置就是采用的本地服務(wù)名,本文中介紹的也做擾主要是基于本地服務(wù)名的配置。
三、Oracle網(wǎng)絡(luò)連接配置方法
配置Oracle服務(wù)器端與客戶端都可以在其自帶的圖形化Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)里完成(強烈建議在這個圖形化的工具下完成Oracle服務(wù)端或客戶端的配置)。在Windows下,點擊“開始/程序/Oracle – OraHome92/Configuration and Migration Tools/Net Manager”啟動Oracle網(wǎng)絡(luò)管理器工具,在Linux/Unix下,利用netmgr命令來啟動圖形化Oracle網(wǎng)絡(luò)管理器,如:
$ netmgr
Windows下啟動Net Manager圖形窗口如下圖示:
1、 Oracle監(jiān)聽器配置(LISTENER)
如上圖示,選中樹形目錄中監(jiān)聽程序項,再點擊左上側(cè)“+”按鈕添加監(jiān)聽程序,點擊監(jiān)聽程序目錄,默認新加的監(jiān)聽器名稱是LISTENER(該名稱也可以 由任意合法字符命名)。選中該名稱,選中窗口右側(cè)欄下拉選項中的“監(jiān)聽位置”,點擊添加地址按鈕。在出現(xiàn)的網(wǎng)絡(luò)地址欄的協(xié)議下拉選項中選中 “TCP/IP”,主機文本框中輸入主機名稱或IP地址(如果主機即用作服務(wù)端也作為客戶端,輸入兩項之一均有效;如果主機作為服務(wù)端并需要通過網(wǎng)絡(luò)連 接,建議輸入IP地址),端口文本框中輸入數(shù)字端口,默認是1521,也可以自定義任意有效數(shù)字端口。配置好的監(jiān)聽位置如下圖示:
選中窗口右側(cè)欄下拉選項中的“數(shù)據(jù)庫服務(wù)”,點擊添加數(shù)據(jù)庫按鈕。在出現(xiàn)的數(shù)據(jù)庫欄中輸入全局數(shù)據(jù)庫名,如myoracle。注意這里的全局數(shù)據(jù)庫名與數(shù)據(jù) 庫SID有所區(qū)別,全局數(shù)據(jù)庫名實際通過域名來控制在同一網(wǎng)段內(nèi)數(shù)據(jù)庫全局命名的唯一性,就如Windows下的域名控制器,如這里可以輸入 myoracle.192.168.1.5。Oracle主目錄可以不填寫,輸入SID,如myoracle。完整的數(shù)據(jù)庫服務(wù)配置如下圖示:
保存以上配置,默認即可在Oracle安裝目錄下找到監(jiān)聽配置文件 (Windows下如D:oracleora92networkadminlistener.ora,Linux/Unix下$ ORACLE_HOME/network/admin/listerer.ora)。至此,Oracle服務(wù)端監(jiān)聽器配置已經(jīng)完成。
2、 本地服務(wù)名配置(Tnsnames)
本地服務(wù)名是基于Oracle客戶端的網(wǎng)絡(luò)配置,所以,如果客戶端需要連接數(shù)據(jù)庫服務(wù)器進行操作,則旁胡野需要配置該客戶端,其依附對象可以是任意一臺欲連接數(shù)據(jù) 庫服務(wù)器進行操作的pc機,也可以是數(shù)據(jù)庫服務(wù)器自身。如前面所介紹,可以利用Oracle自帶的圖形化管理工具Net Manager來完成Oracle客戶端的配置。選中如圖(一)中的服務(wù)命名,再點擊左上側(cè)“+”按鈕,彈出如下運喊圖示對話框:
輸入Net服務(wù)名,如myoracle,點擊下一步,進入下圖示對話框:
選中TCP/IP(Internet協(xié)議),點擊下一步,如下圖示:
輸入主機名與端口號。注意這里的主機名與端口號必須與數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置的主機名和端口號相同。點擊下一步,如下圖示:
選 中(Oracle8i或更高版本)服務(wù)名,輸入服務(wù)名。這里的服務(wù)名實際上就是數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置中的全局數(shù)據(jù)庫名,前者與后者必須相同。連接類型 通常選專用服務(wù)器,這要視數(shù)據(jù)庫服務(wù)器的配置而定,如果配置的共享數(shù)據(jù)庫服務(wù)器,這里的連接類型就要選共享服務(wù)器,否則建議選專用服務(wù)器(關(guān)于專用服務(wù)器 的介紹請參閱相關(guān)文檔)。配置好后點擊下一步,如下圖示:
如果數(shù)據(jù)庫服務(wù)器端相關(guān)服務(wù)啟動了,可以點擊測試按鈕進行連接測試。Oracle默認是通過scott/tiger用戶進行測試連接,由于scott用戶是 Oracle自帶的示例用戶,對于正式的業(yè)務(wù)數(shù)據(jù)庫或?qū)I(yè)測試數(shù)據(jù)庫可能沒有配置這個用戶,所以需要更改成有效的用戶登錄才可能測試成功。如果這里測試連 接不成功,也不要緊,先點完成按鈕結(jié)束配置。
回 到Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)主窗口,保存配置,默認即可在Oracle安裝目錄下找到本地服務(wù)名配置文件 (Windows下如D:oracleora92networkadmintnsnames.ora,Linux/Unix下$ ORACLE_HOME/network/admin/ tnsnames.ora)。配置完成的本地服務(wù)名如下圖示:
樹形目錄下的服務(wù)命名可以通過編輯菜單里的重命名菜單更改成任意合法字符組成的服務(wù)名稱,注意服務(wù)名稱前不能有空格字符,否則可能無法連接數(shù)據(jù)庫服務(wù)器。
3、 連接數(shù)據(jù)庫服務(wù)器
(1) 啟動服務(wù)器端監(jiān)聽器與數(shù)據(jù)庫服務(wù)
Linux/Unix下,啟動監(jiān)聽器:
$ lsnrctl start
關(guān)閉監(jiān)聽器:
$ lsnrctl stop
查看監(jiān)聽狀態(tài):
$ lsnrctl status
啟動數(shù)據(jù)庫:
$ sqlplus /nolog
SQL>conn sys@myoracle as sysdba –這里的myoracle是前面配置的客戶端本地服務(wù)名
或
SQL>conn / as sysdba
SQL>startup
Windows下,啟動監(jiān)聽器:
C:lsnrctl start
啟動Oracle實例服務(wù):
C:oradim ?a href=”
class=”none” title=”cs” rel=”external”>cstartup –sid myoracle
關(guān)閉Oracle實例服務(wù):
C:oradim –shutdown –sid myoracle
以上服務(wù)必須同時啟動,客戶端才能連接數(shù)據(jù)庫。由于默認配置的監(jiān)聽器名稱是Listener,上述命令可以正常啟動監(jiān)聽器,如果監(jiān)聽器名稱是其它名稱,如aListener,則需要用下列方式才能啟動:
Linux/Unix下:
$ lsnrctl start aListener
Windows下:
C:lsnrctl start aListener
(2) 測試連接數(shù)據(jù)庫服務(wù)器
測試的方法多種多樣,可以在上面配置本地服務(wù)名時進行測試,也可以是第三方客戶端工具,如PL/SQL Developer,最方便的是用Oracle自帶的sqlplus工具,以下利用sqlplus進行測試:
C:sqlplus /nolog
SQL>conn zgh@myoracle
已連接。
用network configure assistant(netca)圖形界面配就行了。
Oracle數(shù)據(jù)庫監(jiān)聽配置
近段時間很多網(wǎng)友提出監(jiān)聽配置相關(guān)問題 客戶終端(Client)無法連接服務(wù)器端(Server) 本文現(xiàn)對監(jiān)聽配置作一簡單槐告介紹 并提出一些客戶終端無法連接服務(wù)器端的解決思路 愿對廣大網(wǎng)友與讀者有一些幫助
一
監(jiān)聽器(LISTENER)
監(jiān)聽器是Oracle基于服務(wù)器端的一種網(wǎng)絡(luò)服務(wù) 主要用于監(jiān)聽客戶端向數(shù)據(jù)庫服務(wù)器端提出的連接請求 既然是基于服務(wù)器端的服務(wù) 那么它也只存在于數(shù)據(jù)庫服務(wù)器端 進行監(jiān)聽器的設(shè)置也是在數(shù)據(jù)庫服務(wù)器端完成的
二
本地服務(wù)名(Tnsname)
Oracle客戶端與服務(wù)器端的連接是通過客戶端發(fā)出連接請求 由服務(wù)器端監(jiān)聽器對客戶端連接請求進行合法檢查 如果連接請求有效 則進行連接 否則拒絕該連接 本地服務(wù)名是Oracle客戶端網(wǎng)絡(luò)配置的一種 另外還有Oracle名字服務(wù)器(Oracle Names Server)等 Oracle常用的客戶端配置就是采用的本地服務(wù)名 本文中介紹的也主要是基于本鉛悶明地服務(wù)名的配置
三
Oracle
網(wǎng)絡(luò)連接配置方法
配 置Oracle服務(wù)器端與客戶端都可以在其自帶的圖形化Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)里完成(強烈建議在這個圖形化的工具下完成Oracle服務(wù)端或客戶端的配置) 在Windows下 點擊 開始/程序/Oracle OraHome /Configuration and Migration Tools/Net Manager 啟動Oracle網(wǎng)絡(luò)管理器工具 在Linux/Unix下 利用netmgr命令來啟動圖形化Oracle網(wǎng)絡(luò)管理器 如 $ netmgr Windows下啟動Net Manager圖形窗口如下圖示圖(一)
Oracle監(jiān)聽器配置(LISTENER)
如 圖(一)示 選中樹形目錄中監(jiān)聽程序項 再點擊左上側(cè) + 按鈕添加監(jiān)聽程序 點擊監(jiān)聽程序目錄 默認新加的監(jiān)聽器名稱是LISTENER(該名稱也可以 由任意合法字符命名) 選中該名稱 選中窗口右側(cè)欄下拉選項中的 監(jiān)聽位置 點擊添加地址按鈕 在出現(xiàn)的網(wǎng)絡(luò)地址欄的協(xié)議下拉選項中選中 TCP/IP 主機文本框中輸入主機名稱或IP地址(如果主機即用作服務(wù)端也作為客戶端 輸入兩項之一均有效 如果主機作為服務(wù)端并需要通過網(wǎng)絡(luò)連 接 建議輸入IP地址) 端口文本框中輸入數(shù)字端口 默認是 也可以自定義任意有效數(shù)字端口 配置好的監(jiān)聽位置如下圖示圖(二)選 中窗口右側(cè)欄下拉選項中的 數(shù)據(jù)庫服務(wù) 點擊添加數(shù)據(jù)庫按鈕 在出現(xiàn)的數(shù)據(jù)庫欄中輸入全局數(shù)據(jù)庫名 如myoracle 注意這里的全局數(shù)據(jù)庫名與數(shù)據(jù) 庫SID有所區(qū)別 全局數(shù)據(jù)庫名實際通過域名來控制在同一網(wǎng)段內(nèi)數(shù)據(jù)庫全局命名的唯一性 就如Windows下的域名控制器 如這里可以輸入 myoracle Oracle主目錄可以不填寫 輸入SID 如myoracle 完整的數(shù)據(jù)庫服務(wù)配置如下圖示圖(三) 保 存以上配置 默認即可在Oracle安裝目錄下找到監(jiān)聽配置文件 (Windows下如D:\oracle\ora \neork\admin\listener ora Linux/Unix下$ ORACLE_HOME/neork/admin/listerer ora) 至此 Oracle服務(wù)端監(jiān)聽器配置已經(jīng)完成
本地服務(wù)名配置(Tnsnames)
本 地服務(wù)名是基于Oracle客戶端的網(wǎng)絡(luò)罩并配置 所以 如果客戶端需要連接數(shù)據(jù)庫服務(wù)器進行操作 則需要配置該客戶端 其依附對象可以是任意一臺欲連接數(shù)據(jù) 庫服務(wù)器進行操作的PC機 也可以是數(shù)據(jù)庫服務(wù)器自身 如前面所介紹 可以利用Oracle自帶的圖形化管理工具Net Manager來完成Oracle客戶端的配置 選中如圖(一)中的服務(wù)命名 再點擊左上側(cè) + 按鈕 彈出如下圖示對話框圖(四) 輸入Net服務(wù)名 如myoracle 點擊下一步 進入下圖示對話框 圖(五)選中TCP/IP(Internet協(xié)議) 點擊下一步 如下圖示 圖(六) 輸入主機名與端口號 注意這里的主機名與端口號必須與數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置的主機名和端口號相同 點擊下一步 如下圖示圖(七) 選 中(Oracle i或更高版本)服務(wù)名 輸入服務(wù)名 這里的服務(wù)名實際上就是數(shù)據(jù)庫服務(wù)器端監(jiān)聽器配置中的全局數(shù)據(jù)庫名 前者與后者必須相同 連接類型 通常選專用服務(wù)器 這要視數(shù)據(jù)庫服務(wù)器的配置而定 如果配置的共享數(shù)據(jù)庫服務(wù)器 這里的連接類型就要選共享服務(wù)器 否則建議選專用服務(wù)器(關(guān)于專用服務(wù)器 的介紹請參閱相關(guān)文檔) 配置好后點擊下一步 如下圖示 圖(八)如 果數(shù)據(jù)庫服務(wù)器端相關(guān)服務(wù)啟動了 可以點擊測試按鈕進行連接測試 Oracle默認是通過scott/tiger用戶進行測試連接 由于scott用戶是 Oracle自帶的示例用戶 對于正式的業(yè)務(wù)數(shù)據(jù)庫或?qū)I(yè)測試數(shù)據(jù)庫可能沒有配置這個用戶 所以需要更改成有效的用戶登錄才可能測試成功 如果這里測試連 接不成功 也不要緊 先點完成按鈕結(jié)束配置 回 到Oracle網(wǎng)絡(luò)管理器(Oracle Net Manager)主窗口 保存配置 默認即可在Oracle安裝目錄下找到本地服務(wù)名配置文件 (Windows下如D:\oracle\ora \neork\admin\tnsnames ora Linux/Unix下$ ORACLE_HOME/neork/admin/ tnsnames ora) 配置完成的本地服務(wù)名如下圖示 圖(九) 樹形目錄下的服務(wù)命名可以通過編輯菜單里的重命名菜單更改成任意合法字符組成的服務(wù)名稱 注意服務(wù)名稱前不能有空格字符 否則可能無法連接數(shù)據(jù)庫服務(wù)器
連接數(shù)據(jù)庫服務(wù)器
( ) 啟動服務(wù)器端監(jiān)聽器與數(shù)據(jù)庫服務(wù)
Linux/Unix下 啟動監(jiān)聽器 $ lsnrctl start關(guān)閉監(jiān)聽器 $ lsnrctl stop 查看監(jiān)聽狀態(tài) $ lsnrctl status 啟動數(shù)據(jù)庫 $ sqlplus /nolog SQL>conn sys@myoracle as sysdba 這里的myoracle是前面配置的客戶端本地服務(wù)名 或 SQL>conn / as sysdba SQL>startup Windows下 啟動監(jiān)聽器 C:\lsnrctl start 啟動Oracle實例服務(wù) C:\oradim –startup –sid myoracle 關(guān)閉Oracle實例服務(wù) C:\oradim –shutdown –sid myoracle 以上服務(wù)必須同時啟動 客戶端才能連接數(shù)據(jù)庫 由于默認配置的監(jiān)聽器名稱是Listener 上述命令可以正常啟動監(jiān)聽器 如果監(jiān)聽器名稱是其它名稱 如aListener 則需要用下列方式才能啟動 Linux/Unix下 $ lsnrctl start aListener Windows下 C:\lsnrctl start aListener
( ) 測試連接數(shù)據(jù)庫服務(wù)器
測試的方法多種多樣 可以在上面配置本地服務(wù)名時進行測試 也可以是第三方客戶端工具 如PL/SQL Developer 最方便的是用Oracle自帶的sqlplus工具 以下利用sqlplus進行測試 C:\sqlplus /nolog SQL>conn zgh@myoracle 已連接
四
客戶端連接服務(wù)器端常見問題排除方法
要排除客戶端與服務(wù)器端的連接問題 首先檢查客戶端配置是否正確(客戶端配置必須與數(shù)據(jù)庫服務(wù)器端監(jiān)聽配置一致) 再根據(jù)錯誤提示解決 下面列出幾種常見的連接問題
ORA : TNS: 沒有監(jiān)聽器
顯而易見 服務(wù)器端的監(jiān)聽器沒有啟動 另外檢查客戶端IP地址或端口填寫是否正確 啟動監(jiān)聽器 $ lsnrctl start 或 C:\lsnrctl start
ORA : TNS: 監(jiān)聽程序無法啟動專用服務(wù)器進程
對于Windows而言 沒有啟動Oracle實例服務(wù) 啟動實例服務(wù) C:\oradim –startup sid myoracle
ORA : TNS: 操作超時
出現(xiàn)這個問題的原因很多 但主要跟網(wǎng)絡(luò)有關(guān) 解決這個問題 首先檢查客戶端與服務(wù)端的網(wǎng)絡(luò)是否暢通 如果網(wǎng)絡(luò)連通 則檢查兩端的防火墻是否阻擋了連接
ORA : TNS: 無法處理服務(wù)名
檢 查輸入的服務(wù)名與配置的服務(wù)名是否一致 另外注意生成的本地服務(wù)名文件(Windows下如D:\oracle\ora \neork\admin \tnsnames ora Linux/Unix下$ORACLE_HOME/neork/admin/tnsnames ora)里每項服務(wù)的首 行服務(wù)名稱前不能有空格
ORA : TNS: 監(jiān)聽進程不能解析在連接描述符中給出的 SERVICE_NAME
打開Net Manager 選中服務(wù)名稱 檢查服務(wù)標識欄里的服務(wù)名輸入是否正確 該服務(wù)名必須與服務(wù)器端監(jiān)聽器配置的全局數(shù)據(jù)庫名一致
Windows下啟動監(jiān)聽服務(wù)提示找不到路徑
用 命令或在服務(wù)窗口中啟動監(jiān)聽提示找不到路徑 或監(jiān)聽服務(wù)啟動異常 打開注冊表 進入HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/OracleOraHome TNSListener項 查看ImagePath字符串項是否存在 如果沒 有 設(shè)定值為D:\oracle\ora \BIN\TNSLSNR 不同的安裝路徑設(shè)定值做相應(yīng)的更改 這種方法同樣適用于Oracle實例服務(wù) 同 上 找到如同HKEY_LOCAL_MACHINE/SYSTEM/Current ControlSet/Services/Oracle ServiceMYORACLE項 查看ImagePath字符串項是否存在 如果沒有 則新建 設(shè)定值為d:\oracle\ora \ binORACLE EXE MYORACLE 以上是Oracle客戶端連接服務(wù)器端常見的一些問題 當然不能囊括所有的連接異常 解決問題的關(guān)鍵在于方法與思路 而不是每種問題都有固定的答案 lishixinzhi/Article/program/Oracle/202311/17900
服務(wù)器的偵聽端口是什么意思
服務(wù)器傾聽端口 ,是服務(wù)器監(jiān)聽客戶端用的 ,相當于”地址” ,是服務(wù)器與客戶端間的紐帶 .
舉個例子:你登陸QQ ,你把你的用戶名和密碼輸入后,點擊”登陸” ,此時,客戶端就會把你的密碼和用戶名發(fā)送到該端口的
端口號
.然后服務(wù)器經(jīng)過到數(shù)據(jù)庫驗證,如果正確,就會把正確的信息發(fā)給你的客戶端(就是你 的兄褲缺電腦) .
監(jiān)聽端口能使你獲得遠程連純源接羨辯。前提是你是
公網(wǎng)IP
,或網(wǎng)關(guān)上對你的監(jiān)聽的端口作了
端口映射
。在端口通的情況下,你就會看到“遠程”,意味著很多
內(nèi)網(wǎng)
用戶就可連接到你。你就可以和更多的人進行連接下載,一般來說你的速度就會快起來。簡單的說,你不監(jiān)聽端口,將少了一半的傳輸機會。
服務(wù)都是有特定端口號的,在服務(wù)器上,啟動一個服務(wù)后,這個服務(wù)就不斷檢測他的服務(wù)端口號,即所謂的世棚偵聽端口,一旦和衡檢測收到發(fā)往喚返做其端口號的服務(wù)報文,就會進行處理
計算機“端口”是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬件領(lǐng)域的端口又稱接口,如:USB端口、串行端口等。軟件領(lǐng)域的端口一般指網(wǎng)絡(luò)中面向連接服務(wù)和無連接服務(wù)的通信協(xié)議端口,是一種抽象的軟件結(jié)構(gòu),包括中乎一些數(shù)據(jù)結(jié)構(gòu)和I/O(基本輸入源圓輸出)緩沖區(qū)。賣裂悉
偵聽端口應(yīng)該就是監(jiān)視這個端口穿進來的消息!~
服務(wù)器偵聽什么的端口?
數(shù)據(jù)庫監(jiān)聽端口號的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于數(shù)據(jù)庫監(jiān)聽端口號,如何設(shè)置數(shù)據(jù)庫監(jiān)聽端口號,oracle如何配置監(jiān)聽,Oracle數(shù)據(jù)庫監(jiān)聽配置,服務(wù)器的偵聽端口是什么意思的信息別忘了在本站進行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
新聞名稱:如何設(shè)置數(shù)據(jù)庫監(jiān)聽端口號(數(shù)據(jù)庫監(jiān)聽端口號)
鏈接URL:http://m.5511xx.com/article/cdhjpse.html


咨詢
建站咨詢
