Oracle监听器服务不能启动的7步解决法

合集下载

浅析oracle监听无法启动

浅析oracle监听无法启动
标题:浅析oracle监听无法启动
本人机器上经常会调试多个项目的系统,各个应用环境不尽相同.
多次遇到oracle监听无法启动的问题,总结下来与大家分享:
1、服务器参数配置问题,如改变的IP、服务器名称(具体改了什么会造成无法监听取决于你的配置文件里用的是机器名还是IP还是域名)
2、安装了系统补丁,从而改变ORACLE服务的方式
TRACE_FILE_LISTENER = "listener"
lsnrctl stop
lsnrctl start
之后得到文件:/tmp/listener.trc看ቤተ መጻሕፍቲ ባይዱ没有异常信息?
三、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:
1)ORADIM -DELETE -SID oradb 删除数据库服务项
3、文件破坏、"病毒"等问题造成
一、最简单的解决办法,重建listener.ora(可以用图形界面,也可以直接修改文件内容)
二、诊断:
跟踪一下日志,编辑listener.ora这个文件并追加如下内容:
TRACE_LEVEL_LISTENER = 16
TRACE_DIRECTORY_LISTENER = /tmp
2)ORADIM -NEW -SID oradb 新增数据库服务项
注:这个过程中如果出错,就重启计算机!

Oracle12.2监听无法启动解决方法

Oracle12.2监听无法启动解决方法

Oracle12.2监听⽆法启动解决⽅法在⾃⼰的虚拟机的做实验,突然发现使⽤PL/SQL Developer⽆法连接到数据库,报错ORA-12514,说是监听没有启动。

先介绍虚拟机⼀下环境:redhat7.2+GI 12.2.0.1+Oracle 12.2.0.1,为了测试12.2的ASM特性安装了GI。

平时监听程序默认是开启启动的。

但是今天不知道为什么没有启动。

使⽤crsctl查看资源状态:发现监听的状态确实是OFFLINE状态[root@rhel7 .oracle]# crsstat--------------------------------------------------------------------------------Name Target State Server State details--------------------------------------------------------------------------------Local Resources--------------------------------------------------------------------------------ora.DATA.dgONLINE ONLINE rhel7 STABLEora.LISTENER.lsnrONLINE OFFLINE rhel7 STABLEora.asmONLINE ONLINE rhel7 Started,STABLEora.onsOFFLINE OFFLINE rhel7 STABLE--------------------------------------------------------------------------------Cluster Resources--------------------------------------------------------------------------------ora.cssd1 ONLINE ONLINE rhel7 STABLEora.diskmon1 OFFLINE OFFLINE STABLEora.driver.afd1 ONLINE ONLINE rhel7 STABLEora.evmd1 ONLINE ONLINE rhel7 STABLEora.ora12c.db1 ONLINE ONLINE rhel7 Open,HOME=/u01/app/oracle/product/12.2/db_home1,STABLE--------------------------------------------------------------------------------尝试⼿动启动监听,依然报错:[grid@rhel7 ~]$ srvctl start listenerPRCR-1079 : Failed to start resource ora.LISTENER.lsnrCRS-5016: Process "/u01/app/grid/bin/lsnrctl" spawned by agent "ORAAGENT" for action "start" failed: details at "(:CLSN00010:)" in "/u01/app/12.2/grid/diag/crs/rhel7/crs/trace/ohasd_oraagent_grid.trc" CRS-5016: Process "/u01/app/grid/bin/lsnrctl" spawned by agent "ORAAGENT" for action "start" failed: details at "(:CLSN00010:)" in "/u01/app/12.2/grid/diag/crs/rhel7/crs/trace/ohasd_oraagent_grid.trc" CRS-2674: Start of 'ora.LISTENER.lsnr' on 'rhel7' failed根据提⽰查看trc⽂件,看到如下报错:LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 15-NOV-2017 20:03:28Copyright (c) 1991, 2016, Oracle. All rights reserved.Starting /u01/app/grid/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 12.2.0.1.0 - ProductionSystem parameter file is /u01/app/grid/network/admin/listener.oraLog messages written to /u01/app/12.2/grid/diag/tnslsnr/rhel7/listener/alert/log.xmlListening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rhel7)(PORT=1521)))Error listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))TNS-12555: TNS:permission deniedTNS-12560: TNS:protocol adapter errorTNS-00525: Insufficient privilege for operationLinux Error: 1: Operation not permittedListener failed to start. See the error message(s) above...看到Insufficient privilege for operation这个字样觉得很纳闷,怎么会权限不⾜呢,于是尝试⽤root直接启动监听,依然报错:[root@rhel7 .oracle]# lsnrctl startLSNRCTL for Linux: Version 12.2.0.1.0 - Production on 15-NOV-2017 20:22:30Copyright (c) 1991, 2016, Oracle. All rights reserved.Starting /u01/app/grid/bin/tnslsnr: please wait...TNS-12546: TNS:permission deniedTNS-12560: TNS:protocol adapter errorTNS-00516: Permission deniedLinux Error: 13: Permission denied于是各种百度,下⾯把百度到内容列出来,可能会对看此⽂的同学有⽤,但是对我这种情况没有⽤:主要是说 /var/tmp/.oracle、/tmp/.oracle 这两个⽬录的权限访问问题。

oracle常见故障处理手册

oracle常见故障处理手册

oracle常见故障处理手册一、数据库启动与关闭故障1.数据库启动失败原因:可能是由于Oracle数据库配置不正确、系统环境变量设置不正确、初始化参数设置不正确等原因导致。

解决方法:检查数据库日志文件,查看错误信息,根据错误信息进行相应的修复。

2.数据库关闭失败原因:可能是由于数据库事务未完成、数据库锁未释放等原因导致。

解决方法:检查数据库日志文件,查看错误信息,根据错误信息进行相应的修复。

二、连接故障1.连接不成功原因:可能是由于网络连接问题、数据库用户名或密码错误、数据库实例名错误等原因导致。

解决方法:检查网络连接是否正常,检查数据库用户名和密码是否正确,检查数据库实例名是否正确。

2.连接断开原因:可能是由于网络不稳定、数据库服务器异常等原因导致。

解决方法:检查网络连接是否正常,检查数据库服务器是否正常。

三、数据恢复故障1.数据丢失原因:可能是由于数据库损坏、磁盘故障等原因导致。

解决方法:根据数据丢失的原因,选择相应的恢复方法,如使用备份恢复数据或使用日志文件恢复数据。

2.数据不一致原因:可能是由于数据修改不一致、数据复制不一致等原因导致。

解决方法:检查数据修改和复制的日志文件,找到不一致的数据并修复。

四、性能优化故障1.性能下降原因:可能是由于CPU占用过高、内存占用过高、磁盘IO过大等原因导致。

解决方法:优化数据库配置参数,如增加内存、优化磁盘IO等。

2.查询速度慢原因:可能是由于查询语句不优化、表没有建立索引等原因导致。

解决方法:优化查询语句,为表建立索引等。

五、存储管理故障1.存储空间不足原因:可能是由于磁盘空间不足、表空间不足等原因导致。

解决方法:清理磁盘空间,增加磁盘空间,调整表空间大小等。

2.数据文件丢失或损坏原因:可能是由于磁盘故障、人为误删除或修改等原因导致。

解决方法:使用备份恢复数据文件或修复损坏的数据文件。

六、网络连接故障1.网络连接中断原因:可能是由于网络设备故障、网络连接线故障等原因导致。

OracleDBConsoleorcl不能启动的方法整理

OracleDBConsoleorcl不能启动的方法整理

OracleDBConsoleorcl不能启动的方法整理OracleDBConsoleorcl不能启动的方法整理杨建峰结合本次电能质量在线监测系统程序的部署中出现的数据库的问题OracleDBConsoleorcl不能启动的解决方法做以整理方法有三种。

一、启动电脑,到登陆界面,电脑报有个服务启动失败,电脑没有新装软件,周六还没有问题,怎么突然报这个错误?于是到事件查看器中看看什么问题,显示是OracleDBConsoleorcl启动失败,到服务里一看,确实没有启动。

手动启动一下,报错误码2我装的是10g,于是到ORACLEproduct10.2.0db_1test_orclsysmanlog目录看一下log 里写了什么,打开OracleDBConsoleorclsrvc.log.log最后记录的是:————– [OracleDBConsoleorcl] ————EMDROOT=c:oracleproduct10.2.0db_1ORACLE_HOME=c:oracleproduct10.2.0db_1EMDSTATE=c:oracleproduct10.2.0db_1wangzh_orclCONSOLE_CFG=dbconsoleTRACE_LEVEL=16TIMEOUT=1512/10/07 10:56:03 Start pending…12/10/07 10:56:03 Verifying dbconsole is not started already. Command line "c:oracleproduct10.2.0db_1binemctl.bat" istatus dbconsole12/10/07 10:56:04 dbconsole launch commandline is "c:oracleproduct10.2.0db_1binemctl.bat" istart dbconsole 12/10/07 10:56:04 Tracking process launch…12/10/07 10:56:34 dbconsole exited with retCode 2.12/10/07 10:56:34 Checkc:oracleproduct10.2.0db_1test_orclsysmanlogemdbconsole.noh up for details 日志让看emdbconsole.nohup文件,目录里没有这个文件呀。

解决Oracle无监听错误

解决Oracle无监听错误
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
启动已经成功,
5.再tnsnames.ora上添加上
ORCL_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-9月 -2008 11:1
1:09
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
32-bit Windows Error: 49: Unknown error
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
2、查看Oracle的listener是否启动

oracle监听服务无法启动问题解决

oracle监听服务无法启动问题解决
Oracle监听器服务无法启动解决办法 收藏
办法一:修改注册表
解决办法就是修改注册表,ImagePath
开始-->运行REGEDIT -->进入注册表找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleXXXTNSListener
5.再启动Listener1监听服务,可以连接到数据库。
本文来自CSDN博客,转载请标明出处:/hittata/archive/2009/04/10/4061562.aspx
2.进入“命令提示符”,运行“监听控制程序——LSNRCTL”,再运行“start listener1”,首次启动Listener1监听程序,为Listener1在操作系统服务里生成相关服务项。为了后面的修改操作能够生效,再运行“stop listener1”停止Listener1。
3.将服务中原Listener服务的“启动类型”改为“已禁用”,将已生成的Listener1服务的“启动类型”改为“自动”。
4.用“记事本”打开监听服务配置文件“ORACLE_HOME \ network \ admin \ listener.ora”,将“LISTENER =”、“SID_LIST_LISTENER =”分别改为“LISTENER1 =”、“SID_LIST_LISTENER1 =”,并删除当前的“LISTENER1 =”、“SID_LIST_LISTENER1 =”项。该操作的作用为:不用费力为Listener1监听服务再配置常规参数、数据库监听等,直接采用原Listener服务的配置。
发现ImagePath关键值没有了,新建一个名为ImagePath的可扩充字符串值,编辑字符串的数值数据为:Oracle安装路径\BIN\TNSLSNR

oracle监听器启动出错:本地计算机上的oracleoradb11g home1tnsl

oracle监听器启动出错:本地计算机上的oracleoradb11g home1tnsl

Oracle监听器启动出错:本地计算机上的OracleOraDb11ghome1TNSL...分类:Oracle一、错误描述登陆PL/SQLDeveloper登陆本地数据库时先报没有监听程序,查看服务发现Oracle监听服务没有启动。

右击启动监听程序,报错:错误描述:本地计算机上的OracleOraDb11g_home1TNSListener服务启动后又停止了。

一些服务自动停止,如果它们没有什么可做的,例如"性能日志和警报"服务。

二、原因分析你安装oracle的时候是连网的,那么listener.ora文件里的HOST=网络给你分配的IP地址,而在你断网的时候就会出现这样的情况。

三、解决办法方法一:监听器通过listener.ora或者NetManager修改监听器配置。

将原来本地字符串127.0.0.1或者localhost改为主机名。

首先查阅你的**product11.2.0dbhome_1NETWORKADMIN目录下的"tnsnames.ora"和"listener.ora"这两个文件,然后看看里面的"HOST"信息,看看是不是你当前的ip地址,如果不是尝试着把这个2个文件改成你的ip地址,或直接就改成127.0.0.1(或计算机名字):注意:此时的监听配置文件"listener.ora"里面的HOST=的内容(IP或者主机名)必须和,服务配置文件"tnsnames.ora"里面,你想要链接的服务的HOST=的内容完全一致。

意思就是说要么都是IP地址,要么都是主机名。

如果有多个服务(NetManager中配置的网络服务)那么查看"tnsnames.ora"文件中与监听HOST内容一致的PL/SQL才可正常登录进去,否则无监听程序。

如:上面这里是"listener.ora"里面的HOST,我的是主机名。

Oracle设置DB、监听和EM开机启动的方法

Oracle设置DB、监听和EM开机启动的方法

Oracle设置DB、监听和EM开机启动的⽅法⼀、Windows系统Oracle提供了随操作系统启动⽽启动的功能,在Windows和Linux中,分别有不同的设置⽅法。

在Windows中,可以修改“我的电脑-->管理-->服务-->OracleService$ORACLE_SID”,或直接使⽤Win+R键打开运⾏窗⼝,输⼊services.msc即可打开服务,找到相应的Oracle服务,然后将其属性中的启动类型修改成⾃动。

⼀般在Windows系统上安装完后会⾃动设置成⾃动。

⼆、Linux系统对于Linux/Unix操作系统,如果想设置⾃动重启,那么该如何操作呢?对此Oracle提供了dbstart命令⽤于启动。

⾸先,第⼀步,需要修改/etc/oratab⽂件,将N修改为Y[root@oracle ~]# vim /etc/oratabLHR11G:/u01/app/oracle/product/11.2.0.4/dbhome_1:Y #将N改为Y⽂件/etc/oratab由root.sh脚本创建,在⽤dbca命令创建实例时也会更新这个⽂件。

当$ORACLE_SID:$ORACLE_HOME:<N|Y>设置为Y时,允许实例⾃启动,当设置为N时,则不允许⾃启动。

这个⽂件⾥的配置仅仅起⼀个开关的作⽤,其并不会具体的执⾏启动和关闭,具体的操作由$ORACLE_HOME/bin/dbstart和dbshut脚本来实现。

这2个脚本在执⾏时会检查/etc/oratab⽂件⾥的配置,为Y时才能继续执⾏。

接下来需要配置开机启动⽂件,有2种办法:⽅法1:配置/etc/rc.d/rc.local⽂件(推荐)在配置了/etc/oratab⽂件后,然后将以下脚本添加到/etc/rc.d/rc.local或/etc/rc.local⽂件中(/etc/rc.local是/etc/rc.d/rc.local的软连接⽂件):cat >> /etc/rc.d/rc.local <<"EOF"# 重启DBexport ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1su oracle -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"# 重启EMexport ORACLE_UNQNAME=LHR11Gsu oracle -c "$ORACLE_HOME/bin/emctl start dbconsole"该⽅法需要注意以下问题:1、若环境中没有创建EM,则可以不⽤添加ORACLE_UNQNAME和emctl这2⾏2、从Oracle 12c开始,由于EMDE(Enterprise Manager Database Express)替代了原有的EMDC(Enterprise Manager Database Control),所以,不再单独设置EM相关内容,只需要配置DB即可,例如:cat >> /etc/rc.d/rc.local <<"EOF"# 重启DBexport ORACLE_HOME=/u01/app/oracle/product/12.1.0.2/dbhome_1su oracle -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"EOF3、在CentOS 7中,/etc/rc.d/rc.local的权限被降低了,所以需要执⾏如下命令赋予其可执⾏权限:chmod +x /etc/rc.d/rc.local最后就可以重启OS做测试⼯作了。

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

Oracle监听器服务不能启动的7步解决法
200712 陈平
一、连接主机字符串,说没有监听器SVRMGR> connect internal/oracle@orcl; ORA-12541: TNS:no listener SVRMGR>
二、运行监听器,说地址的协议专用组件指定不正确C:>lsnrctl LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Pro duction on 14-3月-2003 14:17 :51 (c) Copyright 1998, 1999, Oracle Corporation. All rights reserved. 欢迎来到LSNRCTL,请键入"help"以获得信息。

LSNRCTL> status 连接至(DESCRIPTION=(A DDR ESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521)))
TNS-01103: 地址的协议专用组件指定不正确
TNS-12541: TNS:无监听器
TNS-12560: TNS:协议适配器出现错误
TNS-00511: 无监听器32-bit Windows Error: 61: Unknown error LSNRCTL> start 启动tnslsnr:请稍候...
Failed to start service, error 3.
TNS-12536: TNS:可能会阻碍*作
TNS-12560: TNS:协议适配器出现错误
TNS-00506: *作可能阻塞32-bit Windows Error: 997: Unknown error LSNRCTL> 三、在控制面板中启动服务,出现以下错误服务:在本地计算机无法启动OracleOraHome81TNSListener 服务。

错误3:系统找不到指定的路径而且OracleOraHome81TNSListener服务的可执行文件的路径是空的。

四、进入注册表中修改ImagePath 在运行处执行REGEDIT进入注册表到HKEY_LO CA L_MAC HINESYSTEMCurrentControlSetServicesOracleOraHome81TNSListener 发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:f:OracleOra81BINTNSLSNR 退出注册表。

五、再去启动服务,服务启动正常
六、启动监听器
C:>lsnrctl LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Production on 14-3月-2003 14:42 :10 (c) Copyright 1998, 1999, Oracle Corporation. All rights reserved. 欢迎来到LSNRCTL,请键入"help"以获得信息。

LSNRCTL> start TNS-01106: 使用名称LISTENER的监听器已经启动
LSNRCTL> status 连接至(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521))) LISTENER 的STATUS ------------------------ 别名LISTENER 版本TNSLSNR for 32-bit Windows: Version 8.1.6.0.0 - Produc tion 启动日期14-3月-2003 14:40:15 正常运行时间0 天0 小时2 分 6 秒跟踪级别off 安全性OFF SNMP OFF 监听器参数文件f:OracleOra81networkadminlistener.ora 监听器日志文件f:OracleOra81networkloglistener.log 服务摘要..
PLSExtProc 具有1个服务处理程序orc2 具有1个服务处理程序orcl 具有1个服务处理程序orcl 具有2个服务处理程序命令执行成功LSNRCTL>
七、再去连接,成功SVRMGR> connect internal/sys@orcl; 连接成功。

相关文档
最新文档