Oracle修改監(jiān)聽IP地址
在局域網(wǎng)中遠程連接oracle時,一直提示拒絕連接,在確定防火墻關(guān)閉,oracle服務(wù)器監(jiān)聽端口開啟的情況下,可能的錯誤就是oracle的監(jiān)聽IP地址不是預(yù)設(shè)的那樣,而是本地的127.0.0.1。
排錯過程不再細說,這里只分享由于主機名不正確而導(dǎo)致oracle拒絕連接的解決辦法。
一、修改hosts文件
打開cmd,輸入hostname,記下主機名 用記事本打開c:\windows\system32\drivers\etc\hosts 文件,添加主機名。
- <code class="hljs vala"># Copyright (c) 1993-2009 Microsoft Corp.
- # This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
- # This file contains the mappings of IP addresses to host names. Each
- # entry should be kept on an individual line. The IP address should
- # be placed in the first column followed by the corresponding host name.
- # The IP address and the host name should be separated by at least one
- # space.
- #
- # Additionally, comments (such as these) may be inserted on individual
- # lines or following the machine name denoted by a '#' symbol.
- # For example:
- # 102.54.94.97 rhino.acme.com # source server
- # 38.25.63.10 x.acme.com # x client host
- # localhost name resolution is handled within DNS itself.
- # 127.0.0.1 localhost
- # ::1 localhost
- [主機IP] [主機名]</code>
二、修改oracle監(jiān)聽文件
1、打開listener.ora
文件在F:\app\young\product\11.2.0\dbhome_1\NETWORK\ADMIN 目錄下,將里面的localhost換為自己的主機名。
- <code class="hljs vala"><code class="hljs tex"># listener.ora Network Configuration File: F:\app\young\product\11.2.0\dbhome_1\network\admin\listener.ora
- # Generated by Oracle configuration tools.
- SID_LIST_LISTENER =
- (SID_LIST =
- (SID_DESC =
- (SID_NAME = CLRExtProc)
- (ORACLE_HOME = F:\app\young\product\11.2.0\dbhome_1)
- (PROGRAM = extproc)
- (ENVS = "EXTPROC_DLLS=ONLY:F:\app\young\product\11.2.0\dbhome_1\bin\oraclr11.dll")
- )
- )
- LISTENER =
- (DESCRIPTION_LIST =
- (DESCRIPTION =
- (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
- (ADDRESS = (PROTOCOL = TCP)(HOST = Young-PC)(PORT = 1521))//Young-PC原為localhost
- ) ) ADR_BASE_LISTENER = F:\app\young</code></code>
2、修改tnsnames.ora
目錄同上,也將localhost更改為主機名。
- <code class="hljs vala"><code class="hljs tex"><code class="hljs tex"># tnsnames.ora Network Configuration File: F:\app\young\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
- # Generated by Oracle configuration tools.
- LISTENER_ORCL =
- (ADDRESS = (PROTOCOL = TCP)(HOST = Young-PC)(PORT = 1521))//Young-PC原為localhost
- ORACLR_CONNECTION_DATA =
- (DESCRIPTION =
- (ADDRESS_LIST =
- (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
- )
- (CONNECT_DATA =
- (SID = CLRExtProc)
- (PRESENTATION = RO)
- )
- )
- ORCL =
- (DESCRIPTION =
- (ADDRESS = (PROTOCOL = TCP)(HOST = Young-PC)(PORT = 1521))//Young-PC原為localhost
- (CONNECT_DATA =
- (SERVER = DEDICATED)
- (SERVICE_NAME = orcl)
- )
- )</code></code></code>
3、重啟tnslsnr。
打開cmd,輸入以下命令。
- <code class="hljs vala"><code class="hljs tex"><code class="hljs tex"><code class="hljs sql">lsnrctl stop
- lsnrctl start
- lsnrctl stat</code></code></code></code>
再次遠程連接,已經(jīng)可以連上了,成功。