暂无图片
linux下11g自动启动报ORA-01102
我来答
分享
愤怒的鸟人
2021-11-30
linux下11g自动启动报ORA-01102

各位大佬,在设置linux下oracle11g自动启动的时候,按照网上的设置,但是每次系统重启,实例都没有起来,然后直接startup,都会提示ORA-01102: cannot mount database in EXCLUSIVE mode?,每次都要手动删除dbs目录下lkxxx文件才能正常启动,请问如何解决。

我来答
添加附件
收藏
分享
问题补充
6条回答
默认
最新
Uncopyrightable

数据库异常关机?感觉Oracle没有必要设置成自启动,难道数据库还需要定期关机?稳定运行才是根本。

暂无图片 评论
暂无图片 有用 0
打赏 0
cqiwen

oerr ORA 01102
01102, 00000, "cannot mount database in EXCLUSIVE mode"
// *Cause: Some other instance has the database mounted exclusive or shared.
// *Action: Shutdown other instance or mount in a compatible mode

检查下是不是设置了多个开机自启脚本。或者把你的自启脚本发出来看下。

暂无图片 评论
暂无图片 有用 0
打赏 0
愤怒的鸟人

应该没有设置多个自启脚本。

暂无图片 评论
暂无图片 有用 0
打赏 0
DER322

没法帮你解答问题了。不过我也说说自启动,我感觉自启动不科学,可能你有时候要排查问题,需要先startup nomount,或者startup mount,结果你一开机就自启动了,怎整?

暂无图片 评论
暂无图片 有用 0
打赏 0
愤怒的鸟人

已经解决,不是自启脚本的问题,是我的系统变量ORACLE_SID=xxx,设置大写,然后其他地方是小写,导致启动时启动不存在的实例。

暂无图片 评论
暂无图片 有用 2
打赏 0
DER322
2021-12-01
学习了
孙希瑞
2022-12-03
胡飞

遇到这种情况,可能是由于在系统重启后,Oracle实例没有正确地关闭导致的。这可能导致数据库在启动时无法获取独占模式,因此出现了 "ORA-01102: cannot mount database in EXCLUSIVE mode" 错误。解决这个问题的步骤如下:

1. **确保正确关闭数据库:** 在系统重启前,请确保使用 `shutdown immediate` 命令或者 `shutdown abort` 命令来关闭Oracle实例。这样可以确保数据库正确地释放锁文件和其他资源。

2. **检查数据库启动脚本:** 检查Oracle数据库启动脚本是否正确配置。在Linux系统上,数据库启动脚本通常位于 `/etc/init.d` 目录下,名字类似于 `oracle` 或者 `ora`。确保脚本中的启动命令包含了正确的实例名和路径。

3. **检查系统日志:** 检查系统日志,特别是 `/var/log/messages` 或者 `/var/log/syslog` 文件,查看是否有有关数据库启动失败的错误消息。这可以帮助确定问题的具体原因。

4. **清理残留文件:** 在每次手动删除 `dbs` 目录下的 `lk` 文件后,使用 `lsnrctl status` 命令确认监听器是否已停止。如果监听器尚未停止,请使用 `lsnrctl stop` 命令停止监听器。然后再次尝试启动数据库。

5. **手动启动数据库:** 在确认监听器已停止的情况下,尝试手动启动数据库。使用 `sqlplus / as sysdba` 登录到数据库,然后使用 `startup` 命令尝试启动数据库。确保启动过程中没有任何错误。

6. **检查权限问题:** 确保数据库启动脚本和Oracle用户的权限设置正确,有足够的权限来访问数据库文件和目录。

7. **重启服务器:** 在执行上述步骤后,重新启动服务器,然后观察数据库是否能够自动启动。

如果遇到问题仍然无法解决,可能需要详细分析日志文件和数据库配置,或者考虑重新配置数据库启动脚本。最后,如果需要进一步的帮助,建议联系Oracle数据库管理员或专业支持团队寻求帮助。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
Oracle expdp导出 schemas 这个参数有什么作用?
回答 3
expdp参数DIRECTORY:用于转储文件和日志文件的目录对象。DUMPFILE:指定导出备份文件的命名。LOGFILE:指定导出备份日志的命名。里面记录了备份中的信息。FULL:导出整个数据库(
有好用的oracle存储过程迁移工具么?比如到迁移到pg
回答 2
已采纳
Ora2Pg。它是一个免费的工具,用于将Oracle数据库迁移到PostgreSQL兼容的模式。它连接您的Oracle数据库,自动扫描并提取它的结构或数据,然后生成可以装载到PostgreSQL数据库
求一个,aix 6 7t数据量数据库10g升级到x86 平台19c的方案
回答 7
已采纳
不能一步到位,使用expdp或者xtts先升级到11204,然后再升级到19c.细点说就是在x86的19cRAC上装一个11204的单机,然后将你的aix610g的数据通过expdp或者xtts搞进去
使用in-memory特性有哪些弊端?
回答 1
已采纳
目前已知无弊端。是OracleHATP的主要手段。
centos7安装oracle10g 报错:7978段错误
回答 1
已采纳
1.检查安装介质和你的操作系统是否适配。2.检查环境变量。3.检查runInstaller文件47行前后内容。
表空间有个数据文件1,里面有个对象a,现在shrink这个表空间,a会不会跑到数据文件2上,还是仍然停留在1上?
回答 1
已采纳
默认只移动行数据!oracle以block为单位,进行了block间的数据copy.那么shrink后,部分行数据的rowid发生了变化,同时,部分行数据的物理存储的顺序也发生了变化,而table所位
oracle数据库11.2.0.4版本,已经打过181016的补丁,现在想打201020的补丁,要不要先回滚181016的补丁?
回答 1
在Oracle数据库中,不需要先回滚已经安装的补丁才能安装新的补丁。您可以直接在已经打过181016的版本上安装201020补丁。通常情况下,Oracle的每一个补丁都是独立的,不依赖于之前安装的补丁
各位 老师请教下, 在只读active dataguard上挂的应用,如何获取某个时间段性能差的SQL呢? ash相关v$视图能抓到sql_id 但v$SQL相关视图都找不到了。 之前历史执行的SQL有办法抓出或后续有什么办法抓到吗?
回答 1
已采纳
ADG可以通过statspack收集统计信息。
PL/SQL块中可以使用以下()命令
回答 5
已采纳
BdeleteDalter
Oracle 11g dg可以升级为19吗?
回答 3
我觉的你可以将主库升级到19c,然后备库重新搭建ADG