Configure Distribution Service between two Secure GoldenGate Microservices Architectures

Uncategorized
| Dec 30, 2019

Once you configure an Oracle GoldenGate Microservices environment to be secure behind the Nginx reverse proxy, the next thing you have to do is tackle how to connect one environment to the other using the Distribution Server.  In using the Distribution Server, you will be creating what is called a Distribution Path. Distribution Paths are […]

The post Configure Distribution Service between two Secure GoldenGate Microservices Architectures appeared first on DBASolved.

Installing Nginx

Uncategorized
| Dec 28, 2019

With Oracle GoldenGate Microservices, you have the option of using a reverse proxy or not.  In reality, it is a best practice to install the recommended reverse proxy for the architecture.  The main benefit here is the security aspect of using it.  In Oracle GoldenGate Microservices, depending on the number of deployments you have per […]

The post Installing Nginx appeared first on DBASolved.

Identity wallets used by Oracle GoldenGate Microservices

Uncategorized
| Dec 24, 2019

Wallets, Wallets, and more wallets! … Wallets are used for a few different things within Oracle GoldenGate Microservices; identifying what wallet is being used by a service is simple if you know where to look.   The biggest usage of wallets within Oracle GoldenGate Microservices is to help secure the communication between the Distribution Service […]

The post Identity wallets used by Oracle GoldenGate Microservices appeared first on DBASolved.

Duplicate OMF DB Using Backupset To New Host And Directories

Uncategorized
| Sep 14, 2019

Database 12.1.0.2.0 is created using OMF.

At SOURCE:
db_create_file_dest=/u01/app/oracle/oradata
db_recovery_file_dest=/u01/app/oracle/fast_recovery_area

At DESTINATION:
db_create_file_dest=/u01/oradata
db_recovery_file_dest=/u01/fast_recovery_area

BACKUP LOCATTION on shared storage:
/media/shared_storage/rman_backup/EMU

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

Uncategorized
| 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
DBFS

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

Playing with Oracle Database Security Assessment Tool (DBSAT)

Uncategorized
| Apr 17, 2019
The Database Security Assessment Tool (DBSAT) is an incredible free command line tool provided by Oracle Corporation as a utility to help you verify your database for common database security issues(including security policies and controls in place), as well as helping to identify

Another bug with lateral

Uncategorized
| Feb 15, 2019

Compare the results of the following query with the clause “fetch first 2 rows only”

with 
 t1(a) as (select * from table(odcinumberlist(1,3)))
,t2(a,b) as (select * from table(ku$_objnumpairlist(
                                 sys.ku$_objnumpair(1,1),
                                 sys.ku$_objnumpair(1,2),
                                 sys.ku$_objnumpair(1,3),
                                 sys.ku$_objnumpair(3,1),
                                 sys.ku$_objnumpair(3,2),
                                 sys.ku$_objnumpair(3,3)
                                 )))
,t(id) as (select * from table(odcinumberlist(1,2,3,4,5,6,7)))
select
  *
from t,
     lateral(select t1.a,t2.b
             from t1,t2 
             where t1.a = t2.a 
               and t1.a = t.id
             order by t2.b
             fetch first  (more...)

Lateral view decorrelation(VW_DCL) causes wrong results with rownum

Uncategorized
| Feb 15, 2019

Everyone knows that rownum in inline views blocks many query transformations, for example pushing/pulling predicates, scalar subquery unnesting, etc, and many people use it for such purposes as a workaround to avoid unwanted transformations(or even CBO bugs).

Obviously, the main reason of that is different calculation of rownum:

If we pull the predicate “column_value = 3” from the following query to higher level

select * 
from (select * from table(odcinumberlist(1,1,1,2,2,2,3,3,3)) order by 1)
where rownum  (more...)

Oracle SOA Suite 12c : Audit Levels (Off, Production, Development)

Uncategorized
| Aug 18, 2018
Inside the Enterprise Manager (URL: http://yourhost:7001/em) you can configure SOA Suite Audit Levels:

Choose "Common Properties"

Click on "Change Profile"
The oracle documentation shows the following:



  • Off:
    No business flow instance tracking and payload tracking information is collected. Drilling down into a flow shows the components and their status. Using this setting limits database growth, and also helps reduce latency and improve throughput.
  • Production:
    Flow and audit event information is collected and (more...)

Oracle Weblogic 12c: Extracting the complete configuration via wlst.sh python script

Uncategorized
| Jul 28, 2018
If you want to get all information out of a weblogic server via wlst.sh than you can use the following script:
# written by Dietrich Schroff 2018
import sys


OutputFile='myfile.txt'
sys.stdout = open(OutputFile,'w')
connect('weblogic','mypasswd','t3://localhost:7001')
depth=0

def loopOverAllSubdirectories(goIntoThisDirectory,depth):
    depth=depth+1
    cd(goIntoThisDirectory)
    print depth," "*depth*2,goIntoThisDirectory
    try:
            completeInput=ls()
            inputArray=completeInput.split('\n')
        allParameters=[ x for x in inputArray if (not ("dr--" in x) or ("drw-" in x)) ]
(more...)

“Regulatorics: Offside is when the referee whistles” – I’m a speaker at #DOAG2018

Uncategorized
| Jul 17, 2018

Today my presentation is confirmed: “Regulatorics: Offside is when the referee whistles”. Maybe the German title will be  better understood: “Regulatorik: Abseits ist, wenn der Schiedsrichter pfeift”

The regulatory system has more and more influence on our software development.

Regulatory authorities, exteranl and internal Auditors are increasingly examining our IT and not longer only our business processes and balance sheets.
Some of them have better trained IT experts as we can find on the free market.

General standards such (more...)

Oracle SOA Suite: Profiles (SOA Foundation, BPEL only, Orchestration, Enterprise, BPM Classic, …)

Uncategorized
| Jul 15, 2018
Inside the Enterprise Manager (URL: http://yourhost:7001/em) you can configure SOA Suite profiles:

Choose "Common Properties"

Click on "Change Profile"
The oracle documentation shows the following:

The full set of adapters:
  • file,
  • FTP, 
  • database, 
  • JMS, 
  • MQSeries, 
  • AQ, 
  • E-Business Suite, 
  • User Messaging Service, 
  • socket, 
  • LDAP, 
  • Coherence, 
  • MSMQ,
  • JDE
The limited set of adapters:
  • file, 
  • FTP, 
  • database, 
  • JMS, 
  • MQSeries, 
  • AQ, 
  • E-Business Suite,
  • User Messaging Service

The Struggles of Personalization in ADF

Uncategorized
| Jul 10, 2018

A Mike Heeren & Richard Olrichs co-production

ADF comes with the out-of-the-box features of personalization. This means that whenever you configure personalisation, users can persist changes they make to the application across sessions and personalize their experience with the application. We have seen that this feature can also confuse some of our users, so it is not always wise to use this. It depends on the use case you have. However, when recently implementing personalization (more...)

The Struggles of Personalization in ADF

Uncategorized
| Jul 10, 2018
A Mike Heeren & Richard Olrichs co-production

ADF comes with the out-of-the-box features of personalization. This means that whenever you configure personalisation, users can persist changes they make to the application across sessions and personalize their experience with the application. We have seen that this feature can also confuse some of our users, so it is not always wise to use this. It depends on the use case you have. However, when recently implementing personalization (more...)

Oracle SOA Suite 12c: How to deploy a BPEL onto a weblogic server

Uncategorized
| May 26, 2018
After you have created your BPEL inside Jdeveloper, you have to add an application server inside jdev:







 And here we go:

Then go to the applications view:







And after the deployment check via Application Server view, if the BPEL version was deployed:


Oracle SOA Suite 12c: Invoking a BPEL process via Jdeveloper

Uncategorized
| May 5, 2018
After you deployed a BPEL process to your application server open the application server view in Jdeveloper:
 Open the BPEL inside the Application Server view:
 Do a right click on the BPEL process and select "Test Web Service":
 This will open the HTTP Analyzer:
 Fill in your XML input and click "Send Request". After that you will see:


Very nice are the options via the tab at the bottom:
  • SOAP Strucutre
  • HTTP Content
  • REST Structure
  • (more...)

Oracle SOA Suite 12c: complete startup procedure including database and application server

Uncategorized
| Apr 29, 2018
After the first reboot i had to work hard to get the complete system up again. So here a list of all commands:


  1. database
    export ORACLE_HOME=/home/oracle/app/oracle/product/12.2.0/dbhome_1
    export PATH=$PATH:$ORACLE_HOME/bin
    export ORACLE_SID=orcl

    $ sqlplus / as sysdba

    SQL*Plus: Release 12.2.0.1.0 Production on Fri Feb 16 20:53:02 2018

    Copyright (c) 1982, 2016, Oracle.  All rights reserved.

    Connected to an idle instance.

    SQL> startup
    ORACLE instance started.

    Total System Global Area 1560281088 (more...)

Playing with Oracle Database Cloud – Migrating to Cloud using an Oracle Cloud Backup

Uncategorized
| Apr 4, 2018
The idea for this scenario is to learn how to migrate an Oracle Database from on-premises to Oracle Cloud DBaaS by using a previously done backup using Oracle Cloud Backup Services. First, we will create an Oracle Database Cloud Services database

Playing with Oracle Database Cloud Backup Service

Uncategorized
| Apr 3, 2018
This article will show you how easy is to make use of Oracle Cloud to securely store all our on-premises Oracle Database Backups. Note that backups stored in Oracle Cloud can also be used to create new Oracle Database Instances

Playing with CrashSimulator

Uncategorized
| Mar 22, 2018
Hi everyone,   Today I will show you how CrashSimulator (Shell Script – current version 1.04) works in detail. When unzipping the zip file you will find the following files within it: CrashSimulator.sh.x – For high-resolution ssh emulator screens, it