Oracle® Database SQL Reference 10g Release 2 (10.2) Part Number B14200-02 |
|
|
View PDF |
Note: This SQL statement is valid only if you are using Automatic Storage Management and you have started an Automatic Storage Management instance. You must issue this statement from within the Automatic Storage Management instance, not from a normal database instance. For information on starting an Automatic Storage Management instance, please refer to Oracle Database Administrator's Guide. |
Purpose
Use the CREATE
DISKGROUP
clause to create a collection of disks. Oracle Database manages a disk group as a logical unit and evenly spreads each file across the disks to balance I/O. Oracle Database also automatically distributes database files across all available disks in disk groups and rebalances storage automatically whenever the storage configuration changes.
This statement creates a disk group, assigns one or more disks to the disk group, and mounts the disk group for the first time. If you want Automatic Storage Management to mount the disk group automatically in subsequent instances, you must add the disk group name to the value of the ASM_DISKGROUPS
initialization parameter in the initialization parameter file. If you use an SPFILE
, then the disk group is added to the initialization parameter automatically.
See Also:
|
Prerequisites
You must have the SYSDBA
system privilege to issue this statement.
Before issuing this statement, you must format the disks using an operating system format utility. Also ensure that the Oracle Database user has read/write permission and the disks can be discovered using the ASM_DISKSTRING
.
When you store your database files in Automatic Storage Management disk groups, rather than in a file system or on raw devices, before the database instance can access your files in the disk groups, you must configure and start up an Automatic Storage Management instance to manage the disk groups.
Each database instance communicates with a single Automatic Storage Management instance on the same node as the database. Multiple database instances on the same node can communicate with a single Automatic Storage Management instance.
Syntax
create_diskgroup::=
qualified_disk_clause::=
Semantics
diskgroup_name
Specify the name of the disk group. Disk groups are subject to the same naming conventions and restrictions as database schema objects. Please refer to "Schema Object Naming Rules" for information on database object names.
REDUNDANCY Clause
The REDUNDANCY
clause lets you specify the redundancy level of the disk group.
NORMAL
REDUNDANCY
requires the existence of at least two failure groups (see the FAILGROUP
clause that follows). Automatic Storage Management provides redundancy for all files in the disk group according to the attributes specified in the disk group templates. NORMAL
REDUNDANCY
disk groups can tolerate the loss of one group. Please refer to ALTER
DISKGROUP
... diskgroup_template_clauses for more information on disk group templates.
HIGH
REDUNDANCY
requires the existence of at least three failure groups. Automatic Storage Management fixes mirroring at 3-way mirroring, with each extent getting two mirrored copies. HIGH
REDUNDANCY
disk groups can tolerate the loss of two failure groups.
EXTERNAL
REDUNDANCY
indicates that Automatic Storage Management does not provide any redundancy for the disk group. The disks within the disk group must provide redundancy (for example, using a storage array), or you must be willing to tolerate loss of the disk group if a disk fails (for example, in a test environment). You cannot specify the FAILGROUP
clause if you specify EXTERNAL
REDUNDANCY
.
Use this clause to specify a name for one or more failure groups. If you omit this clause, and you have specified NORMAL
or HIGH
REDUNDANCY
, then Oracle Database automatically adds each disk in the disk group to its own failure group. The implicit name of the failure group is the same as the operating system independent disk name (see "NAME Clause").
You cannot specify this clause if you are creating an EXTERNAL
REDUNDANCY
disk group.
qualified_disk_clause
Specify DISK
qualified_disk_clause
to add a disk to a disk group.
search_string For each disk you are adding to the disk group, specify the operating system dependent search string that Automatic Storage Management will use to find the disk. The search_string
must point to a subset of the disks returned by discovery using the strings in the ASM_DISKSTRING
initialization parameter. If search_string
does not point to any disks the Oracle Database user has read/write access to, then Automatic Storage Management returns an error. If it points to one or more disks that have already been assigned to a different disk group, then Oracle Database returns an error unless you also specify FORCE
.
For each valid candidate disk, Automatic Storage Management formats the disk header to indicate that it is a member of the new disk group.
See Also: The ASM_DISKSTRING initialization parameter for more information on specifying the search string |
NAME Clause The NAME
clause is valid only if the search_string
points to a single disk. This clause lets you specify an operating system independent name for the disk. The name can be up to 30 alphanumeric characters. The first character must be alphabetic. If you omit this clause and you assigned a label to a disk through ASMLIB, then that label is used as the disk name. If you omit this clause and you did not assign a label through ASMLIB, then Automatic Storage Management creates a default name of the form diskgroup_name
_####, where #### is the disk number. You use this name to refer to the disk in subsequent Automatic Storage Management operations.
SIZE Clause Use this clause to specify in bytes the size of the disk. If you specify a size greater than the capacity of the disk, then Automatic Storage Management returns an error. If you specify a size less than the capacity of the disk, then you limit the disk space Automatic Storage Management will use. If you omit this clause, then Automatic Storage Management attempts programmatically to determine the size of the disk.
FORCE Specify FORCE
if you want Automatic Storage Management to add the disk to the disk group even if the disk is already a member of a different disk group.
Caution: UsingFORCE in this way may destroy existing disk groups. |
For this clause to be valid, the disk must already be a member of a disk group and the disk cannot be part of a mounted disk group.
NOFORCE Specify NOFORCE
if you want Automatic Storage Management to return an error if the disk is already a member of a different disk group. NOFORCE
is the default.
Examples
The following example assumes that the ASM_DISKSTRING
parameter is a superset of $ORACLE_HOME/disks/c*
, $ORACLE_HOME/disks/c*
points to at least one device to be used as an Automatic Storage Management disk, and the Oracle Database user has read/write permission to the disks.
See Also: Oracle Database Administrator's Guide for information on Automatic Storage Management and using disk groups to simplify database administration |
Creating a Diskgroup: Example The following statement creates an Automatic Storage Management disk group dgroup_01
where no redundancy for the disk group is provided by Automatic Storage Management and includes all disks that match the search_string
:
CREATE DISKGROUP dgroup_01 EXTERNAL REDUNDANCY DISK '$ORACLE_HOME/disks/c*';