当前位置: 首页
数据库
Oracle 19c安装时主机名解析失败?hosts文件添加静态映射解决

Oracle 19c安装时主机名解析失败?hosts文件添加静态映射解决

热心网友 时间:2026-06-30
转载

先说一个在 Oracle 19c 安装过程中容易被忽略的关键点:当出现 INS-30014PRVF-0002 错误时,绝大多数情况都是因为 /etc/hosts 文件配置有误。不是没有配置,而是写了一个“看似正确、实际错误”的版本。

为什么Oracle 19c安装时无法解析主机名_通过在hosts文件中添加静态映射


/etc/hosts 必须同时映射短主机名和完整域名,且严禁使用 127.0.0.1

Oracle 19c 的安装程序并没有那么智能,它会严格调用 hostname -f 来获取完整主机名,例如 rac1.example.com。接着,安装程序会拿这个字符串去查询 /etc/hosts,且不会采用任何降级策略——既不会回退到 127.0.0.1,也不会转而询问 DNS。因此,配置文件必须一步到位。

常见的错误写法有以下两种:

  • 127.0.0.1 rac1 —— 即使 hostname 输出为 rac1,也会失败,因为 hostname -f 返回的是 rac1.example.com,而该完整域名在 hosts 中根本不存在。
  • 127.0.0.1 rac1.example.com rac1 —— IP 使用的是本地回环地址,但 Oracle 要求必须指定本机真实网卡 IP,例如 192.168.10.10

正确的配置其实非常简洁:

192.168.10.10 rac1.example.com rac1

为了验证配置是否生效,可以执行下面三条命令:

  • hostname → 应输出 rac1
  • hostname -f → 应输出 rac1.example.com
  • grep rac1 /etc/hosts → 应返回包含 192.168.10.10 的那一行,且两个主机名均在其中

runcluvfyPRVF-4657PRVF-4664 的真实检查逻辑

这个错误的根源并非 DNS 问题,而是一套严格的本地闭环验证机制。Oracle 会调用系统的 getaddrinfo()gethostbyaddr() 进行正向与反向解析,并要求两者返回的结果完全一致。

  • 正向解析:用 rac1.example.com 查询 IP → 必须得到 192.168.10.10
  • 反向解析:用 192.168.10.10 查询主机名 → 必须返回 rac1.example.com(不能是 rac1 或其他别名)

以下几个常见陷阱容易被忽略:

  • /etc/hosts 中该 IP 行后面多了一个空格或制表符,导致第二个字段被截断
  • 虚拟机克隆后未修改 IP,虽然 hostname -f 已更新,但 hosts 文件仍是旧配置
  • 容器环境中的 hostname 是随机生成的(例如 8a3f2b1e4c7d),而 /etc/hosts 没有同步更新,也未挂载外部 hosts 文件

快速验证可以使用 nslookup 命令:

  • nslookup rac1.example.com → 检查是否返回 192.168.10.10
  • nslookup 192.168.10.10 → 检查是否返回 rac1.example.com

需要注意的是,第二步依赖于 DNS 的 PTR 记录;如果不走 DNS,仅靠 /etc/hosts 自身无法完成反向解析。因此,必须确保 hosts 配置已覆盖所有需求。


SCAN 域名也遵循同一套解析逻辑,但要求更为严格

在 RAC 集群场景下,scan.example.com 并非可选项,它与节点主机名一样,受同一套解析校验的约束,并且存在额外的条件:

  • 解析结果必须返回 2–3 个不同的 IPv4 地址(即 getaddrinfo() 返回 ≥2 个 AF_INET 结构体)
  • /etc/hosts 中不能写成单行多个 IP,例如 192.168.10.10 192.168.10.11 192.168.10.12 scan.example.com 这种写法无效
  • 必须分成三行写入,每行一个 IP 后跟相同的域名:
    192.168.10.10 scan.example.com
    192.168.10.11 scan.example.com
    192.168.10.12 scan.example.com

否则 srvctl start scan 会静默失败,或者 srvctl status scan_listener 会显示监听器只绑定了部分 VIP。这种情况典型地体现了“约定大于配置”的原则——少写一行都不行。


最后提醒一点:修改完 /etc/hosts 后,hostname -f 的输出可能仍缓存了旧值,尤其是在 systemd 系统上。不要仅凭命令输出判断,而应以 getaddrinfo("rac1.example.com", ...) 实际调用的结果为准——这意味着最好重新运行安装程序,或者至少重启 systemd-hostnamed 服务,迫不得已时直接重启系统。毕竟,与其花费半小时逐项排查,不如先花两分钟重启一下,很多问题往往就此迎刃而解。

来源:https://www.php.cn/faq/2659000.html

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
MyBatis Hive多表关联实现方法

MyBatis Hive多表关联实现方法

MyBatis处理Hive多表关联查询与普通数据库类似。需准备映射文件,使用association和collection标签定义关联;创建Java实体类包含集合成员变量承接一对多关系;编写Mapper接口声明查询方法;配置MyBatis环境注册映射;最后通过SqlSession调用即可获取关联数据。

时间:2026-07-01 07:08
提升Hive Metastore查询速度的有效方法

提升Hive Metastore查询速度的有效方法

HiveMetastore查询优化需从存储优化、缓存机制、查询策略、索引构建、并行能力、配置调优、硬件升级、数据分区及定期维护等多方面协同入手,综合提升系统吞吐量与响应速度,有效降低查询延迟。

时间:2026-07-01 07:08
Hive Metastore处理大数据的核心机制

Hive Metastore处理大数据的核心机制

HiveMetastore管理元数据,通过分库分表、读写分离应对海量元数据,调整JVM堆内存并采用G1GC提升稳定性,利用HDFS或云存储及CBO优化器加速查询,在大数据场景下提供高效元数据服务。

时间:2026-07-01 07:08
Kafka Coordinator 如何监控集群的完整方法与最佳实践指南

Kafka Coordinator 如何监控集群的完整方法与最佳实践指南

Kafka协调器监控可通过命令行工具、KafkaManager及JMX实时查看消费者滞后、分区状态等性能指标,并利用Prometheus+Grafana实现长期可视化监控与告警,从而确保集群稳定运行。

时间:2026-07-01 07:08
Hive中row_number()函数性能的实用高效监控方法与优化技巧

Hive中row_number()函数性能的实用高效监控方法与优化技巧

Hive中row_number()性能受数据量、索引、查询复杂度及数据倾斜影响。优化需通过分区、建索引、查询优化、使用ORC Parquet格式及调整CBO和并行度实现。监控可借助HiveWebUI、YARN界面、日志或第三方工具定位瓶颈,持续迭代改进。

时间:2026-07-01 07:08
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全