Skip navigation.

DBA Blogs

Useful Oracle 12c OCP exam blog post

Bobby Durrett's DBA Blog - Fri, 2014-04-25 10:54

I found this blog post about the Oracle 12c OCP exam useful: url

In particular it explained why my Kaplan SelfTest software only covers the new 12c features and not general DBA skills section of the OCP exam.

The Kaplan software I purchased has 50 questions and they are only about new features.  The software showed me the gaps in my 12c new features knowledge and gave me practice taking a multiple choice computerized test and I believe the value of these benefits exceed the $99 cost of the software.  But, the software surprised me when I discovered that it didn’t cover all the areas that will be on the OCP 12c upgrade exam.  The blog post I’ve referenced explains that in the near future Transcender will produce software that includes both sections of the OCP 12c upgrade exam.

- Bobby

Categories: DBA Blogs

Developing a Data Infrastructure Sourcing Strategy

Pythian Group - Fri, 2014-04-25 07:51

Today’s blog post is the second of three in a series dedicated to data infrastructure outsourcing, with excerpts from our latest white paper.

The trends in our first blog post reveal that enterprises are looking for outside help with their data infrastructure not to reduce costs, but to:

  • Improve service quality
  • Increase productivity
  • Access specialized skills
  • Increase innovation

In the full white paper, we examine some of the strengths and weaknesses of the three sourcing options available to help you realize these benefits.

In-House

Having data management experts on staff provides organizations with greater control over their work. Additionally, in-house experts have in-depth knowledge about their specific systems and processes. However, relying on in-house resources alone presents multiple challenges for an organization.

Offshoring

There’s no doubt that offshore providers have offered cost savings in the past. However, the fact that many companies are now reshoring their operations indicates that those benefits did not compensate for the downsides of this approach—typically reduced productivity.

Outsourcing

The right outsourcing vendor can deliver the benefits of the other two sourcing models without the equivalent downsides. For a deeper analysis of the strengths and weaknesses of the three sourcing options, download the rest of our white paper, Data Infrastructure Outsourcing.

Read the first blog post in this series, The Growing Trend Toward Data Infrastructure Outsourcing.

Categories: DBA Blogs

Oracle Traffic Director - Part 1: Introduction

Enterprises need to support high transaction volumes and run their business applications on a highly available systems while delivering maximum performance. Oracle provides Engineered Systems which...

We share our skills to maximize your revenue!
Categories: DBA Blogs

Information Lifecycle Management

DBA Scripts and Articles - Thu, 2014-04-24 14:22

Presentation of Information Lifecycle Management (ILM) With data volume growing, finding adapted storage solutions to storage costs and performance objectives is a real challenge for IT department in large companies. Information Lifecycle management is about managing the data all along its useful life while offering the best performance and storage cost as low as possible. The [...]

The post Information Lifecycle Management appeared first on Oracle DBA Scripts and Articles (Montreal).

Categories: DBA Blogs

Upgrading Certification to 12c

Hemant K Chitale - Thu, 2014-04-24 09:01
Here's an Oracle Webinar on upgrading certification to 12c
.
Here are notes by Matthew Morris on the upgrade for 9i/10g/11g OCAs : A Lifeline for 9i and 10g OCAs
.
.
.
Categories: DBA Blogs

12c: Connecting to CDB/PDB – Set Container Vs Connect

Oracle in Action - Thu, 2014-04-24 03:29

RSS content

In Oracle 12c, you can connect to a PDB using two methods :

- Switch the container using Alter system set container …

- Use connect command to connect to PDB using network alias

Let’s compare the two methods :

The use of SET CONTAINER avoids the need to create a new connection from scratch.

If there is an existing connection to a PDB / CDB$root, the same connection can be used to connect to desired PDB / CDB$root.

– Connect to CDB

[oracle@em12 ~]$ sqlplus system/oracle@cdb1

CDB$ROOT@CDB1> sho con_name

CON_NAME
------------------------------
CDB$ROOT

– Check the PID for the process created on the operating system

[oracle@em12 ~]$ ps -ef |grep LOCAL |grep -v grep

oracle 23271 1 0 10:23 ? 00:00:00 oraclecdb1 (LOCAL=NO)

– Change the container to PDB1 using Set container

CDB$ROOT@CDB1> alter session set container=pdb1;

sho con_name

CON_NAME
------------------------------
PDB1

– Check that the operating system PID remains the same as earlier connection is reused and a new connection has not been created

[oracle@em12 ~]$ ps -ef |grep LOCAL |grep -v grep

oracle 23271 1 0 10:23 ? 00:00:00 oraclecdb1 (LOCAL=NO)

– Switch the container back to cdb$root using connect

CDB$ROOT@CDB1> conn system/oracle@cdb1
sho con_name

CON_NAME
------------------------------
CDB$ROOT

– Check that a new operating system PID has been created as a new  connection  has been created

[oracle@em12 ~]$ ps -ef |grep LOCAL |grep -v grep

oracle 23409 1 0 10:29 ? 00:00:00 oraclecdb1 (LOCAL=NO)
glogin.sql is not executed when Alter session set container is used

To demonstrate it, I have added following lines to my glogin.sql to display CDB/PDB name in SQL prompt:

define gname=idle
column global_name new_value gname
set heading off
set termout off
col global_name noprint
select upper(sys_context ('userenv', 'con_name') || '@' || sys_context('userenv', 'db_name')) global_name from dual;
set sqlprompt '&gname> '
set heading on
set termout on

- Let’s connect to PDB1 using “Connect” and verify that glogin.sql is executed and prompt displays CDB/PDB name

 

SQL> conn sys/oracle@pdb1 as sysdba
PDB1@CDB1> 

- Verify that the prompt displays current container (PDB1) and container database (CDB1)

PDB1@CDB1> sho con_name
PDB1

PDB1@CDB1> sho parameter db_name
db_name                              string      cdb1

– Now let’s connect to PDB2 using Alter session set container and verify that glogin.sql is not executed and the same prompt as earlier is displayed

PDB1@CDB1>  alter session set container=pdb2;

 Session altered.
PDB1@CDB1> sho con_name
CON_NAME

 ------------------------------

 PDB2  
-- Let's connect to PDB2 using connect and verify that glogin.sql is executed as the prompt displays the PDB name PDB2

 PDB1@CDB1> connect sys/oracle@pdb2 as sysdba

 PDB2@CDB1> 
Pending transactions are not committed when Alter system set container is used

– Let’s start a transaction in PDB1

PDB1@CDB1> create table pdb1_tab(x number);
Table created.
PDB1@CDB1> insert into pdb1_tab values (1);
1 row created.

– Switch the container to PDB2

PDB1@CDB1> alter session set container=pdb2;

– Try to start another transaction on PDB2 – does not allow as an active transaction exists in the parent container PDB1

PDB1@CDB1> create table pdb2_tab (x number);

 create table pdb2_tab (x number)

 *

 ERROR at line 1:

 ORA-65023: active transaction exists in container PDB1

– In another session check that the transaction was not committed and no rows are visible in table pdb1_tab

CDB$ROOT@CDB1> conn system/oracle@pdb1

 PDB1@CDB1> select * from pdb1_tab;
no rows selected
 Alter session set container cannot be used by local users

 

– Try to give set container privilege to a local user HR in PDB2 – fails as common privilege cannot be granted to a local user and hence a local user cannot user alter session set container to connect to another PDB

PDB2@CDB1> connect system/oracle@pdb2

 PDB2@CDB1> grant set container to hr container=all;

 grant set container to hr container=all

 *

 ERROR at line 1:

 ORA-65030: one may not grant a Common Privilege to a Local User or Role

I hope this post was useful.

Your comments and suggestions are always welcome.

References :

http://docs.oracle.com/cd/E16655_01/server.121/e17636/cdb_admin.htm#ADMIN13970

———————————————————————————-

Related Links:

Home

Database 12c Index

——————————————————–

 



Tags:  

Del.icio.us
Digg

Comments:  0 (Zero), Be the first to leave a reply!You might be interested in this:  
Copyright © ORACLE IN ACTION [12c: Connecting to CDB/PDB - Set Container Vs Connect], All Right Reserved. 2014.

The post 12c: Connecting to CDB/PDB – Set Container Vs Connect appeared first on ORACLE IN ACTION.

Categories: DBA Blogs

Estimate Index Size With Explain Plan (I Can’t Explain)

Richard Foote - Wed, 2014-04-23 23:22
I discussed recently an updated MOS note that details the needs vs. the implications of rebuilding indexes. Following is a neat little trick if you want to very quickly and cheaply estimate the size of an index if it were to be rebuilt or a new index before you actually create the thing. I meant to blog about this sometime […]
Categories: DBA Blogs

Lead DBA Position Phoenix Arizona with PeopleSoft

Bobby Durrett's DBA Blog - Wed, 2014-04-23 17:13

My company has posted a Lead Oracle DBA position located in Phoenix, Arizona which is where I also live.

You have to apply through our web site using this link:

https://usfood.taleo.net/careersection/USF_EXTERNAL/jobdetail.ftl?lang=en&job=14002202

We would love to get someone who has PeopleSoft skills.

You would be joining a friendly and experienced team of Oracle and SQL Server DBAs who support a wide variety of applications.  I’ve been here eight years and the time has expanded my scope by exposing me to data warehouse and customer facing web applications that I had not previously supported.  It’s a good position for a qualified person.

- Bobby

Categories: DBA Blogs

Data toons: Cirque du DBA

Pythian Group - Wed, 2014-04-23 09:09

It’s not uncommon for database administrators (DBAs) to feel like ring masters at the circus. But what happens when you free up in-house DBAs by outsourcing database management?
Cirque cartoon

This work is licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License. Based on a work at pythian.com/blog.

Categories: DBA Blogs

Presenting at ODTUG Kscope14 Conference in Seattle June 22-26 2014

Richard Foote - Tue, 2014-04-22 19:21
  Just a short note to say I’ll be presenting at the Oracle Development Tools User Group (ODTUG) Kaleidoscope 14 Conference this year in beautiful Seattle, Washington on June 22-26 2014. I had a fantastic time when I attended this conference a few years ago when it was held in Monterey so I’m really looking forward to […]
Categories: DBA Blogs

Result Cache concept and benefits

DBA Scripts and Articles - Tue, 2014-04-22 15:46

This feature was first introduced in Oracle 11g and was meant to increase performance of repetitive queries returning the same data. The Result Cache feature is interesting if your application always look for static data, or data that is rarely updated, for these reasons, it is firstly destinated to Data Warehouses databases (OLAP) as many [...]

The post Result Cache concept and benefits appeared first on Oracle DBA Scripts and Articles (Montreal).

Categories: DBA Blogs

Quick documentation for new PeopleSoft DBAs

Bobby Durrett's DBA Blog - Tue, 2014-04-22 11:10

I did a quick survey of the latest PeopleSoft manuals to find a set of links to pass on to a couple of coworkers of mine that are interested in doing PeopleSoft DBA work so I thought I’d include the links in a post.  This might give a new PeopleSoft DBA some highlights without having to read the entire manual set.

This page has a nice picture of how the environments connect:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tgst/concept_UnderstandingthePeopleSoftTopology-827f9d.html

This is the top level URL for the PeopleTools 8.53 documentation:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/index.html

Another nice architecture diagram:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tgst/task_WebServer-827f33.html

Nice overview of application development using app designer:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tapd/task_PeopleSoftApplicationDesignerImplementation-0776f7.html

Yet another architecture diagram:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tprt/concept_PeopleSoftPureInternetArchitectureFundamentals-c071ce.html

More in depth view of app server and its processes:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tprt/concept_ApplicationServers-c071d0.html

Web server with discussion of servlets and jolt:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tprt/concept_WebServer-c071dc.html

Nice overview of datamover commands:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tadm/concept_UnderstandingDataMoverScripts-077b05.html

Datamover basics

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tadm/task_CreatingandRunningPeopleSoftDataMoverScripts-077af9.html

Nice explanation of Oracle connections from PeopleSoft:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tadm/task_MonitoringPeopleSoftDatabaseConnections-077989.html

Good to know but not very clear explanation:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsec/concept_PeopleSoftAuthorizationIDs-c07669.html

Important to know but not very clear:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsec/concept_PeopleSoftSignIn-c0766f.html

PS_HOME versus PS_CFG_HOME

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/concept_UnderstandingPS_HOMEandPS_CFG_HOME-eb7ece.html

Starting psadmin

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/task_StartingPSADMIN-c07e6b.html

Nice run down of config files:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/task_UsingPSADMINConfigurationFiles-c07e7a.html

App server menu:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/task_UsingtheApplicationServerAdministrationMenu-c07e84.html

process scheduler menu:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/task_UsingtheProcessSchedulerMenu-c07ea3.html

web server menu – I don’t think I’ve ever used this:

http://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tsvt/task_UsingtheWebPIAServerMenu-1773ed.html

- Bobby

 

Categories: DBA Blogs

Indexing Foreign Key Constraints With Invisible Indexes (Invisible People)

Richard Foote - Tue, 2014-04-22 00:31
In my previous post I discussed when deleting rows from parent tables, how Bitmap Indexes based on the FK constraint can prevent the expensive Full Tables Scans (FTS) on the child tables but not the associated exclusive table locks. Last year, I discussed how it was possible in Oracle Database 12c to have multiple indexes on the same column list. […]
Categories: DBA Blogs

SQL*Loader Express bug – not!

Bobby Durrett's DBA Blog - Mon, 2014-04-21 15:41

I’m still studying for my Oracle 12c OCP exam and I was trying to run a simple example of using SQL*Loader Express and the first thing I did blew up and I think it is a bug.  When I load a table with one or two columns it works fine, but when I load a table with 3 or 4 columns the last column is not loaded.  Tell me this isn’t a special feature! :)

First I create the table with four columns:

create table test
(a varchar2(20),
 b varchar2(20),
 c varchar2(20),
 d varchar2(20));

Then I create a comma separated values file named test.dat with four values per line:

[oracle@ora12c dpsl]$ cat test.dat
a,b,c,d
f,g,h,i
j,k,l,m

Then I run sql*loader in express mode:

[oracle@ora12c dpsl]$ sqlldr system/xxxxxx table=test

SQL*Loader: Release 12.1.0.1.0 - Production on Mon Apr 21 07:32:43 2014

Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

Express Mode Load, Table: TEST
Path used:      External Table, DEGREE_OF_PARALLELISM=AUTO

Table TEST:
  3 Rows successfully loaded.

Check the log files:
  test.log
  test_%p.log_xt
for more information about the load.

Then I query the newly loaded table:

ORCL:CDB$ROOT:SYSTEM>select * from test;

A                    B                    D
-------------------- -------------------- --------------------
a                    b                    d
f                    g                    i
j                    k                    m

Queue the mysterious music.  Actually, now that I look at it really it is the third column that is missing.  Maybe it doesn’t work with a column named C.

Sure enough, here it is with column C replaced with column X:

A                    B                    X                    D
-------------------- -------------------- -------------------- --------------------
a                    b                    c                    d
f                    g                    h                    i
j                    k                    l                    m

So, I guess SQL*Loader Express doesn’t work with columns named C?  Odd.

- Bobby

Update on 05/16/2014:

As you probably can expect, this was user error on my part.  My standard header for sqlplus scripts has this code:

column u new_value us noprint;
column n new_value ns noprint;
column c new_value cs noprint;
 
select name n from v$database;
select user u from dual;
SELECT SYS_CONTEXT('USERENV', 'CON_NAME') c FROM DUAL;

I use this code to build a prompt that will tell me which container I’m in like this:

set sqlprompt &ns:&cs:&us>

But, this means I can’t use columns named n, u, or c, but in my sql*loader test I was using c.  So, not a bug, just a user error!

- Bobby

Categories: DBA Blogs

Switch to Integrated Replicat

DBASolved - Mon, 2014-04-21 12:15

Earlier I wrote a blog post about moving the Oracle Golden Gate Extract from “Classic”  capture to “Integrated” capture.   In this post, we will take a look at how to move a “Classic” replicat (apply) to an “Integrated” replicat (apply) process.

The initial step to migrate the replicat from “Classic” to “Integrated” are the same as the extract.  Look here for the initial details.  This post picks up when we are getting ready to stop the replicat and perform the migration.

Before we can do anything with the replcat, we need to be in GGSCI.

Code 1:


[oracle@oel oggcore_1]$ ./ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 12.1.2.0.0 17185003 17451407_FBO
Linux, x64, 64bit (optimized), Oracle 11g on Oct 29 2013 00:31:40
Operating system character set identified as UTF-8.

Copyright (C) 1995, 2013, Oracle and/or its affiliates. All rights reserved.

 

GGSCI (oel.acme.com) 1>

Now, we need to stop the replciat (apply) process that we are using.

Code 2:


GGSCI (oel.acme.com) 1> info all

Program     Status      Group       Lag at Chkpt  Time Since Chkpt

MANAGER     RUNNING
JAGENT      STOPPED
EXTRACT     RUNNING     EXT         00:00:09      00:00:00
EXTRACT     RUNNING     PMP         00:00:00      00:00:10
REPLICAT    RUNNING     REP         00:00:00      00:00:08

GGSCI (oel.acme.com) 2> stop replicat rep

Sending STOP request to REPLICAT REP ...
Request processed.

With the replicat stopped, we need to log into the database through GGSCI.

Code 3:


GGSCI (oel.acme.com) 3> dblogin userid ggate, password ggate
Successfully logged into database.

Next, we need to alter the replicat to make it integrated.

Code 4:


GGSCI (oel.acme.com) 4> alter replicat rep, integrated
REPLICAT (Integrated) altered.

Finally, we need to start the replicat.

Code 5:


GGSCI (oel.acme.com) 5> start replicat rep

Sending START request to MANAGER ...
REPLICAT REP starting

Once the replicat has been started, we can check the replicat and look at the details with the INFO option.

Code 6:


GGSCI (oel.acme.com) 7> info replicat rep, detail

REPLICAT   REP       Last Started 2014-04-21 14:06   Status RUNNING
INTEGRATED
Checkpoint Lag       00:00:00 (updated 00:00:03 ago)
Process ID           28410
Log Read Checkpoint  File ./dirdat/rt000000
                     2014-04-21 12:42:14.030503  RBA 6912167

INTEGRATED Replicat
DBLOGIN Provided, inbound server name is OGG$REP in ATTACHED state

Current Log BSN value: <NULL>

  Extract Source                          Begin             End

  ./dirdat/rt000000                       2014-04-21 12:42  2014-04-21 12:42
  ./dirdat/rt000000                       2014-04-21 12:42  2014-04-21 12:42
  ./dirdat/rt000000                       * Initialized *   2014-04-21 12:42
  ./dirdat/rt000000                       * Initialized *   2014-04-21 12:42
  ./dirdat/rt000000                       * Initialized *   First Record
  ./dirdat/rt000000                       * Initialized *   First Record

Current directory    /oracle/app/product/12.1.2/oggcore_1

Report file          /oracle/app/product/12.1.2/oggcore_1/dirrpt/REP.rpt
Parameter file       /oracle/app/product/12.1.2/oggcore_1/dirprm/REP.prm
Checkpoint file      /oracle/app/product/12.1.2/oggcore_1/dirchk/REP.cpr
Checkpoint table     ggate.checkpoint
Process file         /oracle/app/product/12.1.2/oggcore_1/dirpcs/REP.pcr
Error log            /oracle/app/product/12.1.2/oggcore_1/ggserr.log

From looking at the details of the replicat, you can see that it is now integrated and using the DBLOGIN that we provided earlier.

Enjoy!

twitter: @dbasolved

blog: http://dbasolved.com


Filed under: Golden Gate
Categories: DBA Blogs

Move from classic capture to integrated capture

DBASolved - Mon, 2014-04-21 11:50

Most Oracle Golden Gate installations, venture to say 80-90%, use the “Classic” capture architecture.  What I want to show in this post is how to switch from “Classic” capture to “Integrated” capture.

In the Oracle Golden Gate 12c documentation, the steps provided work but there are a few things that we need to be aware of when trying to switch to integrated capture mode.  The steps that are outlined here show you how to get around these missing steps.

Let’s get started!

With any replication environment, we want to identify where we are at within the replication cycle, i.e. what is the current transaction.  In code 1, we see how we can do this:

Code 1:


GGSCI (oel.acme.com) 2> send extract ext, showtrans

Sending SHOWTRANS request to EXTRACT EXT ...
No transactions found

Oldest redo log file necessary to restart Extract is:

Redo Log Sequence Number 150, RBA 194781712.

Notice that we have no pending transactions and that the Redo Log Sequence Number is 150 with an RBA of 194781712.  Now that we know where we are at with transactions, we need to ensure the correct permissions are associated with our GGATE user.

The documentation says to use DBLOGIN USERIDALIAS alias to log into the mining database.  In this environment, we are not using a mining database.  What we need to do is just make sure that the GGATE user has the right permissions.  This can be accomplished by using SQL*Plus or SQL Developer to grant permissions.  Image 1 shows how to grant the needed privileges for GGATE with the capture process.

Note: omitting the “capture” option will ensure permissions for both capture and apply processes.

Image 1:
image

With all the permissions set and knowing where we are with transactions we can now being to migrate the “Classic” extract to an “Integrated” extract.  Before we can migrate the extract; always make a backup of the dir* directories in the $GG_HOME.

Code 2:


[oracle@oel oggcore_1]$ zip gg_directories.zip ./dir*/*

Once the backup of the dir* is made; we can proceed by logging into the database from GGSCI.

Code 3:


GGSCI (oel.acme.com) 3> dblogin userid ggate, password ggate
Successfully logged into database.

Next, we need to stop the extract that we want to migrate to “Integrated”

Code 4:


GGSCI (oel.acme.com) 5> stop extract ext

Sending STOP request to EXTRACT EXT ...
Request processed.

Now, register that extract with the database.

Code 5:


GGSCI (oel.acme.com) 7> register extract ext database
Extract EXT successfully registered with database at SCN 26468050.

Before the upgrade we need to verify that the extract is ready to be upgraded. This is accomplished with the INFO command.

Code 6:


GGSCI (oel.acme.com) 9> info extract ext upgrade
ERROR: Extract EXT is not ready to be upgraded because recovery SCN 26468017 has not reached SCN 26468050.

Notice that we got an ERROR message.  This is because the extract is stopped and that the extract was registered with the database with SCN 26468050.  The SCN is currently at 26468017 and needs to be incremented to 26468050.  How can we do this if the extract is down?  It is real simple!  Start the extract.

Code 7:


GGSCI (oel.acme.com) 15> start extract ext

Sending START request to MANAGER ...
EXTRACT EXT starting

Once the extract has been successfully started, we need to stop the extract again.

Code 8:


GGSCI (oel.acme.com) 18> stop extract ext

Sending STOP request to EXTRACT EXT ...
Request processed.

Now, lets check to see if the extract is ready to upgrade.

Code 9:


GGSCI (oel.acme.com) 19> info extract ext upgrade
Extract EXT is ready to be upgraded to integrated capture.

Great!  Now the extract is ready to be upgraded.  Let’s upgrade it to an “Integrated” extract.

Code 10:


GGSCI (oel.acme.com) 20> alter extract ext upgrade integrated tranlog
Extract EXT successfully upgraded to integrated capture.

Now that the extract has been upgraded, we need to try and start the extract.

Code 11:


GGSCI (oel.acme.com) 21> start extract ext

Sending START request to MANAGER ...
EXTRACT EXT starting

Once the extract has started, we can see that it has stared and all the specific information related to the extract using the INFO command.

Code 12:


GGSCI (oel.acme.com) 25> info extract ext, detail

EXTRACT    EXT       Last Started 2014-04-21 12:42   Status RUNNING
Checkpoint Lag       00:00:05 (updated 00:00:05 ago)
Process ID           25943
Log Read Checkpoint  Oracle Integrated Redo Logs
                     2014-04-21 12:44:04
                     SCN 0.26486661 (26486661)

  Target Extract Trails:

  Trail Name                                       Seqno        RBA     Max MB Trail Type

  ./dirdat/lt                                          2       1449         50 EXTTRAIL

Integrated Extract outbound server first scn: 0.26468050 (26468050)

  Extract Source                          Begin             End

  Not Available                           2014-04-21 12:37  2014-04-21 12:44
  /oracle/app/oradata/bc11g/redo06_1.log  * Initialized *   2014-04-21 12:41
  /oracle/app/oradata/bc11g/redo06_1.log  2014-04-21 12:37  2014-04-21 12:41
  /oracle/app/oradata/bc11g/redo06_1.log  2014-04-15 11:09  2014-04-21 12:38
  /oracle/app/oradata/bc11g/redo06_1.log  2014-04-15 11:09  2014-04-15 11:09
  Not Available                           * Initialized *   2014-04-15 11:09

Current directory    /oracle/app/product/12.1.2/oggcore_1

Report file          /oracle/app/product/12.1.2/oggcore_1/dirrpt/EXT.rpt
Parameter file       /oracle/app/product/12.1.2/oggcore_1/dirprm/EXT.prm
Checkpoint file      /oracle/app/product/12.1.2/oggcore_1/dirchk/EXT.cpe
Process file         /oracle/app/product/12.1.2/oggcore_1/dirpcs/EXT.pce
Error log            /oracle/app/product/12.1.2/oggcore_1/ggserr.log

With the extract running in “Integrated” mode, we want to see if there are any errors in the GGSERR.log.  With the upgrade, there appears to be no real errors in the GGSERR.log; however, we will see two warnings.

OGG-01423 : references a default archive location
OGG-02045 : referring to streams_pool_size initialization parameter

These warning are interesting and bare more investigating; however, for now the extract has been upgraded to an “Integrated” extract.

Enjoy!

twitter: @dbasolved

blog: http://dbasolved.com


Filed under: Golden Gate
Categories: DBA Blogs

What Does oracle-rdbms-server-11gR2-preinstall Not Do?

Pythian Group - Mon, 2014-04-21 08:47

I was working on a project to clone Oracle install to a new Linux server and this should be simple as oracle-rdbms-server-11gR2-preinstall RPM can be used to configure the server, right?

So simple that I did not read the documentation.

However, I did review Requirements for Installing Oracle 11gR2 RDBMS on RHEL6 or OL6 64-bit (x86-64) (Doc ID 1441282.1) and it’s not quite the same.

From Oracle Database Quick Installation Guide 11g Release 2 (11.2) for Linux x86-64 the following packages are required:

binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

RPM oracle-rdbms-server-11gR2-preinstall was installed

$  rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | grep oracle-rdbms
oracle-rdbms-server-11gR2-preinstall-1.0-9.el6 (x86_64)

Health Check Validation Engine was run for 11g R2 (11.2.0) Preinstall (Linux)

$ ./rda.sh -T hcve
Processing HCVE tests ...
Available Pre-Installation Rule Sets:
   1.  Oracle Database 10g R1 (10.1.0) Preinstall (Linux)
   2.  Oracle Database 10g R2 (10.2.0) Preinstall (Linux)
   3.  Oracle Database 11g R1 (11.1) Preinstall (Linux)
   4.  Oracle Database 11g R2 (11.2.0) Preinstall (Linux)
   5.  Oracle Database 12c R1 (12.1.0) Preinstallation (Linux)

Enter the HCVE rule set number or 0 to cancel the test
Hit "Return" to accept the default (0)
> 4

Performing HCVE checks ...
Enter value for < Planned ORACLE_HOME location >
Hit "Return" to accept the default (/u01/app/oracle/product/11.2.0.4/dbhome_1)
>

Enter value for < JDK Home >
>

Test "Oracle Database 11g R2 (11.2.0) Preinstall (Linux)" executed at 18-Apr-2014 05:28:37

Test Results
~~~~~~~~~~~~

ID     NAME                 RESULT  VALUE
====== ==================== ======= ==========================================
A00010 OS Certified?        PASSED  Adequate
A00020 User in /etc/passwd? PASSED  userOK
A00040 Group in /etc/group? PASSED  GroupOK
A00050 Enter ORACLE_HOME    RECORD  /u01/app/oracle/product/11.2.0.4/dbho...
A00060 ORACLE_HOME Valid?   PASSED  OHexists
A00070 O_H Permissions OK?  PASSED  CorrectPerms
A00080 oraInventory Permiss PASSED  oraInventoryOK
A00090 Got Software Tools?  PASSED  ld_nm_ar_make_found
A00100 Umask Set to 022?    PASSED  UmaskOK
A00120 Limits Processes     PASSED  Adequate
A00125 Limits Stacksize     PASSED  Adequate
A00130 Limits Descriptors   PASSED  Adequate
A00140 LDLIBRARYPATH Unset? PASSED  UnSet
A00180 JAVA_HOME Unset?     PASSED  UnSet
A00190 Enter JDK Home       RECORD
A00200 JDK Version          FAILED  JDK home is missing
A00210 Other O_Hs in PATH?  PASSED  NoneFound
A00220 Other OUI Up?        PASSED  NoOtherOUI
A00230 Temp Adequate?       PASSED  TempSpaceOK
A00240 Disk Space OK?       PASSED  DiskSpaceOK
A00250 Swap (in MB)         RECORD  6143
A00260 RAM (in MB)          PASSED  3954
A00270 Swap OK?             PASSED  SwapToRamOK
A00280 Network              PASSED  Connected
A00290 IP Address           RECORD  NotFound
A00300 Domain Name          RECORD  NotFound
A00310 DNS Lookup           FAILED  Host not known
A00320 /etc/hosts Format    PASSED  Adequate IPv4 entry
A00330 Kernel Parameters OK PASSED  KernelOK
A00380 Tainted Kernel?      PASSED  NotVerifiable
A00400 ip_local_port_range  PASSED  RangeOK
A00480 OL4 RPMs OK?         SKIPPED NotOL4
A00490 OL5 RPMs OK?         SKIPPED NotOL5
A00500 OL6 RPMs OK?         FAILED  [compat-libstdc++-33(i686)] not insta...
A00530 RHEL4 RPMs OK?       SKIPPED NotRedHat
A00540 RHEL5 RPMs OK?       SKIPPED NotRedHat
A00550 RHEL6 RPMs OK?       SKIPPED NotRedHat
A00570 SLES10 RPMs OK?      SKIPPED NotSuSE
A00580 SLES11 RPMs OK?      SKIPPED NotSuSE
Result file: output/collect/DB_HCVE_A_DB11R2_lin_res.htm

Just a note as the following entries will fail validation for A00320 /etc/hosts Format

192.168.56.11  arrow arrow.localdomain

since the engine is looking for the format below:

192.168.56.11  arrow.localdomain arrow

A00500 OL6 RPMs OK? FAILED because the following RPMs were missing:

[compat-libstdc++-33(i686)] not installed
[glibc-devel(i686)] not installed
[libaio(i686)] not installed
[libaio-devel(i686)] not installed
[libstdc++(i686)] not installed
[libstdc++-devel(i686)] not installed

RPMs check failed since the 32-bit version were not installed:

# rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | egrep '^compat-libstdc++|glibc-devel|libaio|^libstdc++'|sort
compat-libstdc++-296-2.96-144.el6 (i686)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
glibc-devel-2.12-1.132.el6 (x86_64)
libaio-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6 (x86_64)
libstdc++-4.4.7-4.el6 (x86_64)
libstdc++-devel-4.4.7-4.el6 (x86_64)

Let’s install it.

# yum install compat-libstdc++-33
Loaded plugins: security
Setting up Install Process
Package compat-libstdc++-33-3.2.3-69.el6.x86_64 already installed and latest version
Nothing to do

Need to specific .i686. Learned something new here.

# yum install compat-libstdc++-33.i686
Loaded plugins: security
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package compat-libstdc++-33.i686 0:3.2.3-69.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

=====================================================================================================================================================
 Package                                  Arch                      Version                             Repository                              Size
=====================================================================================================================================================
Installing:
 compat-libstdc++-33                      i686                      3.2.3-69.el6                        public_ol6_latest                      188 k

Transaction Summary
=====================================================================================================================================================
Install       1 Package(s)

Total download size: 188 k
Installed size: 716 k
Is this ok [y/N]: y
Downloading Packages:
compat-libstdc++-33-3.2.3-69.el6.i686.rpm                                                                                     | 188 kB     00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : compat-libstdc++-33-3.2.3-69.el6.i686                                                                                             1/1
  Verifying  : compat-libstdc++-33-3.2.3-69.el6.i686                                                                                             1/1

Installed:
  compat-libstdc++-33.i686 0:3.2.3-69.el6

Complete!

Let’s verify the RPMs.

# rpm -qa --queryformat "%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n" | egrep '^compat-libstdc++|glibc-devel|libaio|^libstdc++'|sort
compat-libstdc++-296-2.96-144.el6 (i686)
compat-libstdc++-33-3.2.3-69.el6 (i686)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
glibc-devel-2.12-1.132.el6 (i686)
glibc-devel-2.12-1.132.el6 (x86_64)
libaio-0.3.107-10.el6 (i686)
libaio-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6 (i686)
libaio-devel-0.3.107-10.el6 (x86_64)
libstdc++-4.4.7-4.el6 (i686)
libstdc++-4.4.7-4.el6 (x86_64)
libstdc++-devel-4.4.7-4.el6 (i686)
libstdc++-devel-4.4.7-4.el6 (x86_64)

Let’s run RDA HCVE again.

[oracle@arrow:]/home/oracle/rda
$ ./rda.sh -T hcve
Processing HCVE tests ...
Available Pre-Installation Rule Sets:
   1.  Oracle Database 10g R1 (10.1.0) Preinstall (Linux)
   2.  Oracle Database 10g R2 (10.2.0) Preinstall (Linux)
   3.  Oracle Database 11g R1 (11.1) Preinstall (Linux)
   4.  Oracle Database 11g R2 (11.2.0) Preinstall (Linux)
   5.  Oracle Database 12c R1 (12.1.0) Preinstallation (Linux)

Enter the HCVE rule set number or 0 to cancel the test
Hit "Return" to accept the default (0)
> 4

Performing HCVE checks ...
Enter value for < Planned ORACLE_HOME location >
Hit "Return" to accept the default (/u01/app/oracle/product/11.2.0.4/dbhome_1)
>

Enter value for < JDK Home >
>

Test "Oracle Database 11g R2 (11.2.0) Preinstall (Linux)" executed at 18-Apr-2014 05:57:52

Test Results
~~~~~~~~~~~~

ID     NAME                 RESULT  VALUE
====== ==================== ======= ==========================================
A00010 OS Certified?        PASSED  Adequate
A00020 User in /etc/passwd? PASSED  userOK
A00040 Group in /etc/group? PASSED  GroupOK
A00050 Enter ORACLE_HOME    RECORD  /u01/app/oracle/product/11.2.0.4/dbho...
A00060 ORACLE_HOME Valid?   PASSED  OHexists
A00070 O_H Permissions OK?  PASSED  CorrectPerms
A00080 oraInventory Permiss PASSED  oraInventoryOK
A00090 Got Software Tools?  PASSED  ld_nm_ar_make_found
A00100 Umask Set to 022?    PASSED  UmaskOK
A00120 Limits Processes     PASSED  Adequate
A00125 Limits Stacksize     PASSED  Adequate
A00130 Limits Descriptors   PASSED  Adequate
A00140 LDLIBRARYPATH Unset? PASSED  UnSet
A00180 JAVA_HOME Unset?     PASSED  UnSet
A00190 Enter JDK Home       RECORD
A00200 JDK Version          FAILED  JDK home is missing
A00210 Other O_Hs in PATH?  PASSED  NoneFound
A00220 Other OUI Up?        PASSED  NoOtherOUI
A00230 Temp Adequate?       PASSED  TempSpaceOK
A00240 Disk Space OK?       PASSED  DiskSpaceOK
A00250 Swap (in MB)         RECORD  6143
A00260 RAM (in MB)          PASSED  3954
A00270 Swap OK?             PASSED  SwapToRamOK
A00280 Network              PASSED  Connected
A00290 IP Address           RECORD  NotFound
A00300 Domain Name          RECORD  NotFound
A00310 DNS Lookup           FAILED  Host not known
A00320 /etc/hosts Format    PASSED  Adequate IPv4 entry
A00330 Kernel Parameters OK PASSED  KernelOK
A00380 Tainted Kernel?      PASSED  NotVerifiable
A00400 ip_local_port_range  PASSED  RangeOK
A00480 OL4 RPMs OK?         SKIPPED NotOL4
A00490 OL5 RPMs OK?         SKIPPED NotOL5
A00500 OL6 RPMs OK?         PASSED  OL6rpmsOK
A00530 RHEL4 RPMs OK?       SKIPPED NotRedHat
A00540 RHEL5 RPMs OK?       SKIPPED NotRedHat
A00550 RHEL6 RPMs OK?       SKIPPED NotRedHat
A00570 SLES10 RPMs OK?      SKIPPED NotSuSE
A00580 SLES11 RPMs OK?      SKIPPED NotSuSE
Result file: output/collect/DB_HCVE_A_DB11R2_lin_res.htm

Does not edit of /etc/pam.d/login to include the following:

session required pam_limits.so

So what is the lesson learned? Trust, but verify. Alternatively, RTFM!

Categories: DBA Blogs

Oracle Linux 7 Beta 1 (fixed with CVE-2014-0160 with openssl-1.0.1e-23.0.1.el7)

Surachart Opun - Sat, 2014-04-19 23:35
Last post, I blog about Oracle Linux Beta 1 that I would like to learn more after it has changed to use Systemd targets. In this post, I just wanted to update for some people who have installed Oracle Linux 7 Beta 1 or have been testing it. On Oracle Linux Beta 1, that uses openssl version (openssl-1.0.1e-23.el7) and it's issue about CVE-2014-0160. Users can go Oracle Linux Early Access Downloads and download "openssl-1.0.1e-23.0.1.el7" to fix it.
Note: MOS note #1663998.1Version openssl-1.0.1e-23.0.1.el7  includes a fix backported from openssl-1.0.1gDownloaded openssl* packages and Updated.
[root@ol7beta ~]# rpm -qa |grep openssl
openssl-libs-1.0.1e-23.el7.x86_64
openssl-1.0.1e-23.el7.x86_64

[root@ol7beta ~]# lsof | awk 'NR==1 || 0-/libssl.so.1.0.1e/'
COMMAND     PID   TID    USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
firewalld   488          root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
gmain       488  1511    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507          root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
gmain       507   677    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   679    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   680    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   682    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
master     1661          root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
qmgr       1681       postfix  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794          root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16821    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16822    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16823    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16824    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16825    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16826    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16827    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16828    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16829    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16830    root  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
pickup    17190       postfix  mem       REG              252,1    438896  134650208 /usr/lib64/libssl.so.1.0.1e
[root@ol7beta ~]#
[root@ol7beta ~]#
[root@ol7beta ~]# grep libssl.so.1.0.1e /proc/*/maps | cut -d/ -f3 | sort -u | xargs -r ps uf
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root     16794  0.0  0.9 461652 16852 ?        Ssl  08:48   0:00 /usr/sbin/libvirtd
root      1661  0.0  0.1  89336  2152 ?        Ss   Apr15   0:00 /usr/libexec/postfix/master -w
postfix   1681  0.0  0.2  89504  3860 ?        S    Apr15   0:00  \_ qmgr -l -t unix -u
postfix  17190  0.0  0.2  89440  3832 ?        S    09:56   0:00  \_ pickup -l -t unix -u
root       507  0.0  0.8 547684 16044 ?        Ssl  Apr15   0:06 /usr/bin/python -Es /usr/sbin/tuned -l -P
root       488  0.0  1.1 325176 21052 ?        Ssl  Apr15   0:00 /usr/bin/python /usr/sbin/firewalld --nofork --nopid
[root@ol7beta ~]#
[root@ol7beta ~]# ls -l openssl-*
-rw-r--r--. 1 root root  718380 Apr 20  2014 openssl-1.0.1e-23.0.1.el7.x86_64.rpm
-rw-r--r--. 1 root root 1228140 Apr 20  2014 openssl-devel-1.0.1e-23.0.1.el7.x86_64.rpm
-rw-r--r--. 1 root root  923368 Apr 20  2014 openssl-libs-1.0.1e-23.0.1.el7.x86_64.rpm
[root@ol7beta ~]# rpm -Uvh openssl-*
error: Failed dependencies:
        krb5-devel(x86-64) is needed by openssl-devel-1:1.0.1e-23.0.1.el7.x86_64
        zlib-devel(x86-64) is needed by openssl-devel-1:1.0.1e-23.0.1.el7.x86_64
[root@ol7beta ~]# rpm -ivh /mnt/Packages/krb5-devel-1.11.3-31.el7.x86_64.rpm  /mnt/Packages/zlib-devel-1.2.7-10.el7.x86_64.rpm
error: Failed dependencies:
        keyutils-libs-devel is needed by krb5-devel-1.11.3-31.el7.x86_64
        libcom_err-devel is needed by krb5-devel-1.11.3-31.el7.x86_64
        libselinux-devel is needed by krb5-devel-1.11.3-31.el7.x86_64
        libverto-devel is needed by krb5-devel-1.11.3-31.el7.x86_64
[root@ol7beta ~]# ^C
[root@ol7beta ~]#
[root@ol7beta ~]# cat /etc/yum.
yum.conf     yum.repos.d/
[root@ol7beta ~]# cat /etc/yum.repos.d/iso.repo
[local]
name=Local CD Repo
baseurl=file:///mnt
gpgcheck=1
gpgkey=file:///mnt/RPM-GPG-KEY
[root@ol7beta ~]# df
Filesystem          1K-blocks    Used Available Use% Mounted on
/dev/mapper/ol-root  49747968 1071868  48676100   3% /
devtmpfs               886508       0    886508   0% /dev
tmpfs                  893876       0    893876   0% /dev/shm
tmpfs                  893876    2940    890936   1% /run
tmpfs                  893876       0    893876   0% /sys/fs/cgroup
/dev/sda1              487652   91380    366576  20% /boot
tmpfs                  893876       0    893876   0% /tmp
/dev/sr0              4673160 4673160         0 100% /mnt
[root@ol7beta ~]# yum install krb5-devel zlib-devel
Resolving Dependencies
--> Running transaction check
---> Package krb5-devel.x86_64 0:1.11.3-31.el7 will be installed
--> Processing Dependency: libverto-devel for package: krb5-devel-1.11.3-31.el7.x86_64
--> Processing Dependency: libselinux-devel for package: krb5-devel-1.11.3-31.el7.x86_64
--> Processing Dependency: libcom_err-devel for package: krb5-devel-1.11.3-31.el7.x86_64
--> Processing Dependency: keyutils-libs-devel for package: krb5-devel-1.11.3-31.el7.x86_64
---> Package zlib-devel.x86_64 0:1.2.7-10.el7 will be installed
--> Running transaction check
---> Package keyutils-libs-devel.x86_64 0:1.5.8-1.el7 will be installed
---> Package libcom_err-devel.x86_64 0:1.42.8-2.el7 will be installed
---> Package libselinux-devel.x86_64 0:2.1.13-21.el7 will be installed
--> Processing Dependency: libsepol-devel >= 2.1.9-1 for package: libselinux-devel-2.1.13-21.el7.x86_64
--> Processing Dependency: pkgconfig(libsepol) for package: libselinux-devel-2.1.13-21.el7.x86_64
---> Package libverto-devel.x86_64 0:0.2.5-2.el7 will be installed
--> Running transaction check
---> Package libsepol-devel.x86_64 0:2.1.9-1.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================================================
 Package                                         Arch                               Version                                     Repository                         Size
========================================================================================================================================================================
Installing:
 krb5-devel                                      x86_64                             1.11.3-31.el7                               local                             606 k
 zlib-devel                                      x86_64                             1.2.7-10.el7                                local                              49 k
Installing for dependencies:
 keyutils-libs-devel                             x86_64                             1.5.8-1.el7                                 local                              37 k
 libcom_err-devel                                x86_64                             1.42.8-2.el7                                local                              29 k
 libselinux-devel                                x86_64                             2.1.13-21.el7                               local                             168 k
 libsepol-devel                                  x86_64                             2.1.9-1.el7                                 local                              70 k
 libverto-devel                                  x86_64                             0.2.5-2.el7                                 local                              11 k
Transaction Summary
========================================================================================================================================================================
Install  2 Packages (+5 Dependent packages)
Total download size: 968 k
Installed size: 2.0 M
Is this ok [y/d/N]: y
Downloading packages:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                   3.5 MB/s | 968 kB     00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libcom_err-devel-1.42.8-2.el7.x86_64                                                                                                                 1/7
  Installing : libsepol-devel-2.1.9-1.el7.x86_64                                                                                                                    2/7
  Installing : libselinux-devel-2.1.13-21.el7.x86_64                                                                                                                3/7
  Installing : libverto-devel-0.2.5-2.el7.x86_64                                                                                                                    4/7
  Installing : keyutils-libs-devel-1.5.8-1.el7.x86_64                                                                                                               5/7
  Installing : krb5-devel-1.11.3-31.el7.x86_64                                                                                                                      6/7
  Installing : zlib-devel-1.2.7-10.el7.x86_64                                                                                                                       7/7
  Verifying  : zlib-devel-1.2.7-10.el7.x86_64                                                                                                                       1/7
  Verifying  : keyutils-libs-devel-1.5.8-1.el7.x86_64                                                                                                               2/7
  Verifying  : libverto-devel-0.2.5-2.el7.x86_64                                                                                                                    3/7
  Verifying  : libsepol-devel-2.1.9-1.el7.x86_64                                                                                                                    4/7
  Verifying  : libcom_err-devel-1.42.8-2.el7.x86_64                                                                                                                 5/7
  Verifying  : libselinux-devel-2.1.13-21.el7.x86_64                                                                                                                6/7
  Verifying  : krb5-devel-1.11.3-31.el7.x86_64                                                                                                                      7/7
Installed:
  krb5-devel.x86_64 0:1.11.3-31.el7                                                   zlib-devel.x86_64 0:1.2.7-10.el7
Dependency Installed:
  keyutils-libs-devel.x86_64 0:1.5.8-1.el7   libcom_err-devel.x86_64 0:1.42.8-2.el7   libselinux-devel.x86_64 0:2.1.13-21.el7   libsepol-devel.x86_64 0:2.1.9-1.el7
  libverto-devel.x86_64 0:0.2.5-2.el7
Complete!
[root@ol7beta ~]#
[root@ol7beta ~]# rpm -Uvh openssl-*
Preparing...                          ################################# [100%]
Updating / installing...
   1:openssl-libs-1:1.0.1e-23.0.1.el7 ################################# [ 20%]
   2:openssl-1:1.0.1e-23.0.1.el7      ################################# [ 40%]
   3:openssl-devel-1:1.0.1e-23.0.1.el7################################# [ 60%]
Cleaning up / removing...
   4:openssl-1:1.0.1e-23.el7          ################################# [ 80%]
   5:openssl-libs-1:1.0.1e-23.el7     ################################# [100%]
[root@ol7beta ~]# rpm -qa |grep openssl
openssl-1.0.1e-23.0.1.el7.x86_64
openssl-libs-1.0.1e-23.0.1.el7.x86_64
openssl-devel-1.0.1e-23.0.1.el7.x86_64

[root@ol7beta ~]#
After updating openssl, Services will need to be restarted. [root@ol7beta ~]#
[root@ol7beta ~]# grep libssl.so.1.0.1e /proc/*/maps | cut -d/ -f3 | sort -u | xargs -r ps uf
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root     16794  0.0  0.9 461652 16852 ?        Ssl  08:48   0:00 /usr/sbin/libvirtd
root      1661  0.0  0.1  89336  2152 ?        Ss   Apr15   0:00 /usr/libexec/postfix/master -w
postfix   1681  0.0  0.2  89504  3860 ?        S    Apr15   0:00  \_ qmgr -l -t unix -u
postfix  17190  0.0  0.2  89440  3832 ?        S    09:56   0:00  \_ pickup -l -t unix -u
root       507  0.0  0.8 547684 16044 ?        Ssl  Apr15   0:06 /usr/bin/python -Es /usr/sbin/tuned -l -P
root       488  0.0  1.1 325176 21052 ?        Ssl  Apr15   0:00 /usr/bin/python /usr/sbin/firewalld --nofork --nopid
[root@ol7beta ~]# lsof | awk 'NR==1 || 0-/libssl.so.1.0.1e/'
COMMAND     PID   TID    USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
firewalld   488          root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
gmain       488  1511    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507          root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
gmain       507   677    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   679    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   680    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
tuned       507   682    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
master     1661          root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
qmgr       1681       postfix  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794          root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16821    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16822    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16823    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16824    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16825    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16826    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16827    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16828    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16829    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
libvirtd  16794 16830    root  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e
pickup    17190       postfix  DEL       REG              252,1            134650208 /usr/lib64/libssl.so.1.0.1e

[root@ol7beta ~]# systemctl restart postfix
[root@ol7beta ~]#
[root@ol7beta ~]#  systemctl restart firewalld
[root@ol7beta ~]#
[root@ol7beta ~]# systemctl restart libvirtd
[root@ol7beta ~]# systemctl restart tuned
[root@ol7beta ~]#
[root@ol7beta ~]#
[root@ol7beta ~]#
[root@ol7beta ~]# lsof | awk 'NR==1 || 0-/libssl.so.1.0.1e/'
COMMAND     PID   TID    USER   FD      TYPE             DEVICE  SIZE/OFF       NODE NAME
master    17390          root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
pickup    17391       postfix  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
qmgr      17392       postfix  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
firewalld 17481          root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
gmain     17481 17919    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035          root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18036    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18037    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18038    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18039    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18040    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18041    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18042    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18043    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18044    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
libvirtd  18035 18045    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
tuned     18162          root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
gmain     18162 18165    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
tuned     18162 18166    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
tuned     18162 18167    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
tuned     18162 18168    root  mem       REG              252,1    438904  134650204 /usr/lib64/libssl.so.1.0.1e
[root@ol7beta ~]# grep libssl.so.1.0.1e /proc/*/maps | cut -d/ -f3 | sort -u | xargs -r ps uf
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root     18162  0.4  0.8 547684 16000 ?        Ssl  10:13   0:00 /usr/bin/python -Es /usr/sbin/tuned -l -P
root     18035  0.3  0.9 461652 16852 ?        Ssl  10:13   0:00 /usr/sbin/libvirtd
root     17481  0.8  1.1 325376 21140 ?        Ssl  10:12   0:00 /usr/bin/python /usr/sbin/firewalld --nofork --nopid
root     17390  0.0  0.1  89336  2044 ?        Ss   10:11   0:00 /usr/libexec/postfix/master -w
postfix  17391  0.0  0.2  89440  3828 ?        S    10:11   0:00  \_ pickup -l -t unix -u
postfix  17392  0.0  0.2  89504  3852 ?        S    10:11   0:00  \_ qmgr -l -t unix -u
[root@ol7beta ~]#My test virtualbox - OL7 beta1, it's all right for openssl.

Reference: 
MOS note #1663998.1
Oracle Linux Early Access DownloadsWritten By: Surachart Opun http://surachartopun.com
Categories: DBA Blogs

missing my local conference makes me a little grumpy

Grumpy old DBA - Fri, 2014-04-18 18:11
Our big event here is a 2 1/2 day conference ( Great Lakes Oracle Conference aka GLOC ) is coming up soon in mid May and I am going to miss the first two days of it.  Not happy exactly but I do have a reasonable excuse.

My oldest daughter finishes her sophomore year at college ( Fordham in NYC ) and needs to get picked up ( and dorm room packed up ) and carted back home to Ohio.  So it is drive there sunday ... pick her up Monday and pack ... drive back Tuesday ...

I should probably be able to make the networking event Tuesday night ( well traffic permitting ) but will miss the main activities that day as well as the workshops on Monday.

I should at least be onsite to attend Wednesday and introduce Steven Feuerstein.

All the colleges tend to sometimes break or end college years at rougly same times we get to use Cleveland State for the conference that week because they are finished while Fordham has the last two days of final exams Monday and Tuesday.  My wife and my mother in law did the trip last year to get my daughter so only fair that this is my year.

Still however makes me a little grumpy ... no surprises right?
Categories: DBA Blogs

LogDump and Understanding header information in Oracle GoldenGate Trail Files

DBASolved - Thu, 2014-04-17 08:30

Replication of data is always a fun thing to look at; What is replicating?!  Discussions around, How do I get data from server/database A to server/database B or even to server/database C are valid questions and are often asked by management.  Often the simple (knee jerk) answer is, just set it up and start replicating.  Although Oracle GoldenGate may be simple (for some architectures) to meet the demands of management and the task at hand, problems will arise with the data being replicated.

when problems arise, the need to identify and resolve the replication issue becomes a critical and time consuming task.  Oracle GoldenGate provides a few utility to help in diagnosing and resolving replication issues.  One such utility is the LogDump utility.  The LogDump utility is used to read the local and remote trail files that are used to support the continuous extraction and replication of transaction changes within the database.

Knowing what trail files are used for is part of the battle when troubleshooting replication issues with Oracle GoldenGate.  How do we use LogDump to read these trail files?  What are we looking for or at in a trail file to understand what is gong on?  To answer these questions, we need to start the LogDump utility.

To start LogDump, we just need to be in the OGG_HOME and run the LogDump command.  The below code set shows you how to run LogDump.


[oracle@oel oggcore_1]$ pwd
/oracle/app/product/12.1.2/oggcore_1
[oracle@oel oggcore_1]$ ./logdump

Oracle GoldenGate Log File Dump Utility for Oracle
Version 12.1.2.0.0 17185003 17451407

Copyright (C) 1995, 2013, Oracle and/or its affiliates. All rights reserved.

 

Logdump 22 >

Note: Your LogDump session should start at 1 not 22 (Logdump 22).  LogDump remembers session info until you log out of the server.

Once LogDump has been started, we need to open a trail file and setup how we want the information to be displayed.  Commands for LogDump can be displayed by using the “help” command.  In the following code block, we see that we are opening a local trail (lt) file and setting a few environment options.

Note: Trail files (local and remote) normally are pre-fixed with two (2) letters followed by a six ( 6 ) digit string.  In new environments trail files will start with (prefix)000000 (lt000000 or rt000000).


Logdump 15 >open ./dirdat/lt000000
Current LogTrail is /oracle/app/product/12.1.2/oggcore_1/dirdat/lt000000
Logdump 16 >ghdr on
Logdump 17 >detail on
Logdump 18 >detail data
Logdump 19 >usertoken on
Logdump 20 >

The “help” command inside of LogDump provides more options.  The options that we are using in this example are:

  • ghdr on =  toggle header display on | off
  • detail on = toggle detailed data display (on | off | data)
  • detail data =  toggle detailed data display (on | off | data)  (repeated this just to make sure)
  • usertoken on = show user token information (on | off| detail)

With the LogDump environment set, we can now use the “next (n)” command to see the information in the trail file.


Logdump 20 > n

Once the header output is displayed, we need to understand how to read this information.  Image 1 provides us with a quick explanation of each major component within a trial file transaction.  We can see the following items for a transaction in trail file (lt000000):

  • Header Area: Transaction information
  • Data/Time and type of transaction
  • Object associated with the transaction
  • Image of transaction (before/after)
  • Columns associated with the transaction
  • Transaction data formatted in Hex
  • Length of the record
  • ASCII  format of the data
  • Record position within the trail file (RBA)

Image 1: Header Informationimage

At this point, we maybe asking: Why is this important?  Understanding the trail files and how to find information within the trail files is an important part of troubleshooting the Oracle GoldenGate environment.

Example: If a replicat abends and we need to start the replicat from a given RBA. Being able to identify the first, next  and last RBA in the trail file is helpful in understanding why the abend happened and identifying a starting point to restarting successfully.

In the end, the Oracle GoldenGate environment can be simple yet complex at the same time. Understanding the different components of the environment is very useful and worth the time involved to learn it.

Enjoy!

twitter: @dbasolved

blog: http://dbasolved.com


Filed under: Golden Gate
Categories: DBA Blogs