Oracle FMW GoldenGate Veridata setup OUI troubles with X Server

I have spent several hours finding the reason why installation of Oracle GoldenGate Veridata 12.2.1 on RedHad Enterpise Linux 7.3 starts correctly on one machine and doesn’t start on another – the same version and installed by the same administrator.

Starting installation just complains on X Server setup:

java -jar fmw_12.2.1.2.0_ogg.jar
...
Preparing to launch the Oracle Universal Installer from /tmp/OraInstall2017-03-30_10-47-55AM
Log: /tmp/OraInstall2017-03-30_10-47-55AM/install2017-03-30_10-47-55AM.log
X-Server access is denied on host
[Fatal Error] DISPLAY variable set incorrectly: localhost:11.0
[Resolution] Verify that your DISPLAY environment variable is set correctly, 
and that there is an X11 server on the system. If you are 
running the Oracle Installer as a different user or on a different host, 
you may need to use the xhost command to ensure that host/user 
has permission to write to your display

The most interesting thing is that starting already installed 11.2.0.4 GUI utils, like NETCA/DBCA/DBUA, works correctly… and they use the same X Server setup, actually through X Server Forwarding… because of this I have DISPLAY=localhost:11.0 Continue reading

Advertisements

Different RMAN Retention Policies for DISK and TAPE

Short note for myself on how to implement different RMAN Retention policies for DISK and TAPE backups in the same configuration.

The goal is to have:

  • Retention for DISK backups as 7 Days;
  • Retention for TAPE backups as 60 Days;

Implementation:

  • set policy for TAPE as RMAN CONFIGURATION
    • CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 60 DAYS;
  • for deletion of OBSOLETE backups use next commands as a single block:
    • DELETE OBSOLETE DEVICE TYPE  TAPE;
    • DELETE OBSOLETE RECOVERY WINDOW OF 7 DAYS DEVICE TYPE DISK ;

Continue reading

Explicitly Closing Oracle Database Link

From time to time (actually, once in a several years ;-)) I need to explicitly close opened database link, so here I’m putting some notes for myself on this topic.

Additionally to implicitly closing database link by closing you connection we have next methods for explicitly closing specific database link:

  1. ALTER SESSION CLOSE DATABASE LINK my_db_link;
  2. EXECUTE DBMS_SESSION.CLOSE_DATABASE_LINK(‘my_db_link‘);

Continue reading

Using SQLPatch to inject HINTs when you can’t touch the code

Here I’m putting some example code on how to use SQLPatch for HINTing SQLs when it’s not possible to touch the application code or use other techniques to fix execution plan.

SQL Patches:

  • work since 11.2.0.3
  • are internally based on SQL Profiles;
  • may be used to add HINTs to SQLs when you can’t touch code(like with Packaged Application);
  • don’t require Diagnostics or Tuning Pack Licenses;
  • sql text is normalized before storing, so additional spaces and case mismatch is not a problem;
  • don’t handle SQL embedded literals, except through unpublished call to I_CREATE_SQL_PROFILE – see example later;
  • RESULT_CACHE hint is honored since 12.1.0.2 and 12.2 – Check BUG:16974854;
  • to check if SQL Profile was used add +NOTE when displaying execution plan
    • SELECT * FROM table(dbms_xplan.display_cursor(format=>’+NOTE‘));
  • to use HINTs with corrent syntax get them from desired execution plan:
    • SELECT * FROM table(dbms_xplan.display_cursor(format=>’+OUTLINE‘));

Continue reading

IMPDB with REMAP_SCHEMA may create(import) Trigger on table in Wrong Schema

Funny situation was discovered recently by one of our customers. Actually, it was an incident with Core Banking System, so, in reality, it wasn’t Funny….

I have checked and found that this issue reproduces not only with customer’s database using software version 11.2.0.4, but with version 12.1.0.2 with latest Oracle Database Proactive Bundle Patch(160719) installed.

To reproduce issue you need: Continue reading

Global Context + Session Client Identifier = Strange Behaviour or Documentation BUG ?

Here I’ll describe some strange/interesting/ behaviour of Global Application Context connected with usage of Session Client Identifier, that is quite usually met in Application Express, J2EE Agent, Oracle Data Integrator starting from release 11.1.1.7 and many other applications that uses JDBC Connection Pooling in conjunction with setting Session Client Identifier.

So what is the problem ?

The problem is that Global Application Context doesn’t work as expected and described in documentation – attributes’ VALUES ARE NOT VISIBLEContinue reading