首页 > 技术文章 > 本地连接虚拟机 Oracle数据库 报ORA-12541:TNS:no listener

ethan-37 2018-09-10 18:31 原文

一、环境

本机环境:win10,pl/sql Developer  

虚拟机环境:win10,oracle 11g

1.本机和虚拟机互相ping都可以ping通。

2.虚拟机监听程序已启动。

二、配置文件

 1.本机 tnsname.ora 配置文件

local=
  (DESCRIPTION =
  (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))
  )
  (CONNECT_DATA=
    (SID= orcl)
    )
  )

orcl=
  (DESCRIPTION =
  (ADDRESS_LIST=
    (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.43.128)(PORT=1521))
  )
  (CONNECT_DATA=(SID= orcl))
  )

2.本机listener.ora 配置文件

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = 本机instantclient路径)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 本机计算机名)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )

 3.虚拟机 tnsname.ora 配置文件

# tnsnames.ora Network Configuration File: c:\app\yudj\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.43.128)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl.168.43.128)
    )
  )

4.虚拟机listene.ora

# listener.ora Network Configuration File: c:\app\yudj\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 = c:\app\yudj\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:c:\app\yudj\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC = 
      (GLOBAL_DBNAME = ORCL) 
      (ORACLE_HOME = c:\app\yudj\product\11.2.0\dbhome_1) 
      (SID_NAME = ORCL) 
    ) 
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.43.128)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = c:\app\yudj

全部配置完成后,重启虚拟机监听服务

 

 

推荐阅读