單實例環(huán)境(不是RAC),偵聽器和實例必須要在同一臺機器上。兩臺機器通信必須使用一個網(wǎng)絡協(xié)議才能進行通信,假如瀏覽網(wǎng)頁需要使用http協(xié)議,遠程連接需要使用RDP/ssh/telnet等等。
創(chuàng)新互聯(lián)主要從事做網(wǎng)站、成都網(wǎng)站設計、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務二道江,十載網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18980820575
有一臺oracle服務器,有個客戶端要連接到oracle服務器上,兩臺機器通信就要使用oracleNET協(xié)議,和以上的協(xié)議是一樣的。有協(xié)議就要有相應的端口,所以oracleNET有個默認的偵聽端口1521.
其實配置oracle網(wǎng)絡就是配置oracle偵聽器,偵聽器很重要,如果沒有配置偵聽器,客戶端是無法連接到oracle服務器上面的。其實即使是在本地連接oracle服務器,偵聽器也是必須要運行的??蛻舳诉h程連接到oracle服務器時使用oracleNet協(xié)議,是被封裝到了tcp/ip協(xié)議中。如果是直接在本地連接數(shù)據(jù)庫用的是IPC。IPC是指<進程間的通信>。
偵聽器是用來接收外面的請求,在將外面的請求通過服務器進程交給實例,所以實例必須要向偵聽器注冊。如果監(jiān)聽器不知道有相應的實例肯定是不行的--即讓偵聽器知道有實例可以連接。oracle默認偵聽器的端口是1521。
偵聽器的配置文件存放在:$ORACLE_HOME/network/admin/中的instener.ora是偵聽器的配置文件
如果listerner的端口使用默認的1521的話,可以沒有l(wèi)istener.ora,但是建議最好不要刪除這個文件。
創(chuàng)建偵聽器
可以通過修改listener.ora來配置偵聽器以外,還可以使用其他工具來配置偵聽器
netca
netmgr
使用netca添加偵聽器的方法
查看默認偵聽器的狀態(tài)
查看LISTENER1的狀態(tài)
遠程客戶端連接方式
遠程客戶端連接oracle服務器可以使用以下兩個方式:
1.easy connect: conn user/password@ip:port/orcl as sysdba
2.tnsnames: conn user/password@XX
使用easy connect方式遠程連接oracle服務器
客戶端是win7系統(tǒng),需要安裝oracle客戶端程序
刪除listener.ora文件中的標識的行
停止偵聽器服務
[oracle@orclsrv admin]$ lsnrctlstop
啟動偵聽器服務
[oracle@orclsrv admin]$ lsnrctl start
再去連接實例時,就無法連接,提示沒有l(wèi)istener.
將偵聽器還原到?jīng)]有刪除之前的狀態(tài),然后重啟服務lsnrctl stop/start
使用netmgr工具
刪除listener1偵聽器,單擊左側“X”按鈕
可以使用easy connect和tnsnames的方式連接
Tnsnames連接方法:<推薦的客戶端連接方式> conn user/password@XX
Tnsnames涉及到一個文件:tnsnames.ora是一個客戶端的工具,將tnsnames.ora拷貝到oracle客戶端安裝目錄中。
使用記事本打開tnsnames.ora文件,原始內容如下
對原始內容中如圖所示部分復制并粘貼到tnsnames.ora中的空白位置,進行修改
修改為
然后保存退出。
連接實例
使用netmgr添加監(jiān)聽器
使用listener1偵聽器連接實例,結果是無法連接到實例,因為實例orcl并沒有在listener1偵聽器上注冊。默認情況下orcl實例注冊到了默認的偵聽器1521上面,所以目前只能使用1521來連接。
實例注冊到偵聽器的方法有:
靜態(tài)注冊:在listener.ora文件中手工指定
動態(tài)注冊:pmon進程每隔一分鐘將服務名和實例名注冊到偵聽器上面
將實例注冊到偵聽器的方法
使用alter system register可以將實例注冊到偵聽器上。這個命令將實例注冊到哪個偵聽器上了呢?這條命令將實例注冊到了默認的偵聽器上面了。
ORCL是tnsnames中的解析名:即使用ORCL就能夠解析出(ADDRESS = (PROTOCOL = TCP)(HOST =orclsrv)(PORT = 1521))這個地址。
SQL>alter system set local_listener="(ADDRESS = (PROTOCOL = TCP)(HOST= orclsrv)(PORT = 1521))";與alter system set local_listener=ORCL是等價的。
將實例注冊到listener1上面
SQL>alter system set local_listener="(ADDRESS = (PROTOCOL = TCP)(HOST= orclsrv)(PORT = 1522))";
此時使用默認的偵聽器就無法連接到實例了。
修改tnsnames.ora中的文件
SQL>alter system setlocal_listener=LISTENER2;
系統(tǒng)已更改。
查看實例注冊到了哪個偵聽器上面:show parameter local;
如果對此文有什么問題的話,請加下面微信一起探討
標題名稱:Oracle11gR2網(wǎng)絡偵聽器實驗
標題路徑:http://muchs.cn/article4/pdgdoe.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設、網(wǎng)站設計、網(wǎng)站排名、Google、微信公眾號、域名注冊
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)