重开Oracle监听,问题即解决 (重启oracle数据库监听)

Oracle数据库是企业级应用的首选数据库之一,作为重量级的数据库,可能会遇到一些问题。一旦发生问题,很多情况下只要根据经验和方法去解决便可以解决。其中一个常见的问题就是数据库无法连接,这时候我们需要重开Oracle监听来解决。

一、问题描述

在使用Oracle数据库过程中,我们经常会遇到无法连接数据库的情况,这时候如果我们使用Oracle客户端(如SQLPLUS)尝试连接数据库,通常会得到“ORA-12541: TNS :no listener”的错误提示。这是因为当Oracle数据库实例创建好之后,必须启动监听(Listener)来接收客户端的请求,如果监听没有启动就无法建立连接。所以当我们遇到无法连接数据库的情况时,应该首先检查Oracle数据库的监听服务是否处于启动状态。

二、解决方法

如果发现Oracle数据库的监听服务没有启动,那么需要重新启动监听服务,这个过程也比较简单。

1.先在 Windows 系统中执行“services.msc”指令,打开服务列表,找到Oracle服务(OracleService{数据库实例名})和监听服务(OracleOraDb11g_home1TNSListener),并且将这两个服务的启动模式设置为“自动”。

2.然后打开命令行窗口(以管理员权限运行),输入“lsnrctl”指令,可得到 Oracle 的监听器如下图:

![](https://img-blog.csdn.net/20231115115908341?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3RoaWxlemhvbmdfaW1hZ2lj/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85)

3.输入“lsnrctl stop”命令,停止监听服务,可得到类似下图的提示:

![](https://img-blog.csdn.net/20231115120231121?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3RoaWxlemhvbmdfaW1hZ2lj/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85)

4.然后再输入“lsnrctl start”命令,启动监听服务,如下图所示:

![](https://img-blog.csdn.net/20231115120236763?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3RoaWxlemhvbmdfaW1hZ2lj/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/q/85)

5.这时候如果一切正常,那么连数据库就应该没问题了。

三、注意事项

在重新启动Oracle监听服务之前需要注意以下几点:

1.检查您的防火墙,Oracle数据库和监听器使用的是默认端口,分别是1521和1526,所以需要在防火墙中打开这两个端口。

2.检查Oracle数据库实例的状态,如果数据库实例处于已关闭状态,那么需要先启动数据库实例,然后再启动监听服务。

3.如果在重启Oracle监听服务后仍然无法连接数据库,请检查数据库的IP地址和端口是否正确,或者执行“tnsping {数据库实例名}”指令,检查服务器是否有响应。

综上所述,在使用Oracle数据库时,遇到无法连接数据库的情况,我们可以通过重启Oracle监听服务的方式来解决这个问题。当然,在遇到问题之前,我们应该更加注意数据库的维护,防止问题的发生。

相关问题拓展阅读:

stat 监听状态查看 为”>oracle 监听重启后 LSNRCTL> stat 监听状态查看 为

LSNRCTL> status你好像拼错了,实例服消世务不知道你开启没有,先把数据库实例开启才能运行,你net start oracleservice+你的实例名,启动服务,拿物肢然后tnsping (空格)服务蚂迅名,查看状态,然后sqlplus 用户名/密码@服务名,注意服务名不等于数据库实例名,虽然你可以设置成一样的

楼上的也是一种方法,不过对于新手来说可能不太察燃清楚。我补充下

1.在运行中输入lsnrctl start试试

2.到开始-程序-Oracle home/配置和移植工具/Net Manager中为监听器此扰添加一个服务名

3.在Oracle安装目录下有一个文件名叫NETWORK/ADMIN/tnsnames.ora的文件,打开后看前面的语句 比如

test1=

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.56)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = test1)

)

)

你在此文件复制粘贴,把test1换成你的数据库实例名败扒虚/服务名 Ip地址换成你的Oracle数据库的服务器IP地址,我想就可以连上了

这是oracle 10g 以后,一种歼罩动态监听的方式, 会自动监销铅控数据库的服务,如果你的db是启动话,一会儿亏改好应该能看到的.

如果在监听先启动肆李前提下重启消雹穗数据库,需要在数据库侧注册服务:

alter system register;

在lsnrctl status中就可看到注册的服务或实例了;

然后用tnsping,返回如下信息:

TNS Ping Utility for Linux: Version 10.2.0.4.0 – Production on 16-JUN:15:11

Copyright (c) 1997, 2023, Oracle. All rights reserved.

Used parameter files:

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.252)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SID = testdb)))

OK (0 msec)

就可以啦拿卜!

oracle用命令怎么重新建立监听服务器

1在开始菜单,选择oracle,再选择“配置和移值工具”,打开Oracle Net Manager。

在弹出的窗口上 选择“监听程序”,点击左边的“+”图标,创建监听。

在接下来的窗口上选择监听名称,或者自己起一个监听名称,在点击下方“确定”按钮。

END

添加服务器数据库

IP地址

配置监听

点击“添加地址”按钮,填写好服务器主机ip地址以及

端口号

并及时保存。

END

配置服务名称

选择“服务名称”,创建一个服务名称,更好跟目标主机数哪凯桐据库服务名称一致。

点击孙者下一步,选择TC/IP选项,再单击下一步。

填写好服务器数据库主机名,一般填写IP地址就可以了,再填写好端口:1521 。下一步的时候,填写好服务名,跟SID一致就可以了。

测试是否可以连通,点击“测试”按钮,更改进入数据库操作的账户跟密码点击测试。

测试连接成功如下图,如果测试未成功,就按上面的步李坦骤仔细检查看看哪里出问题了。一般查询服务器ip地址、端口、数据库用户名、密码、防火墙等等地方是否有问题。

重启oracle数据库监听的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于重启oracle数据库监听,重开Oracle监听,问题即解决,oracle 监听重启后 LSNRCTL> stat 监听状态查看 为,oracle用命令怎么重新建立监听服务器的信息别忘了在本站进行查找喔。


数据运维技术 » 重开Oracle监听,问题即解决 (重启oracle数据库监听)