Spatial: license-incompliancy while using Oracle Locator ?

As you may know, the use of Oracle Locator is free of charge, while Spatial is an option in Oracle Enterprise Edition which have to be paid for.

Spatial has more functionality though. But when using Locator functionality and Oracle LMS (License Management Services) comes around running their scripts, there may be an output like this:


SPATIAL
------------------------------------------
ORACLE SPATIAL INSTALLED: TRUE

CHECKING TO SEE IF SPATIAL FUNCTIONS ARE BEING USED...

ALL_SDO_GEOM_METADATA
---------------------
426

1 row selected.

If value returned is 0 then SPATIAL is NOT being used.
<strong>If value returned is &gt; 0 then SPATIAL OR LOCATOR IS being used.</strong>


For version 10g and higher check DBA_FEATURE_USAGE_STATISTICS
whether Spatial is currently used.

For version 9i and below confirm with the customer whether Spatial or Locator is being used.

So although convinced in using Locator, you are forced to defend yourself against LMS. ‘No really, I’m not using Spatial…’.

By the way: you will always see the SPATIAL option turned on in v$option (TRUE), even if you did not select it when installing. Unfortunately you can’t switch it off , but you won’t be charged for this option when installed only.

In 12c you will see something like this initially in the database:

image

image

Using the Spatial or the Locator objects is another story. The best way is to avoid discussions with LMS and remove the SPATIAL-objects at forehand in the database so it will be visible in the DBA_REGISTRY.

Followed note 1070647.1 with a 12c database: How To Deinstall Oracle Spatial Keeping Oracle Locator.


sqlplus /nolog
conn / as sysdba
spool mddins.log
start ?/md/admin/mddins.sql
spool off

As a result the Spatial component will show the status REMOVED:

image

MDSYS user will continue to exist in the database:

image

The status of Oracle Multimedia has to be VALID:

image

Hmm…

After running $ORACLE_HOME/rdbms/admin/utlrp.sql as SYS the same query has a different output:

image

This is ok now, but does it still work? Ran the spatial health check (Note 800725.1) as SYS. Part of the output:

image

Seems allright to me, but then again, I’m not a Spatial or Locator– expert. Didn’t test this on a database with an active SPATIAL or Locator –application running, so perform a backup / test before running the script mddins.sql.

That being said, it may be wise to run this script default when creating a database. Put it in your post-installation standards, just like other licensing features, such as the parameter CONTROL_MANAGEMENT_PACK_ACCESS for the diagnostic and tuning pack (when you don’t use this). Better be well prepared.

Sources:

Blog Simon Greener about Spatial vs. Locator

Oracle doc: Locator features

Spatial development guide

How To Verify That Oracle Locator Is Installed (Doc ID 357943.1)

How To Deinstall Oracle Spatial Keeping Oracle Locator (Doc ID 1070647.1)

Oracle Spatial and Oracle Locator Licensing Information (Doc ID 1066837.1)

Oracle Locator / Oracle Spatial Health Check (Doc ID 800725.1)

Master Note for Oracle Multimedia/interMedia (Doc ID 1078222.1)

Leave a Reply