Storage Replication for Oracle Database and Licensing
May 9, 2012 / By Alex Gorbachev
While doing my high availability deep dive at Collaborate 12 few weeks ago, I stated that storage replication qualifies for the cold failover licensing rules (see slide #128).
During collaborate I spoke to one person at Oracle who definitely knows the rules. Simon Haslam also reached out to me by email pointing out that things might not be that rosy. Also Arjen Visser from Dbvisit noted to me after my session that they’ve seen Oracle sales pushing for different strategy.
Simon referred to the Oracle’s Software Investment Guide:
Remote Mirroring – This method involves the mirroring of the storage unit or
shared disks arrays. Remotely mirrored storage units may be geographically
dispersed and not in the same location as the primary unit, but they share the
same disk array. To setup a remote mirroring environment, the Oracle data
files, executables, binaries and DLLs are replicated to the mirrored storage
unit. Solutions like Veritas Volume Replicator, EMC SRDF, Legato Replistor, and
EMS StoreEdge are used to mirror the data stored in on the disk arrays. In this
environment, both the primary and the remote mirrored databases must be
fully licensed. Additionally, the same metric must be used to license both
databases. If the Oracle Database is accessing the data from the primary disk
array and it is not accessing the mirrored disk array, but it is installed on the
mirrored network storage unit, then both database must be fully licensed and
the same metric must be used. If a failure occurs in the primary storage unit
and the Oracle Database can no longer access the data from the primary disk
array, however it is still installed on the primary unit, and data can only be
accessed from the remote mirrored disk array, then both databases must still
be fully licensed and the same metric must be used. In this environment,
Oracle must be fully licensed at the primary site, and if it is ever installed
and/or run at the secondary site, it must also be fully licensed there.
The key there is that “the Oracle data files, executables, binaries and DLLs are replicated”. If you only replicate data files then you can likely avoid licensing mirrored site but it will, of course, impact your speed of getting back in business on the mirrored site. In other way, the way to avoid remote site licensing is to make sure it qualifies as a backup. From the same document:
Backup – In this method, a copy of the physical database structures of the
database is made. When the original data is lost, the backup files can be used
to reconstruct the lost information that constitutes the Oracle Database. This
backup copy includes important parts of the physical structures such as
control files, redo logs and data files. These physical files can be stored on a
server, storage array, disk drive(s), or Compact Disc(s). Solutions like Recovery
Manager/RMAN (included with Oracle Database EE or SE) and Oracle Secure
Backup or operating system utilities are used to create copies of physical files.
Oracle permits customers to store a back up copy of the database physical
files on storage devices, such as tapes, without purchasing additional licenses.
In an event of failure, when the Oracle data is restored from tape or media,
and the Oracle Database is installed on the recovery server, licensing is
required. See illustration #3.
Note how it specifically distinguishes the situation with restore to the new hardware that requires installing the Oracle binaries so if you install or restore Oracle binaries to the new hardware, you have to license it separately unless you decommission your old hardware. This means that it could really only work if you loose your primary site completely and move to the DR site for good. It does fit some business continuity scenarions but definitely different from cold failover scenarios and 10 days rule is not applicable.
I also wanted to find the reference for RAC One Node and that Cold Failover licensing rules can be applied. Oracle Database Licensing Guide doesn’t have this information (or at least I couldn’t locate it) but here is the statement from the Oracle’s presentation (note that it doesn’t really have the legal status as does your licensing agreement):
All nodes on which RAC One Node is installed must be licensed for RAC One Node
* Exception: One spare node for cold failover/Online Database Relocation need not be licensed under the 10-day use rule
* Example: In a two-node cluster, customers can license RAC One Node on ONE node; 10-day rule applies for spare node
I used to be able to find standard OLSA (Oracle License and Service Agreement) at oracle.com in the past, but these days I only get here and I can’t locate the OLSA there. In any case make sure to read you OLSA — it will have the definition of cold failover similar what you see in the SIG I referred above.
Failover – In this type of recovery, nodes are arranged in a cluster and share
one disk array. A Failover cluster is a group of systems, bound together into a
common resource pool. In this type of recovery method, the Production node
acts as the primary node. When the primary node fails, one of the surviving
nodes in the cluster acts as the primary node. Solutions like Oracle Failsafe
(included with Oracle Database EE or SE, SE1), or third party vendor solutions
(e.g. Veritas, HP Service Guard, HACMP, Linux HA – Heartbeat) are used to
manage Failover environments. In this type of environment, Oracle permits
licensed Oracle customers to run some Technology Programs on an
unlicensed spare computer for up to a total of ten separate days in any given
calendar year. Once the primary node is repaired, you must switch back to the
primary node. Once the failover period has exceeded ten days, the failover
node must be licensed. In addition, only one failover node per clustered
environment is at no charge for up to ten separate days even if multiple nodes
are configured as failover. Downtime for maintenance purposes counts
towards the ten separate days limitation. Any other use requires the
environment to be fully licensed. . In a failover environment, the same license
metric must be used for the production and failover nodes when licensing a
given clustered configuration. Additionally, when licensing options on a
failover environment, the options must match the number of licenses of the
I will update the slides accordingly. In any case, please do you own homework and don’t trust my conclusions here — don’t take this as a licensing advice by any means. It’s been on my TODO list for couple weeks now and while I wanted to put a bit more efforts before I blog about it, the reality is that the more I delay, the less likely I post it at all and that would be devastating. You comments are more than welcome — whether pointing out any errors, additional info or sharing your experience.
12 comments on “Storage Replication for Oracle Database and Licensing”
Pingback: Log Buffer #271, A Carnival of the Vanities for DBAs | The Pythian Blog