Friday, November 14, 2014

Oracle GoldenGate 12c New Features - Part1


Hi Everyone,

My articles published in Oracle Experts website media "Allthingsoracle.com" by RedGate

Please see the article using below link.

Oracle Golden Gate 12c New Features – Part 1

In this article I will cover:
  • Expanded heterogeneous Support
  • Multitenant Container Database (CDB) Support
  • Oracle Universal Installer (OUI) Support
  • Support for Public and Private Clouds
  • Integrated Replicat
This article will help all Oracle Community to understand Oracle GoldenGate 12c new features and how it helps in continuous availability, disaster tolerance and real-time data integration solutions that enable the management and movement of transactional data across the enterprise.

I hope you will like the article and it will be helpful to you.

Please leave your valuable comments.

Regards,
Satishbabu Gunukula, Oracle ACE
http://www.oracleracexpert.com

ORA-04030: out of process memory when trying to allocate 16328 bytes (koh-kghu call ,pmucalm coll)

User may encounter below error in 11g. First I would recommend running ADDM report and checking how the resources are utilized. If you see any undersize database configuration then increase.

ORA-04030: out of process memory when trying to allocate 16328 bytes (koh-kghu call ,pmucalm coll)
Incident details in: /u01/home/oracle/diag/rdbms/orac/ORAC/incident/incdir_17129/ORAC_ora_8372_i17129.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Non critical error ORA-48913 caught while writing to trace file "/u01/home/oracle/diag/rdbms/orac/ORAC/incident/incdir_17129/ORAC_ora_8372_i17129.trc"
Error message: ORA-48913: Writing into trace file failed, file size limit [5242880] reached
Writing to the above trace file is disabled for now on...

If your database has enough resources and if you still see the issue then you might need to check the trace file.

=======================================
PRIVATE MEMORY SUMMARY FOR THIS PROCESS
---------------------------------------
******************************************************
PRIVATE HEAP SUMMARY DUMP
4129 MB total:
4129 MB commented, 173 KB permanent
57 KB free (0 KB in empty extents),
2240 MB, 3 heaps: "koh-kghu call " 14 KB free held
1889 MB, 1 heap: "session heap " 4 KB free held
------------------------------------------------------


The trace file confirms that the process is limiting at 4GB. Change the upper limit either at OS level or Database level

Apply this change at OS level
1. Get the page count using below command and increase the limit
#more /proc/sys/vm/max_map_count

2. Increase the page count
#sysctl -w vm.max_map_count= 262144
or
#sysctl vm.max_map_count=262144

3. These changes will be revered on server reboot. To make changes permanent add the value in
$ vi /etc/sysctl.conf
or
$echo “vm.max_map_count = 262144” | tee -a /etc/sysctl.conf

4. You no need to reboot the server, you should reload the config file as root
$ sysctl –p

Apply this change at Database level
Adjust the realfree heap page size by setting below parameters in spfile or pfile and restart the database
_use_realfree_heap=TRUE
_realfree_heap_pagesize_hint = 262144

Note that the default realfree allocator pagesize is 64 kB (65536), so 64K entries take up 4GB. With 256kB (262144) pages, the limit goes to 16GB.

I hope this should resolve your issue.

Regards
Satishbabu Gunukula, Oracle ACE
http://www.oracleracexpert.com

Thursday, November 13, 2014

SPFILE restore failed with RMAN-04014 and RMAN-04014


User normally restores SPFILE when it is deleted accidently or the database is completed decommissioned and database need to restore from backup.

To restore SPFILE user must set the DBID
RMAN> set DBID=4563434343232

Before you restore SPFILE you need to bring up the database in nomount. But there is not SPFILE to bring the database.

Where SPFILE is not available startup the database with “STARTUP FORCE NOMOUNT”, RMAN will start the instance with a dummy parameter

You might see below error when trying to startup the database

RMAN> startup force nomount;
executing command: SET DBID
database name is “TST” and DBID is 4563434343232
startup failed: ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file ‘/u01/home/oracle/product/10.2.0/db_1/dbs/initTST.ora’
starting Oracle instance without parameter file for retrival of spfile
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of startup command at 11/13/2014 15:37:45
RMAN-04014: startup failed: ORA-04031: unable to allocate 4128 bytes of shared memory (“shared pool”,”unknown object”,”sga heap(1,0)”,”kglsim hash table bkts”)


As you see ERROR message in bold, the default values to startup the database is not sufficient. These default values depend up on the version and operating system.

Set the SGA_TARGET environment variable with higher value at O/S level.
export ORA_RMAN_SGA_TARGET= 10240 

RMAN> startup force nomount;
startup failed: ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/home/oracle/product/10.2.0/db_1/dbs/initTST.ora'
starting Oracle instance without parameter file for retrival of spfile
Oracle instance started

Total System Global Area 107374182400 bytes
Fixed Size 2286808 bytes
Variable Size 1325402920 bytes
Database Buffers 106032005120 bytes
Redo Buffers 14487552 bytes


Now the database instance opened NOMOUNT state and you can restore the SPFILE

RMAN> restore spfile from autobackup;
Starting restore at 2014-11-13:15:40:35
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=33 devtype=DISK
channel ORA_DISK_1: looking for autobackup on day: 20141113
channel ORA_DISK_1: looking for autobackup on day: 20141112
channel ORA_DISK_1: looking for autobackup on day: 20141111
channel ORA_DISK_1: looking for autobackup on day: 20141110
channel ORA_DISK_1: looking for autobackup on day: 20141109
channel ORA_DISK_1: looking for autobackup on day: 20141108
channel ORA_DISK_1: looking for autobackup on day: 20141107
channel ORA_DISK_1: no autobackup in 7 days found
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 11/13/2014 15:40:37
RMAN-06172: no autobackup found or specified handle is not a valid copy or piece

 

The SPFILE restore has failed because the database mounted with DUMMY spfile and it does not have information about AUTOBACKUP of the SPFILE.

You have two options.

1. Restore the SPFILE using FROM clause
RMAN> restore spfile from '/ora-backup/TST/cf_c-2786659778-20141110-05';
Starting restore at 2014-11-13:15:40:59
using channel ORA_DISK_1
channel ORA_DISK_1: autobackup found: /ora-backup/TST/cf_c-2786659778-20141110-05
channel ORA_DISK_1: SPFILE restore from autobackup complete
Finished restore at 2014-11-13:15:41:02


2. Restore the SPFILE using Control file AUTOBACKUP
RMAN> RUN {
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'autobackup_format';
RESTORE SPFILE FROM AUTOBACKUP;
}

executing command: SET CONTROLFILE AUTOBACKUP FORMAT Starting restore at 13-JUN-13
using channel ORA_DISK_1
channel ORA_DISK_1: looking for AUTOBACKUP on day: 20141113
channel ORA_DISK_1: AUTOBACKUP found: '/ora-backup/TST/cf_c-2786659778-20141110-05’
channel ORA_DISK_1: restoring spfile from AUTOBACKUP '/ora-backup/TST/cf_c-2786659778-20141110-05
channel ORA_DISK_1: SPFILE restore from AUTOBACKUP complete
Finished restore at 2014-11-13:16:49:02

Regards
Satishbabu Gunukula, Oracle ACE
http://www.oracleracexpert.com