ERROR - ORA-12541: TNS: 无监听程序

监听器是监听客户端请求。监听器运行在数据库服务器之上,与Oracle实例(可为多个)相关关联,是一个专门的进程process,在windows的服务项目或者Linux的运行进程列表中,都会看到对应的运行进程。Windows上名为TNSLSNR,Linux/Unix平台上是lsnrctl。监听器守候在服务器制定端口(默认为:1521),监听客户端的请求。

这个错误表示,客户端去连服务器的端口,默认1521,发现没有监听器守候。

所以此时要做的是检查服务器的监听程序是否启动成功。
命令行输入lsnrctl进入LSNRCTL>
1、$lsnrctl status:检查当前监听器的状态
2、$lsnrctl start [listener-name] 启动所有的监听器,可以指定名字来启动特定的监听器
3、$lsnrctl stop [listener-name]  关闭所有的监听器,可以指定名字来关闭特定的监听器
4、$lsnrctl reload  重启监听器,此命令可以代替lsnrctl stop,lsnrctl start


监听器启动没问题,还可能没有使用默认端口1521检查服务器端的监听程序文件/oracle/product/10.2.0/network/admin/listener.ora

listener.ora配置了
LISTENER进程为哪个实例提供服务
监听器监听的协议,ip,端口等。

如发现监听器监听的不是默认端口1521,而是其他端口,如1531,则要修改客户端本地服务名中的连接端口。

该端口在客户端的tnsnames.ora中配置,该文件配置远程数据库的sid名,ip,端口等信息,可以直接修改。也可以通过客户端net manager修改。
Net manager-服务命名-增加-网络服务名随便写-tcp/ip协议-主机名端口号-sid-测试。

你可能感兴趣的:(oracle)