我正在设置一个虚拟机来尝试复制我们的生产环境,以便进行部署测试。VM 是运行Windows Server 2003和Oracle 10g的VMWare 服务器。我通过 tnsnames 连接标识符连接到 oracle。
我启动并运行了一次,复制了 VM 文件,并认为一切都很好。但是现在我在尝试让 oracle 在我制作的备份上运行时遇到了一些问题。话虽如此,我完全有可能对这个或我没有注意到或忘记的工作 VM 进行了一些更改,因此我认为这不一定是虚拟化问题。
我不是预言家,而且我们没有太多的 dba,所以我有点在这条小溪上。这是我的问题:
- 当我启动机器时,我可以执行 lsnrctl services 并看到包含我的应用程序数据库的服务有 1 个实例正在运行。当我尝试通过 sqlplus 连接时,我得到 ORA-01033:Oracle 初始化或关机正在进行中
- 如果我等待一段时间,我看到服务从 lsnrctl 服务列表中消失,显然我无法连接 sqlplus (ORA-12514)
- 如果我转到 Windows 服务管理 mmc 控制台,我可以看到应该容纳该 oracle 实例的 Windows 服务确实仍在运行。
- 我可以重新启动windows服务。此时我可以再次在 lsnrctl 服务下看到它,但再次尝试通过 sqlplus 连接到它会导致 ORA-01033。一段时间后,它关闭并消失。
- 在任何时候尝试 sqlplus "/ as sysdba" 都会导致 ORA-12560: TNS:protocol adapter error
- 没有任何用处被写入 Windows 事件日志
关于什么可能导致这种情况的任何想法?关于下一步我可以尝试什么的任何提示?
更新: 本着 stackoverflow 的精神,让我们保持打开状态,以防有人后来寻求建议,但在我的情况下,完全卸载/安装 oracle 并重新导入数据库是最方便的解决方案。