Cloning Oracle Homes in 19c Part 2

| Oct 30, 2019

You didn’t think there was going to be a part 2 did you?

$ORACLE_HOME/log is not included in creategoldimage which makes perfect sense as I was discussing on twitter for having garbage in a gold image but why is it being read?

For ol7-19-rac2, permission for $GRID_HOME/log has not been changed; hence, creategoldimage failed.

-exclFiles $ORACLE_HOME/.patch_storage (succeeded)
-exclFiles $ORACLE_HOME/log (failed)

[oracle@ol7-19-rac1 ~]$ ls /u01/app/19.0.0/grid/.patch_storage/
29401763_Apr_11_2019_22_26_25  29585399_Apr_9_2019_19_12_47   29851014_Jul_5_2019_01_15_35    NApply
29517242_Apr_17_2019_23_27_10  29834717_Jul_10_2019_02_09_26  interim_inventory. (more...)

Cloning Oracle Homes in 19c

| Oct 29, 2019

You may find conflicting information from Oracle’s documentation where Cloning an Oracle Database Home shows to use and Database Upgrade Guide 19c shows Deprecation of Script

To clone Oracle software, use createGoldImage and then install software as usual.

DEMO for DB:

Source: /u01/app/oracle/product/19.0.0/dbhome_1
Target: /u01/app/oracle/product/19.0.0/dbhome_2

-exclFiles $ORACLE_HOME/.patch_storage to save space but will not be able to rollback patches
-silent to run in silent mode

[oracle@ol7-19-rac1 ~]$  (more...)

srvctl config all

| Oct 22, 2019

Learned something new today and not sure if it’s new feature.

Seems a lot easier to gather clusterware configuration using one command.

oracle@ol7-19-rac2 ~]$ echo $ORACLE_HOME

[oracle@ol7-19-rac2 ~]$ srvctl -version
srvctl version:

[oracle@ol7-19-rac2 ~]$ srvctl config all

Oracle Clusterware configuration details

Oracle Clusterware basic information
  Operating system          Linux
  Name                      ol7-19-cluster
  Class                     STANDALONE
  Cluster nodes             ol7-19-rac1, ol7-19-rac2
  Groups                    SYSOPER: SYSASM:dba  (more...)

Be Careful When Subscribing To Oracle Learning Subscription

| Oct 7, 2019

Subscribing to Oracle Learning Subscription seems good in theory but bad in reality.

Oracle support informed. “Oracle University’s policy regarding Learning Subscription courseware materials is that they cannot be downloaded by customers.”

How convenience of Oracle as the info should have been stated at

Took for granted materials can be downloaded since they are made available to download for all other training formats.

This seems to be a deceptive process by (more...)

Duplicate OMF DB Using Backupset To New Host And Directories

| Sep 14, 2019

Database is created using OMF.



BACKUP LOCATTION on shared storage:

I has to explicitly set control_files since I was not able to determine how it can be done automatically.

set control_files='/u01/oradata/EMU/controlfile/o1_mf_gqsq2mlg_.ctl','/u01/fast_recovery_area/EMU/controlfile/o1_mf_gqsq2mpz_.ctl'

If don’t set_controlfiles then duplicate will restore to original locations.

channel ORA_AUX_DISK_1: restoring control file
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
output file name=/u01/app/oracle/oradata/EMU/controlfile/o1_mf_gqsq2mlg_.ctl
output file  (more...)

Obvious But Not For Oracle Obviously

| Aug 12, 2019

While dropping RAC database, I found error ORA-01081: cannot start already-running ORACLE – shut it down first from dbca log.

Looking up error: Cause is obvious

$ oerr ora 01081
01081, 00000, "cannot start already-running ORACLE - shut it down first"
// *Cause:  Obvious
// *Action:

Here is the process for 12.1.0:

$ ps -ef|grep pmon
oracle   41777     1  0 Aug09 ?        00:00:30 asm_pmon_+ASM2

$ srvctl config database

$ srvctl status database -d  (more...)

19c Grid Dry-Run Upgrade

| Aug 6, 2019

First test using GUI.

[oracle@racnode-dc2-1 grid]$ /u01/app/ -dryRunForUpgrade
Launching Oracle Grid Infrastructure Setup Wizard...

The response file for this session can be found at:

You can find the log of this install session at:
[oracle@racnode-dc2-1 grid]$

Create dryRunForUpgradegrid.rsp from grid_2019-08-06_00-20-31AM.rsp (above GUI test)

[oracle@racnode-dc2-1 grid]$ grep -v "^#" /u01/app/ | grep -v "=$" |  grep -v "^$" |  (more...)

Too Old To Remember

| Aug 1, 2019

Is it required to run datapatch after creating database?

Why bother trying to remember versus running datapatch -prereq to find out?

Test case for 12.2.

Database July 2019 Release Update 12.2 applied:

[oracle@racnode-dc2-1 ~]$ /media/patch/
+ . /media/patch/gi.env
++ set +x
The Oracle base remains unchanged with value /u01/app/oracle
Oracle Instance alive for sid "+ASM1"
+ /u01/app/ version
OPatch  (more...)

Rsync DBFS To ACFS For GoldenGate Trail Migration

| Jul 24, 2019

Planning to move GoldenGate trail files from DBFS to ACFS.

This is pre-work before actual migration to stress IO for ACFS.

Learned some cron along the way.

# Run every 2 hours at even hours
0 */2 * * * /home/oracle/working/dinh/ > /tmp/rsync_acfs_ggdata_to_ggdata02.log 2>&1

# Run every 2 hours at odd hours
0 1-23/2 * * * /home/oracle/working/dinh/ > /tmp/rsync_acfs_ggdata_to_ggdata02.log 2>&1

Syntax and ouptput.

+ /bin/rsync -vrpogt --delete-after /DBFS/ggdata/ /ACFS/ggdata
building  (more...)

Check Cluster Resources Where Target != State

| Jul 23, 2019

Current version.

[oracle@racnode-dc2-1 patch]$ cat /etc/oratab
#Backup file is  /u01/app/ line added by Agent
+ASM1:/u01/app/          # line added by Agent
[oracle@racnode-dc2-1 patch]$

Kill database instance process.

[oracle@racnode-dc2-1 patch]$ ps -ef|grep pmon
oracle   13542     1  0 16:09 ?        00:00:00 asm_pmon_+ASM1
oracle   27663     1  0 16:39 ?        00:00:00 ora_pmon_hawk1
oracle   29401 18930  0 16:40 pts/0    00:00:00 grep --color=auto pmon
[oracle@racnode-dc2-1 patch]$
[oracle@racnode-dc2-1 patch]$  (more...)