大神啊, OracleServiceORCL这个服务竟然不见了

本文探讨了OracleServiceORCL服务消失的原因,并提供了两种可能的解释:安装MySQL导致的冲突(可能性较低)及长时间未使用被安全软件误删。文中还介绍了如何通过命令行重新创建或删除Oracle服务。

   OracleServiceORCL这个服务竟然不见了,后数据库连接不成功,晕死,以前使用数据库还能看到,现在竟然不见了?Why?我猜测原因有二:

①:电脑已经装了Oracle数据库后又装了MySql数据库,但是这可能性极低,有人说这两个不会冲突...

②:就是有点时间没使用Oracle数据库了,然后被360给kill掉了,感觉可能性最大,表示很愤怒.....


1.新增数据库ORCL实例服务的命令:

oradim -new -sid ORCL


2.可以用sc命令删除oracle在Windows的Service

  sc delete OracleServiceORCL


   sc命令还有一些其它的用途,比如开始一个服务啊,停止一个服务啊,或者看系统当前有哪些服务。不过这些都可以在系统的管理的图形界面里面操作,而添加和删除服 务则在管理图形界面中似乎无能为力,只能在命令行中进行。


  其实这样做了,还是没能彻底解决问题,有其他问题出现,我就放在其他博文里去了,不想弄得太杂,也可以条理清晰。


参考:http://lisong0624.blog.163.com/blog/static/18871986201043062313944/

         http://www.itpub.net/thread-602266-1-1.html

<think>嗯,用户遇到Oracle服务未能启动的问题,需要排查原因。首先,我应该根据常见的Oracle启动故障来逐步分析。记得用户提供的引用中有几个相关的错误和提示,比如ORA-01092和Netbackup写入时间戳的问题,还有使用gdb可能导致进程被kill的情况。 首先,用户需要检查告警日志,这是最直接的途径。告警日志通常会记录启动过程中的详细错误信息,比如参数文件缺失或损坏,或者控制文件的问题。引用[2]提到启动实例时报错ORA-01092,实例被终止,这可能是由于参数文件配置错误或者内存分配问题导致的。所以需要引导用户查看alert_orcl.log的位置,并检查其中的错误信息。 接下来,检查实例状态和监听。使用ps -ef和crsctl命令来确认进程是否真的没有运行,或者只是监听没有启动。引用[5]中的crsctl命令可以用来检查集群资源的状态,如果是RAC环境的话。同时,确认监听服务是否正常,监听如果没启动,客户端就无法连接,但实例本身可能还是运行着的。 然后,参数文件和spfile的问题。如果参数文件路径错误或者内容有误,实例启动会失败。用户需要确认ORACLE_HOME和参数文件的路径是否正确,引用[1]中的ORACLE_HOME路径是否正确设置。可能需要从spfile创建pfile,或者反过来,进行排查。 控制文件和数据库文件完整性也很重要。如果控制文件损坏或丢失,实例无法挂载数据库。需要检查控制文件的路径是否存在,文件是否完整。另外,引用[3]提到Netbackup可能在写入Oracle文件头,这可能导致文件损坏,需要确认备份软件是否异常操作了数据库文件。 内存和资源限制也不能忽视。SGA或PGA设置过大可能导致内存不足,尤其是在服务器资源紧张的情况下。检查系统内存使用情况,适当调整内存参数。此外,ulimit设置是否正确,比如文件句柄数和进程数限制,可能影响实例启动。 还有,集群资源的问题。如果是RAC环境,需要检查集群服务是否正常,使用crsctl检查资源状态。引用[5]中的命令可能帮助启动集群服务,但用户的问题是否涉及集群需要进一步确认。 最后,避免使用gdb调试,引用[4]提到使用gdb可能导致进程被kill,所以提醒用户不要在生产环境使用这些工具,以免引发更多问题。 生成相关问题的时候,要覆盖用户可能进一步遇到的方面,比如日志分析、参数文件恢复、集群资源管理等,这样用户可以根据问题找到更多的解决方法。同时,确保回答中引用了正确的资料,比如用户提供的引用编号,这样用户能对应到之前的错误信息。</think>### 排查Oracle服务未能启动的步骤 #### 1. **检查告警日志(Alert Log)** - 定位告警日志路径:`$ORACLE_HOME/diag/rdbms/<数据库名>/<实例名>/trace/alert_<实例名>.log`[^1] - 查看日志末尾的报错信息,例如: - 参数文件(`pfile/spfile`)缺失或损坏 - 控制文件(`control files`)路径错误或权限问题 - 内存分配失败(如SGA/PGA设置过大) - 文件头损坏(可能与备份工具异常写入有关,如NetBackup写入时间戳[^3]) #### 2. **验证实例状态和监听服务** - 查看实例进程是否存活: ```bash ps -ef | grep ora_ | grep orcl ``` - 检查集群资源状态(若为RAC环境): ```bash /u01/app/18.0.0/grid/bin/crsctl status resource -t [^5] ``` - 确认监听服务是否启动: ```bash lsnrctl status ``` #### 3. **检查参数文件(spfile/pfile)** - 确认参数文件路径是否正确: ```sql -- 登录SQL*Plus SQL> show parameter spfile; ``` - 尝试通过pfile启动测试: ```sql SQL> startup pfile='/tmp/init_orcl.ora'; ``` #### 4. **控制文件与数据库文件完整性** - 检查控制文件路径是否有效: ```sql SQL> show parameter control_files; ``` - 验证数据文件、日志文件权限和归属: ```bash ls -l $ORACLE_BASE/oradata/orcl/*.dbf ``` #### 5. **内存和资源限制** - 检查内核参数(如`/etc/sysctl.conf`)和用户限制(`ulimit -a`): - `kernel.shmall`、`kernel.shmmax`是否足够 - 文件句柄数(`fs.file-max`)是否过低 #### 6. **避免高风险操作** - 禁止使用`gdb`调试Oracle进程(可能导致进程被终止[^4]) - 确保备份工具(如NetBackup)未异常写入数据库文件[^3] --- ###
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值