2、问题分析
对于没有见过的问题,最好的处理方法就是检索Oracle MOS。Oracle MOS是一个我们学习解决问题最好的方法。
对Listener启动的问题,一个类似的问题是ID 948094.1,Windows: TNS Listener Startup Fails with TNS-12560。在这个案例中,虽然是2008 64bit版本的服务器,同样出现了不能启动监听器的问题。
Oracle对这个问题的解释是:当前操作系统用户(非Administrator),权限不足。需要额外赋予“Create Global Object”权限策略。
对DIM-00014错误,这个是在ID 432713.1中有一个说明。当我们试图手工创建Windows版本Oracle实例的时候,一个步骤就是创建Services对象。我们在Windows Services列表中查看到的控制列表项目,就是这个步骤完成的。报错的主要原因,就是Windows引入的UAC(User Account Control)功能,对非管理员用户创建服务进行特殊的约束。
综合两个问题,权限是根本性的原因。和通常安装场景不同的是,笔者没有使用Administrator用户进行安装,而是另外创建用户。即使是额外赋予了管理员组权限,还是有很多问题。一种尝试的策略是切换回Administrator用户,进行安装操作。
3、问题解决
切换回Administrator之后,继续配置安装过程。这次平安无事。
4、结论
这个问题是比较简单的,但是给笔者的启示和想法是很多的。
首先,对于我们安装版本的选择。虽然有用途和维护用户的实际情况,我们还是尽可能选择AIX、Linux版本系操作系统进行安装。对Windows版本,只要不是特殊的要求,我们尽量不要使用。这种不仅仅是从架构、稳定性的考虑,也是从版本支持力度和后台修复角度的考量。
其次,简单最好。越简单的架构设计,越不容易出现问题。并且在出现问题的时候解决越简单。我们日常工作大多数都是任务目标驱动的,而且时间常常是严重的约束。最简单的方法、工具和技术,最适合的实现我们的目标,在实际工作中才是最有价值的。
最后,就是出现问题解决。每一个IT人员的工作和成长,都是从一个难题到另一个问题。在出现问题的时候,不要慌张是第一步的,寻找官方资源,确定问题所在。大胆推理,小心求证是非常好的方法。