lower case or UPPER CASE hostname in RAC?

简介:
RAC中各节点的hostname是设成大写(UPPER CASE)形式还是小写(lower case)形式好呢? 一开始被这个问题问得有些莫名?之后觉得一切都有必要让事实说话,回顾一下我们使用RAC的惨痛经历便见分晓:
Bug 5168043If node names supplied in VIPCA silent mode are uppercase, VIPCA causes the following error:
Invalid node name "" entered in an input argument.
Workaround   Use VIPCA GUI mode.
Oracle Versions confirmed as being affected - 10203 ( fixed in 10.2.0.4)
PROBLEM:
--------
Env 3 node 10.2.0.1 AIX 5L

During installation of CRS, root.sh gives "Invalid node name"
error if hostname is written in Capital letters in /etc/hosts.

 # root.sh
  WARNING: directory '/oracle' is not owned by root
  Checking to see if Oracle CRS stack is already configured

  clscfg: version 3 is 10G Release 2.
  Successfully accumulated necessary OCR keys.
  Using ports: CSS=49895 CRS=49896 EVMC=49898 and EVMR=49897.
  node :

  clscfg: Arguments check out successfully.

  Expecting the CRS daemons to be up within 600 seconds.
  CSS is active on these nodes.
  CSS is active on all nodes.
  Waiting for the Oracle CRSD and EVMD to start
  Oracle CRS stack installed and running under init(1M)
  Running vipca(silent) for configuring nodeapps

DIAGNOSTIC ANALYSIS:
--------------------

We can reproduce the error if we issue vipca like below.

$ORA_CRS_HOME/bin/vipca -silent -nodelist {CAPITAL1},{CAPITAL2}  \
  -nodevips {CAPITAL1}/{CAPITALV1}/255.255.252.0/eth0, \
            {CAPITAL2}/{CAPITALV2}/255.255.252.0/eth0
 Invalid node name "{CAPITAL1}" entered in an input argument.
 Invalid node name "{CAPITAL1}" entered in an input argument.

WORKAROUND:
-----------
- do not write capital letters in /etc/hosts
- use vipca(GUI) and configure VIP resource afterwards.

RELATED BUGS:
-------------
BUG#4632899 solaris port specific bug regarding capital letters.
            May not be related with vipca.

REPRODUCIBILITY:
----------------
100% in 10.2.0.1 AIX
100% in 10.2.0.1 Linux

Bug 4632899 CSS does not start on Solaris if the hostname is in upper case.
 The following errors might be noticed when using CRS scripts:
  Failure at scls_scr_create with code 1
  Category: 1234
  Operation: scls_scr_create
  Location: mkdir
  Other: Unable to make user dir
  Dep: 2

Workaround
  Change the hostname to from uppercase to lower case.
Versions confirmed as being affected - 10203 ( Issue fixed in 11.1.0.6)
PROBLEM STATEMENT:
------------------
The localconfig script fails to startup the CSS in single instance
configuration if the hostname of the server contains capital letters.

Errors encountered :
===
Failure at scls_scr_create with code 1
Internal Error Information:
  Category: 1234
  Operation: scls_scr_create
  Location: mkdir
  Other: Unable to make user dir
  Dep: 2
===

Bug 6674075: RAC: PRKR-1078 FROM SRVCTL MODIFY DATABASE WITH UPPER CASE DB NAME

PROBLEM:
--------
Two Node RAC running 10.2.0.3 CRS,ASM and RDBMS.
Customer has installed another 10.2.0.3 home for RDBMS and trying to change
the oracle home for the existing database.

We ran the "srvctl modify" command from both existing and the new oracle
homes (both are 10.2.0.3) and got the same PRKR-1078 error.

The entry for the CONFIG_VERSION looks okay in the OCR.

DIAGNOSTIC ANALYSIS:
--------------------
The entries for the database JUNK and two instances in the OCR looks okay and
the DATABASE.DATABASES.JUNK.CONFIG_VERSION 10.2:

from the OCRDUMP:
=========================
[DATABASE.DATABASES.junk.CONFIG_VERSION]
ORATEXT : 10.2.0.0.0
========================

from the srvm_trace of srvctl modify :
==========================
[main] [12:55:59:677] [has.ClusterLockNative.Native]  prsr_trace: Native:
acquire: get mutext SRVM.DATABASE.DATABASES.junk

[main] [12:55:59:678] [has.ClusterLockNative.Native]  prsr_trace: Native:
acquire: ret=0

[main] [12:55:59:679] [ClusterLock.acquire:127]  Acquire returned nr=true
status=true
[main] [12:55:59:679] [OCR.keyExists:664]
OCR.keyExists(DATABASE.DATABASES.JUNK.CONFIG_VERSION)
[main] [12:55:59:679] [nativesystem.OCRNative.Native]  keyExists: calling
procr_open_key(DATABASE.DATABASES.JUNK.CONFIG_VERSION)

[main] [12:55:59:694] [nativesystem.OCRNative.Native]  keyExists:
procr_open_key retval = 4

[main] [12:55:59:694] [OCRTree.setDBOracleHome:1572]  DATABASE.DATABASES.junk
incompatible version
[main] [12:55:59:729] [OCRTree.setDBOracleHome:1587]  Releasing exclusive
lock SRVM.DATABASE.DATABASES.junk
[main] [12:55:59:729] [has.ClusterLockNative.Native]  prsr_trace: Native:
unlock

PRKR-1078 : Database JUNK cannot be administered using current version of
srvctl. Instead run srvctl from /oracle/product/10.2.0/db0
=====================

Bug 7560908: CANN'T START SERVICES ,IF ITS INSTANCES REGISTERD WITH NODE NOME IN UPPER CASE
PROBLEM:
--------
- If we try to start service we got the following errors

oracle@RZ-DB-44:~> srvctl start service -d db1 -s srv1
PRKP-1030 : Failed to start the service srv1.
CRS-1007: Failed after successful dependency consideration
CRS-0223: Resource 'ora.db.srv1.cs' has placement error.

As per Note 372145.1 - Service start fails with CRS-1030 Crs-1007 Crs-0223

we delete the services and the database resource and its instances ,then we
add the database again but at this time we add the database instance node
name with lower case ,as it was in upper case ,

- after that we are able to start the database instance
.......................

答案很简单,lower case好于UPPER CASE!不仅仅是hostname,使用大写的rac资源(resource)在某些版本中也可能引发bug!当你在设计RAC系统是有必要把大小写这一问题考虑进去,事实上我相信大多数人和我一样喜欢使用小写字母加数字的形式,譬如我的rh1,rh2,rh3..........


本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1277584

相关文章
|
2月前
|
存储 关系型数据库 MySQL
lower_case_table_names 修改为何不生效
lower_case_table_names 是 MySQL 和 MariaDB 中的一个系统变量,它决定了数据库和表名在存储和引用时的大小写敏感性。这个变量有以下几个可能的值: 0:表名存储为给定的大小写,并区分大小写。这是大多数 Unix 系统的默认设置。 1:表名在存储和引用时都转换为小写,不区分大小写。这是 Windows 和 macOS 的默认设置。 2:表名存储为给定的大小写,但引用时不区分大小写。 如果你尝试修改 lower_case_table_names 的值但发现它不生效,可能是由以下几个原因造成的: 配置文件位置不正确:确保你在正确的配置文件中进行了修改。对于 MyS
|
10月前
|
关系型数据库 MySQL
lower_case_table_names=1 启动报错 mysql8.0
lower_case_table_names=1 启动报错 mysql8.0
680 0
|
SQL Java 数据库连接
Invalid bound statement (not found) 问题处理
您好,我是码农飞哥,感谢您阅读本文!本文将介绍使用MyBatis时出现的一些常见问题。
203 0
|
网络安全 开发工具
【解决方案】A session ended very soon after starting. Check that the command in profile “XXX” is correct.
【解决方案】A session ended very soon after starting. Check that the command in profile “XXX” is correct.
778 0
【解决方案】A session ended very soon after starting. Check that the command in profile “XXX” is correct.
|
C++ Python
LeetCode 709. To Lower Case
LeetCode 709. To Lower Case
75 0
|
Java Linux C++
浅谈online judge平台 spj [special judge] 使用 | 修改问题(上)
浅谈oj平台 spj 使用 | 修改问题 首先: 参数对应 返回值 代码提交 几种spj 第一种:简单的一类特判 第二种:多组输入的特判 第三种:需要判断特殊情况[impossible] 第四种:带有[testlib.h]的spj 第五种:GCPC [German Collegiate Programming Contest] 类spj
529 0
浅谈online judge平台 spj [special judge] 使用 | 修改问题(上)
浅谈online judge平台 spj [special judge] 使用 | 修改问题(下)
第六种:交互题的spj 第七种[带有testlib.h]的另一种解决方式 第八种 使用validation.h的BAPC2018(较难)
443 0
|
存储 关系型数据库 MySQL
【MySQL】lower_case_table_names参数详解
简介: lower_case_table_names 是mysql设置大小写是否敏感的一个参数。
829 0
|
XML 数据格式
Invalid bound statement (not found)
想必这个问题在网上已经泛滥了,但是他们都是同一个答案,我来copy一下: 1.检查xml文件所在package名称是否和Mapper interface所在的包名 mapper的namespace写的不对!!!注意系修改。
3400 0
|
JavaScript Oracle 关系型数据库