11g Grid Control安装过程的一些“坑”

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

转载声明:转载请注明出处,本技术博客是本人原创文章

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> 11g Grid Control安装过程的一些“坑”

这是我的微信个人公众号的第一篇杂文,这个公众号仅代表个人观点,只是想分享一些技术文章、生活感悟,希望也可以帮助到一些朋友,谢谢各位!

Oracle提供的图形化管理工具目前主要有三个版本: 
EMDC:Enterprise Manager Database Control 
EMGC:Enterprise Manager Grid Control 
EMCC:Enterprise Manager Cloud Control 
DC需要为每个实例创建一套,而GC则可以统一管理多实例,CC则运用了很火的“云”概念来做统一管理数据库,可谓是增强版的GC。

Oracle官网上已经删除了几乎所有11g GC下载链接,主推12c和13c的CC,用心良苦。。。

最近,由于不同项目的开发测试库越来越杂,所以想对其进行统一的管理,虽然流行的是CC,但还是想任性的装一把GC。

对于普通的安装过程就不过多介绍,主要聊聊我在部署GC过程中碰见的N多坑,可能有些问题在各位看来已经不是问题了,但至少作为小白的我,所能碰到的问题想必会有其他人也会碰见,至少是总结一下自己的部署过程,还是有许多值得思考的地方。

坑1:安装介质  (1) 操作系统是Red Hat 6.4,64位。  (2) 资料库:我用的是11.2.0.4版本:  p13390677_112040_Linux-x86-64_1of7.zip  p13390677_112040_Linux-x86-64_2of7.zip  (3) weblogic:从官方网站上没有找到推荐的10.3.2版本,只有10.3.6版本的下载链接(http://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-main-097127.html),为了不因版本问题产生差异,还是找了10.3.2版本:  wls1032_linux32.bin。  (4) GC:这就更费劲了,官网已经不提供下载链接,找了其他渠道下载了11.1.0.1.0版本的镜像:  GridControl_11.1.0.1.0_Linux_x86-64_1of3.zip  GridControl_11.1.0.1.0_Linux_x86-64_2of3.zip  GridControl_11.1.0.1.0_Linux_x86-64_3of3.zip 坑2:weblogic安装  ./wls1032_linux32.bin,提示无法开启图形界面,但命令行方式依然可用:  Unable to instantiate GUI, defaulting to console mode.  有两点注意:  (1) Middleware Home路径会有一个默认值,若要使用另一个路径,则此处需要输入一个新路径,例如/u01/app/oracle/Middleware,接下来就选择这个路径,非默认路径:

(2) 此处3选择是否接收安全更新,可以选择否,参考如下四步操作,设置Receive Security Update为No:

而且有可能在64位环境下执行32位的安装程序,会报错:

经查证(http://www.2cto.com/os/201207/142437.html),其需要32位的glibc,

若需要使用scp传送介质,报错:

无论从远端下载,还是从远端上传,都会报这个错误,原因是没有安装scp命令,需要:

即可使用scp。

坑3:资料库参数  按照建议,或者安装GC会有错误提示,需要设置以下参数的最低值: 11g Grid Control安装过程的一些“坑” 坑4:GC安装未识别中间件  此处即使手工输入或选择,均提示错误:  11g Grid Control安装过程的一些“坑”  此时可以排查下/etc/hosts文件是否增加了主机名的映射关系:

若第一行localhost.localdomain改为emrep11,则也会报错。 
在做的过程中,曾怀疑是weblogic安装的有问题,重装,先卸载weblogic,脚本如下:

坑5:资料库的可访问方式  如果选择资料库提示如下报错,则可能是库信息有误、监听未启动或者库未启动,  11g Grid Control安装过程的一些“坑”  我这碰见的问题是,由于资料库是手工创建,忘了创建密码文件,因此此处报错,orapwd生成密码文件后正常。其使用sysdba权限登录需要口令文件,未创建之前,使用如下EZCONNECT方式访问(sysdba权限 )报的同样是ORA-01017错误: 坑6:密码  安装过程中,密码的要求是至少8位,字母开始,至少包含一位数字:  11g Grid Control安装过程的一些“坑” 坑7:安装过程报错1-删除SYSMAN重装  第一次安装,Repository Configuration失败。  11g Grid Control安装过程的一些“坑”  重装提示SYSMAN已存在,需要删除,此时可以使用如下命令删除,或者根据secooler的建议,直接drop user … cascade删除: 坑8:安装过程报错-删除SYSMAN_MDS  提示MDS Schema Configuration安装错误:  11g Grid Control安装过程的一些“坑”  重新安装会提示SYSMAN_MDS已存在:  11g Grid Control安装过程的一些“坑”  要求删除sysman_mds的信息,如果仅使用drop user sysman_mds删除,则会提示报错,指出信息不匹配,此时可以使用脚本:

完成删除。 
若再有问题,可能还是SYSMAN/SYSMAN_MDS删除不完全的原因,(参考: 
http://blog.csdn.net/qingqingxuelang/article/details/7546888)

再继续安装。

坑9:安装过程报错-SYSTEM表空间容量不足  查看日志:

发现提示的是SYSTEM表空间不足,所以安装之前预留出充足的表空间容量很重要。

坑10:安装过程报错-主机名  安装至OMS Configuration报错:  11g Grid Control安装过程的一些“坑”  查看日志:

发现提示的是hostname主机名要求不能使用.和-,开始我设置的主机名是emrep-11,不符合要求。 
一言不合即重装,先卸载之前安装的组件,可以执行以下脚本调用:

11g Grid Control安装过程的一些“坑” 
关于主机名的变更,需要两步: 
(1) hostname可以修改session的主机名,临时生效。 
(2) /etc/sysconfig/network中的HOSTNAME,永久生效。 
同时,需要注意/etc/hosts等文件中已经定义的主机名需要替换。

坑11:open files限制值  启动oms时,提示了错误:

错误很明显,open files参数值需要至少4096,此处实际只有1024,因此需要改动, 
(1) ulimit -n 4096,临时生效。 
(2) /etc/security/limits.conf修改

重新登录生效。

坑12:GC控制台界面乱码 
GC的显示是根据浏览器语言决定的,我是用chrome,加入了英语语言: 
11g Grid Control安装过程的一些“坑” 
显示仍有乱码: 
11g Grid Control安装过程的一些“坑” 
原因就是需要调整顺序,默认英语: 
11g Grid Control安装过程的一些“坑”

坑13:端口无法访问  GC的访问设置了很多端口,如果开启了防火墙,则需要增加这些端口例外,要么关闭防火墙,否则就会得到例如”failed: No route to host.”这样的错误。  加入例外: 坑14:agent安装过程报错-SEVERE:The Oracle Home name is not valid. Oracle Home names must be 128 characters or less and contain only alphanumeric characters and underscores.  参考官方文档,执行:

其实这ORACLE_HOME_NAME不是要求路径,而是要求一个名称标识,改为:

坑15:agent安装过程报错-agentca报错  执行agentca -f报错:

说缺少这个文件: 
/u01/app/oracle/Middleware/.gcinstall_temp/staticports.ini 
于是从OMS服务器复制了一份,内容就是所有相关的端口定义:

坑16:GC无法新增远程数据库  如图所示,新增Database资源时,提示vm001.cs1cloud.internal找不着:  11g Grid Control安装过程的一些“坑”  实际这台安装了agent的机器名是vm001,没有域名。  开始我是在agent根目录下查找所有包含vm001.cs1cloud.internal的文件:

实际不能这么做。换了一种方法,在/etc/hosts中增加:

11g Grid Control安装过程的一些“坑” 
让OMS可以识别这个域名即可。当然这种方式是一种workaround,若哪位有更准确的方法,可以提出来,共同学习。

坑17:opmnctl指令错误

In Grid Control 10g, we use opmnctl utility to stop, start and get status of Oracle Application Server 10g and OMS (Oracle Management Service). In new Grid Control (11g), OMS is deployed on weblogic server so we need to use emctl instead of opmnctl to start OMS.

10g使用opmnctl查看OMS状态,11g中OMS部署在weblogic服务器上,所以使用emctl来管理OMS。 
使用opmnctl,需要设置ORACLE_INSTANCE环境变量。 
开始设置:

应该使用

就可以使用opmnctl了:

坑18:删除agent  要彻底删除agent,从资料库中可以执行以下语句删除agent信息:

其中参数信息来自于:

重新安装agent,可以先删除旧agent的记录信息:

未解决问题: 
问题1:Firefox无法访问GC控制台 
11g Grid Control安装过程的一些“坑” 
OMS本机和远程都是这个报错。使用chrome可以,怀疑可能和证书有关,本想从chrome中找出证书再导入Firefox,但未找着对应的证书。

问题2:agentdownload方式安装agent报错

总提示:

尝试了agentDownload方式,还尝试了将OMS本机可用的agent打包到远程机器,执行其中的agentDownload,让然报这个错误。

总结:  11g GC安装过程:  (1) 安装资料库,本次使用的是11.2.0.4,创建EMREP资料库,修改需要的参数。  (2) 安装weblogic,本次使用的是10.3.2,需要选择典型安装,关闭安全更新。  (3) 安装Grid Control,注意SYSTEM表空间容量,500M可以,还要注意本机磁盘空间,占用会较多,建议预留20G,每一个组件的安装报错,对应的解决方法可能不同,若选择重新安装,需要先卸载。  (4) agent安装,OMS本机安装无问题,远程download方式仍有问题,本次使用了clone方法,将OMS的agent复制至其他节点,命令操作:

参考:

Advanced Installation and Configuration Guide - 16 Cloning Oracle Management Agent Using ZIP File

然后: 
./emctl secure agent 
./emctl start agent 
./emctl upload 
./emctl status agent 
确保返回结果中,如下两项有值,则表明本机信息已经由agent上传至OMS: 
Last successful upload 
Last successful heartbeat to OMS

11g的GC安装,还是有些艰难,坑不少,但趟过了之后,就应该积累了不少经验值,可依然留了上面三个问题,如果哪位有好的解法,还请告知,共同学习,谢谢。

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

转载声明:转载请注明出处,本技术博客是本人原创文章

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> 11g Grid Control安装过程的一些“坑”


 上一篇
这一刻,我决定为鹅厂拼命 这一刻,我决定为鹅厂拼命
熟悉我的朋友应该都知道,在今年暑期的时候,我实习去的公司就是腾讯,当然,也有一些朋友问我去腾讯有什么样的要求,会不会要求很高,比如,学历是不是需要研究生,技术要达到什么水平,还有工作的内容是不是很难,总之,大家对于腾讯这样的大公司还是有很多
下一篇 
传输表空间TTS操作 传输表空间TTS操作
  迁移或备份数据库可以采用传输表空间技术TTS,优点是操作较简便,只需要将元数据进行导出导入,数据文件可以使用FTP方式从源库拷贝至目标库;缺点是数据文件传输至目标库之前,需要将源库表空间置为只读,相当于停业务,所以需要根据业务要求来判断