All posts by mrculp

Using Edition-Based Redefinition for Online Zero-Downtime Schema Changes

Editions are easily created

EBR (Edition-Based Redefinition)

Oracle states:

Edition-based redefinition (EBR) enables online application upgrade with uninterrupted availability of the application.

The Oracle GoldenGate 18c online documentation

Has information regarding the support of this:

 

GoldenGate 18c Chp 12

EBR April 2017 pdf

Oracle 19c EBR

https://docs.oracle.com/database/121/ADFNS/adfns_editions.htm#ADFNS020

http://ermanarslan.blogspot.com/2015/07/ebs-122-and-ebr-lets-make-demo.html

https://oracle-base.com/articles/12c/edition-based-redefinition-enhancements-12cr1

https://www.oracle.com/technetwork/database/features/availability/edition-based-redefinition-1-133045.pdf

Two excellent lessons from the developer of EBR:

https://www.youtube.com/watch?v=bClWlW6tsb4

 

https://www.youtube.com/watch?v=A2JGbQ839us

 

Forward, Reverse Cross Edition Triggers and Editioning Views – An integral part of ADOP

 

Editioning Views

<pre>CREATE OR REPLACE EDITIONING VIEW MRC.EMP# AS
SELECT ID AS ID,
       NAME AS NAME
  FROM EMP;

=========================================================================

youtube video series

Bryn LLewellyn

 

Lesson 1 Part 1       40:54

Lesson 1 Part 2        43:54

Lesson 2                      52:13

Structure of table change 1:30

 

Lesson 3 Part 1          41:20

1:09 What is “safe” in 

Patching is defined as DDL

Describe the experiment

 

Lesson 3 Part 2  48:00

 

Lesson 4 Part 1  41:05

 

Lesson 4 Part 2  50:03

 

Lesson 4 Part 3  57:59


Test

Supplemental Logging for GoldenGate

There are several types of supplemental logging

  • Minimal
  • Primary Key
  • Unique Key
  • Foreign Key
  • All
  • Procedural Replication

Minimal Supplemental Logging

Minimal supplemental logging ensures that products leveraging LogMiner technology will have sufficient information to support chained rows and cluster tables.

Primary Key Supplemental Logging

Primary key supplemental logging includes the primary key for rows affected by UPDATE and DELETE changes.

Unique Key Supplemental Logging

Unique key supplemental logging includes all columns for a unique key are written to undo if any unique key columns are modified.

Foreign Key Supplemental Logging

Foreign key supplemental logging includes all other columns belonging to a foreign key will be logged in the undo if any foreign key columns are modified.

All Column Supplemental Logging

If no primary key or unique key is available then it is possible to specify that all columns are logged. In this case all columns in a row will be logged in the undo. When the row is replicated in the target database, equality predicates will be applied to all columns. LONG, LONG RAW and LOB columns will be omitted from the supplemental logging.

Procedural Replication Supplemental Logging

Procedural replication supplemental logging includes additional information in the redo log during invocation of procedures in Oracle-supplied packages for which procedural replication is supported. I have never investigated this option.

Supplemental Logging Levels

Oracle implements supplemental logging at database level, schema level and at table level. The three implementations are significantly different:

Database Level Supplemental Logging

Database level supplemental logging is configured in the control file. The parameter does not appear to be stored in the database itself.

Header for MRCENV file


#############################################################################
# Script name..: mrcenv
# Description..: environment file for mrc consulting llc
#              : use this file so as not to impact / change
#              : customer .profile or .bash_profile
# Customer.....: <customer name>
#############################################################################
# Author.......: Michael Culp
# Contact......: 
# Phone/text...: 864.999.9999 or 864.999.9999
# email........: mike.culp@gmail.com
# Created......: 10/16/2007
# Last modified: 10/17/2019
# Modified By..: Michael Culp
# Comments.....: Change the ORACLE_HOME, ORACLE_BASE, and GGS_HOME before using
#              : then simply . ./mrcenv in order to source it
# Script type..: environment source file
# Dependency...: none
################################################################################
# Revision History:
#
# REV      DATE          BY          DESCRIPTION
# ---    ---------   --------------  ------------------------------------------
# 1.0    09/17/2019  Michael Culp    Initial version of this
#                                    Change the values of vars for this customer
# 1.1    10/17/2019  Michael Culp    General clean-up
################################################################################