This article presents installation of Oracle Database 12C(12.1) on Centos 6. Both database and grid software(standalone version) are installed. Grid software will use devices configured using three methods:
- disk devices configured using UDEV
- disk devices accessed by NFS
- kmod-oracleasm library – extra Red Hat 6 rpm to simulate oracleasm lib
In this article there are two separated users:
- oracle – manage database software and databases
- grid – manage grid software and asm database.
Read following article how to install Centos 6 Linux: Install Centos 6 64 bit(for comfort set 4G memory and 64G for disk in your virtual machine).
This article presents how to install Fedora 20 Beta.
I assume you have already downloaded Fedora 20 64 bit(about 4 G) and you know how to use VirtualBox 64 bit(100M). Create virtual machine with default settings for Linux Fedora 64 bit. 1GB ram and 32G for disk is enough plus increase video memory to 128M and turn on acceleration 3D. Rest of options you can keep default.
New clause ACCESSIBLE BY in Oracle 12C enables to extend standard security. It defines list of database objects (later called accessors) that can call your PL/SQL code.
Clause ACCESSIBLE BY can be defined for following statements:
- CREATE FUNCTION
- CREATE PACKAGE
- CREATE PROCEDURE
- CREATE TYPE
List of accessors that can call your code includes database objects like:
Article presents quick installation of Oracle Enterprise RAC 12C(188.8.131.52) on Oracle Enterprise Linux 6 using Oracle Virtual Box.
- Oracle Virtual Box – 64 bit
- Oracle Enterprise Linux 6 – 64 bit
- Oracle Database 12C Release 1(184.108.40.206) – 64 bit for Linux
Configuration of network for virtualbox and RAC is always making a lot of trouble and raises many questions. In this article I’ll show how to setup network for RAC 11G, 12C using dnsmasq.
Objectives to complete:
- full network setup for RAC
- public network
- private network
- SCAN settings resolved by dnsmasq
- full access to internet from each RAC hosts
- configure dnsmasq
This new feature in Oracle 12C is as default always on. Each TRUNCATE or DROP commands performed on a partition automatically triggers asynchronous global index maintenance. It means that you don’t need to wait for global INDEX maintenance .
For backward compatibility you still need to specify UPDATE INDEXES clause.
Limitations of asynchronous global index maintenance:
- Only performed on heap tables
- No support for tables with object types
- No support for tables with domain indexes
- Not performed for the user SYS
Asynchronous cleanup orphans in an index can be done:
- by Oracle job SYS.PMO_DEFERRED_GIDX_MAINT_JOB
- just run above job SYS.PMO_DEFERRED_GIDX_MAINT_JOB
- run procedure DBMS_PART.CLEANUP_GIDX
- run sql statement ALTER INDEX REBUILD [PARTITION] – the same like in previous releases
- run sql statement ALTER INDEX [PARTITION] COALESCE CLEANUP
In Oracle 12C new parameter for Oracle Data Pump can be specified LOGTIME. It defines if Data Pump messages are timestamped so you can quickly figure out elapsed time between different phases of a Data Pump. Very useful to analyze performance problems and general timings for Data Pump processes.
LOGTIME=[NONE | STATUS | LOGFILE | ALL]
NONE – No timestamps on status or log file messages (same as default)
STATUS – Timestamps on status messages only
- LOGFILE – Timestamps on log file messages only
ALL – Timestamps on both status and log file messages
In release 12C Oracle automatically gathers statistics for following operations:
- CREATE TABLE AS SELECT
- INSERT INTO … SELECT on en empty table using direct path
It’s very similar behavior to statistics gathering done during a CREATE INDEX or INDEX REBUILD.
No init.ora or any manual settings are required to turn on this feature. Now you can save a lot of time by skipping extra step to collect statistics
In Oracle 12C ALTER TABLE … MOVE PARTITION has been extended with new clause ONLINE.
ALTER TABLE <table name>
MOVE PARTITION <partition name> ONLINE
ONLINE clause indicates that DML on the table partition will be allowed while moving the table partition.
Global indexes are maintained during the move partition, so a manual index rebuild is no longer required.
In 12C Oracle has extended 11G reference partitioning. Now It’s possible to use interval partitioned tables as parent tables for reference partitioning.
Requirements and features
- Requires compatibility set to 220.127.116.11 or higher
- ALTER TABLE SET INTERVAL can be set for parent but not for reference-partitioned child tables
- ALTER TABLE SET STORE IN can be set for parent but not for reference-partitioned child tables
- ALTER TABLE SPLIT PARTITION that transforms interval partitions to conventional partitions in parent table construct the corresponding transformation in the child table, creating partitions in the child table as necessary.
Let’s create simple example. Parent table parent_tbl is using RANGE INTERVAL partitioning and child table child_tbl are reference partitioned. Such combination was not possible in previous releases 11g.
create table parent_tbl
constraint parent_tbl_pk primary key(id1)
partition by range(id2) INTERVAL(10)
partition p1 values less than (10)
create table child_tbl
id2 number not null,
constraint child_tbl_fk foreign key(id2) references parent_tbl
partition by REFERENCE(child_tbl_fk);