plsql远程访问数据库 解决ora12541:TNS无监听程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本机为win7 32位系统,为了学习oracle,装了个vbox虚拟机,再装了个win7虚拟机,内装oracle 11g(win7如果要装10g,要选择vista版本,win版本会安装报错).oracle11g安装完后有报了个错误,当时没注意,现在也忘了什么错了,但是不影响使用.后来想在本机安装plsql来远程连接虚win7上的oracle.查了一些资料,步骤如下:

1.下载plsql,安装.

2.下载Instant Client,点击下载,下载第一个basic就行了,下载完解压缩,以放到主win7 d盘根目录为

例:d:\instantclient_11_2

3.在d:\instantclient_11_2新建tnsnames.ora,用记事本编辑.

4.到虚win7上的oracle安装目录找到…\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora,打开,比如数据库实例是orcl,找到如下代码,拷贝到本机d:\instantclient_11_2\tnsnames.ora里

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 虚拟机IP)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

5.添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径d:\instantclient_11_2\tnsnames.ora,plsql通过这个找到orcl连接字符串

6.添加一个环境变量NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK

7.打开PLSQL,不用登陆,工具-首选项-ORACLE-连接:

勾选检查连接

Oracle主目录: d:\instantclient_11_2

OCI库: d:\instantclient_11_2\oci.dll

经过以上几步之后,重启PLSQL,问题来了,报错:ora-12541:TNS:无监听程序. ping是可以ping得通的,虚win7上的监听也开着.经过不懈的努力,多次试验终于解决了:

1.虚拟机网络选择桥接,并在虚拟机内网络连接IPV4设置静态IP

IP地址:192.168.1.111 (111可修改成自己的 1-255)

子网掩码:255.255.255.0

默认风头:192.168.1.1

首选DNS服务器:192.168.1.1

修改完记得主win7上 ping 192.168.1.111 ping得通再继续往后.

2.修改..\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora SID_NAME = CLRExtProc 改为 SID_NAME = orcl orcl是实例名

HOST = localhost 改为 HOST = 192.168.1.111

3.修改..\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora

两处 HOST = localhost 改为 HOST = 192.168.1.111

SID = CLRExtProc 改为 SID = orcl

好了,重启oracle,监听,主win7上的plsql就可以远程连接虚拟机上的数据库了.

相关文档
最新文档