QCon 全球软件开发大会(北京站)门票 9 折倒计时 4 天,点击立减 ¥880 了解详情
写点什么

Oracle 19c 安装配置中的填坑实录

2020 年 7 月 29 日

Oracle 19c安装配置中的填坑实录

本文由 dbaplus 社群授权转载。


背景

去年 Oracle 19C 发布,作为最新的 Oracle 发布版,我们的客户也开始有计划将数据库从 11G 之类的旧版本慢慢迁移到 19C 上。最近,在客户的现场环境下进行了 19C 的安装和配置,经历了一系列的坑与填坑过程,本文分享给大家。


先介绍环境:


  • 操作系统:Redhat 7.6

  • Oracle 数据库版本:19.7

  • 是否 RAC:是


奇妙的网络配置

安装硬件分配入手,先按惯例将操作系统相关参数配置修改了一遍。一切准备就绪,开始安装 GI。前面一段相安无事,结果在运行 root.sh 的时候,问题来了:


运行 root.sh 在第 18 步进行节点配置时报启动 ora.qosmserver 失败。



查看 rootcrs 日志如下:



日志也只显示 qosmserver 打不开,并没有其它有效的信息,上网搜索也没有什么相关的案例。另一台机器安装 GI 也报相同的错误,没办法只好求助于 MOS 了。


结果还真找到一篇类似的 12.2 root.sh fails with CLSRSC-1102: failed to start resource ‘qosmserver’ (Doc ID 2253718.1)。


但是报错跟我们有点区别:



该文章介绍由于 ipv6 ::1/128 地址未配置导致,配置即可解决。



看到这里,想到会不会是由于网络配置的原因呢?当即查看了/etc/hosts,发现::1 这一行被注释了。



尝试把注释取消,重新运行 root.sh 成功。


诡异的文件权限

安装完成后,需要安装相应的补丁。安装补丁前,按照多年来因吃过的亏养成的习惯,将 OraInventory、Oralce_home、GI_HOME 等相关目录统统打个包备份一遍。事后发现这个习惯非常有用,因为在安装补丁这一步又卡住了。


报错如下:



从以上信息我们可以看到补丁在 DB HOME 已经成功应用,但是在 GI HOME 应用时失败,报/oracle/app/oraInventory/ContentsXML/oui-patch.xml 文件权限问题。我们查看文件权限发现问题所在,同组 grid 用户该文件无写权限。



将补丁回滚失败后,把之前备份还原回来发现补丁安装之前是没有这个文件的。由此我们可以估计 oui-patch.xml 是在 DB HOME 进行补丁升级时派生的。



再次进行补丁升级时,发现 oui-patch.xml 已生成,用 root 紧急给 oui-patch.xml 赋予 664 权限(注:只要文件一旦生成,需立即赋权),补丁升级成功。



此外,在 CRS alert 日志中我们发现节点会去检查所有节点的文件。日志中发现部分文件不存在报错信息。前往各节点查看这些文件,确认在所有节点都不存在。


信息如下:



通过核查集群及数据库均确认正常的情况下,估计是我们没用上的一些功能,这些报错暂时先忽略。


IPV6

客户网络很快开始着手改造为 IPV6,趁着这个机会,我们也配置 Oracle 的 IPV6 网络。先确认一下操作系统层面是否打开 IPV6,下面是 Linux 下两种常见的方法:


1、通过查看网卡属性确定

ifconfig-a


命令输出有“inet6…“的表示开启了 IPV6 功能。



2、通过内核模块加载信息查看

lsmod| grep ipv6



确认打开 IPV6 后,需要自定义地址,修改网卡配置文件,新增内容如下:



我们这里设置了两个地址,一个主用,一个备用。


重启网络生效,通过 ping6 命令测试是否可以连通,也可以使用 ping-6:



查找监听文件 listener.ora 并进行修改,新增 IPV6 的监控地址与端口。需要注意监听中 IPV6 端口须与 IPV4 端口不一致:


LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))(ADDRESS= (PROTOCOL = TCP)(HOST = 2020:db8:1000::200)(PORT =1601)(IP=FIRST))))


重启监听之后查看结果如下:



接下来我们配个 TNS 连接串并进行测试连接成功:



至此,IPV6 的网络配置完成。


小结

在可见的未来,其实越来越多的数据库会迁移到云上,Oracle 近几年也在大张旗鼓地进行云化。这些传统 DBA 的安装、配置工作量慢慢在减少,但是作为一种基础能力我们还是需要熟练掌握的。


作者介绍


梁铭图,新炬网络首席架构师,十多年数据库运维、数据库设计、数据治理以及系统规划建设经验,拥有 Oracle OCM、Togaf 企业架构师(鉴定级)、IBM CATE 等认证,曾获 dbaplus 年度 MVP 以及华为云 MVP 等荣誉,并参与数据资产管理国家标准的编写工作。在数据库运维管理和架构设计、运维体系规划、数据资产管理方面有深入研究。


原文链接


https://mp.weixin.qq.com/s?__biz=MzI4NTA1MDEwNg==&mid=2650792156&idx=2&sn=75f70df6d539a1cc692292c8a2142c81&chksm=f3f95549c48edc5fd20f58cfed44222c7c4a40674623f332e0e3664679059ace8478f70e62c8&scene=27#wechat_redirect


2020 年 7 月 29 日 14:051455

评论

发布
暂无评论
发现更多内容

1024,属于程序员的一天

白色蜗牛

编程 程序员 Java 分布式 1024

【建议收藏】10个适合程序员逛的在线社区

田维常

Architecture Phase1 Week5:HomeWork

phylony-lu

极客大学架构师训练营

第五周学习总结

alpha

极客大学架构师训练营

架构师入门感悟一

莫问

图解 | 一图摸清Android系统服务

哈利迪

android

架构师2期week1作业

M.

架构师训练营week1学习总结

花果山

极客大学架构师训练营

架构师训练营第 1 期 -week5

习习

第1周作业:食堂就餐卡系统设计

Steven

架构师训练营 W01 总结

Geek_f06ede

极客大学架构师训练营

LeetCode题解:50. Pow(x, n),递归分治,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

极客大学 - 架构师训练营 第五周

9527

图解 | Android系统的启动

哈利迪

android

第五周作业

alpha

极客大学架构师训练营

技术选型一第五周总结「架构师训练营第 1 期」

天天向善

技术选型一第五周作业「架构师训练营第 1 期」

天天向善

架构方法学习总结

Sandman

极客大学架构师训练营

LeetCode题解:50. Pow(x, n),迭代分治,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

食堂就餐卡系统设计

DL

微服务监控:SpringBoot-Micrometer-Influx

LanLiang

监控 Influxdb springboot metrics

架构师训练营第五周总结

睡不着摇一摇

架构师一期

第一周UML图

Geek_9527

图解 | 一图摸清Android应用进程的启动

哈利迪

android

架构师训练营 1 期 - 第五周作业(vaik)

行之

极客大学架构师训练营

架构师训练营 - 第五周作业

一个节点

极客大学架构师训练营

架构师训练营 - 第五周总结

一个节点

极客大学架构师训练营

架构师训练营 -week05- 作业1

lucian

极客大学架构师训练营

架构师训练营 -week05- 总结

lucian

极客大学架构师训练营

4. Validator校验器的五大核心组件,一个都不能少

YourBatman

Hibernate-Validator Bean Validation 数据校验

正式“退休”的Flash,未来我们会怀念它吗?

脑极体

边缘计算隔离技术的挑战与实践

边缘计算隔离技术的挑战与实践

Oracle 19c安装配置中的填坑实录-InfoQ