http://docs.oracle.com/cd/B19306_01/install.102/b15667/rev_precon_db.htm#i1027493
The Oracle Database 10g software identifies a database by its global database name. A global database name consists of the database name and database domain. Usually, the database domain is the same as the network domain, but it need not be. The global database name uniquely distinguishes a database from any other database in the same network. You specify the global database name when you create a database during the installation, or using the Database Configuration Assistant. For example:
sales.us.oracle.com
In this example:
sales
is the name of the database. The database name portion is a string of no more than 30 characters that can contain alphanumeric, underscore (_), dollar ($), and pound (#) characters. The DB_NAME initialization parameter specifies the database name.us.oracle.com
is the database domain in which the database is located. In this example, the database domain is the same as the network domain. Together, the database name and the database domain make the global database name unique. The domain portion is a string of no more than 128 characters that can contain alphanumeric, underscore (_), and pound (#) characters. The DB_DOMAIN initialization parameter specifies the database domain name.
The DB_NAME parameter and the DB_DOMAIN name parameter combine to create the global database name value assigned to the SERVICE_NAMES parameter in the initialization parameter file.
The System Identifier (SID) identifies a specific database instance. The SID uniquely distinguishes the instance from any other instance on the same computer. Each database instance requires a unique SID and database name. In most cases, the SID is the same as the database name portion of the global database name.
http://docs.oracle.com/cd/B19306_01/server.102/b15658/admin_ora.htm#sthref36
以下是关于ORACLE_SID环境变量的说明与约束,从中可以看出,ORACLE_SID和DB_NAME的约束并不相同,也就是说DB_NAME 和ORACLE_SID可以设置为不同的值,只不过没有这个必要罢了。
A string of numbers and letters that must begin with a letter. Oracle recommends a maximum of 8 characters for system identifiers. For more information about this environment variable, refer to Oracle Database Installation Guide.
通过文档 ID 239888.1,我们会了解一个更为有趣的事情,SID限制为8位,在RAC环境下,SID是以DB_NAME为前缀的,如DB_NAME为orcl,如果是四节点的RAC,四个节点的SID分别为:orcl1、orcl2、orcl3、orcl4。如果节点数很多,如100个,SID的位数就会被占用掉3位,这样DB_NAME定义的时候就不能超过5位数,不过从10.2版本这个作为一个Bug已经被修复,也就是说DB_NAME可以设置为8位。
DB_NAME Maximum Length Restriction When Using DBCA.
---------------------------------------------------
The maximum permissible length of DB_NAME is 8 characters for both single instance and
OPS / RAC environments, consisting of valid characters like
- alphabetic characters,
- numbers,
- underscore (_),
- sharp (#) or dollar ($).
RAC能支持多少节点呢?
How many nodes can one have in an HP-UX/Solaris/AIX/Windows/Linux cluster?
Technically and since Oracle RAC 10g Release 2, 100 nodes are supported in one cluster. This includes running 100 database instances belonging to the same (production) database on this cluster, using the Oracle Database Enterprise Edition (EE) with the Oracle RAC option and Oracle Clusterware only (no third party / vendor cluster solution underneath).
Note that using the Oracle Database Standard Edition (SE), which includes the Oracle RAC functionality, further restrictions regarding the number of nodes per cluster apply. Also note that one cannot use a third party or vendor cluster for an Oracle Database Standard Edition based Oracle RAC cluster. For more information see the licensing information.
When using a third party / vendor cluster software the following limits apply (subject to change without notice):
Solaris Cluster: 8
HP-UX Service Guard: 16
HP Tru64: 8
IBM AIX:
* 8 nodes for Physical Shared (CLVM) SSA disk
* 16 nodes for Physical Shared (CLVM) non-SSA disk
* 128 nodes for Virtual Shared Disk (VSD)
* 128 nodes for GPFS
* Subject to storage subsystem limitations
Veritas: 8-16 nodes (check w/ Veritas)