Tuesday, March 2, 2010

Naming host and domain names for Oracle software

Let me begin with the conclusion.


If you are an Oracle expert, when installing products, configuring software, or setting up servers, for hostnames, domain names, and subdomain names…
  • Do not use underscores (“_”)
  • Do not use dashes (“-”)
  • In fact, don’t use any special characters at all if you can control it
  • Don’t even think of uppercasing or camelcasing

#1: OEM Grid Control issues due to underscore in hostname

In 2007, we had a BEA WebLogic Server 9.1 running on a hostname called SERVER_A and wanted to use OEM 10g Grid Control R3 to monitor this WebLogic instance. This Oracle web page indicated that the “Plug-in for BEA WebLogic is built into Oracle Enterprise Manager 10g Grid Control Release 2, Release 3, and Release 4.”

BEA WebLogic Server 9.1 was already installed on Windows 2003 Enterprise and we successfully installed the OEM Agent on the same server. However, we were not able to add the Weblogic server as a target.

Cause of problem
Underscore in the hostname.

In our case here, as a product, OEM 10g Grid Control was unable to register targets with underscore in their hostname.

Don’t get creative. Avoid underscores.

#2: E-Business Suite installation failure due to dash in hostname

In 2010, we were installing Oracle E-Business Suite 11i (11.5.10) for Linux on a server hostname taking the format ORADEV.MY-DOMAIN.ORG. Now I had ran into a few snags installing it the first time due to missing prerequisites, but those were quickly resolved and installation proceeded fine.

During the installation, the adrundb.sh script reported “Cannot create control file for…” and threw “RW-50010” and “RW-50004” error codes.

Cause of problem
Dash in the fully qualified hostname.

The log showed:
ERROR at line 1:
ORA-00933: SQL command not properly ended
Basically, the Oracle database cannot do an ALTER DATABASE with a fully qualified hostname that includes dashes (if not surrounded by double quotes). I was pretty much unable to work around this as the command was automatically created and executed by the installer. We had no choice but to rename the server and restart the installation. (Note: This is fixed in later installers.)

Don’t get creative. Avoid dashes.

#3: Configuring software using uppercase or camelcase hostnames

In 2009, I had a colleague who would use all uppercase (“WWW.GOOGLE.COM”) or camelcase (“www.Google.com”) when updating configuration files of various Oracle software. I tried explaining that although this was technically and syntactically correct, “why would every want to do that?!”

He came from a Windows background, and I tried explaining that although it was indeed valid and case insensitive, “you do understand that what comes AFTER the domain name could be case sensitive?” in an attempt to convince him not to be creative.

The point is, yes, it’s valid. But from the two scenarios above, some software either will strictly adhere to the standard (rightly so) or is just badly written that it doesn’t factor in the “creative” people who want to name their servers “This_Server!.is-Awesome.com”.

Final word:

In the DNS world, there is some industry confusion surrounding the ability to use underscore in subdomains, but it it is not a valid character in a domain name. There are cases where RFC-compliant mail servers will refuse to deliver mail for Windows computers with domain names containing underscores. In another example, Microsoft SQL Server maps underscores to backslashes. We have already shown above how 2 Oracle products behave when using underscores or dashes in hostnames.

The point here being that the more creative you get with your hostnames and domain names, the higher chance that the software you install or configure will have issues.

Ahmed Aboulnaga

No comments: