Oracle – Free DevOps Massive Open Online Course (MOOC)

Hey!
Just passing by to let you know that Oracle is organizing a free Massive Open Online Course to cover DevOps topics.

6509529_orig

The course will be delivered over three weeks from 13 January to 3 February. 

The discussed topics are:

• What is DevOps ?
• Test-Driven Development (TDD) Using Python or Java
• Agile and Project Management Using Oracle Developer Cloud Service
• Continuous Integration and Continuous Deployment Using Oracle Developer Cloud Service

You can enroll to the course by clicking here.

Enjoy!

GrepOra.com in 2016…

Hello!
Today’s post is to share with you some information about what 2016 represented for GrepOra.com.

In 2016, the first official year of GrepOra.com, we had over 26,000 accesses from more than 160 different countries. Indeed, almost every country in the world was in GrepOra.com this year. And this is spectacular considering we discuss very specific topics about Oracle Database and Applications.

The accesses are still growing every day, which show us we can expect even bigger numbers to celebrate in 2017. See below our monthly accesses graph of 2016.

aaeaaqaaaaaaaahvaaaajdflntlly2m0lwixnmetndrlnc04yzk1lwzmnmvimgezzgmwyw

See below our accessing map of 2016.

AAEAAQAAAAAAAAjdAAAAJGIyZmQ1NmY4LWJjYjAtNGIwYS04N2I4LWYzMzE0ZjI3MDA0Yg.png

Besides that, some accomplishments make us even prouder, like being recognized by OTN LA (Oracle Technology Network – Latin America) as a technical reference blog in Database Management and Performance category.

Since this recognition in June, we have the OTN LA logo in our blog page. Also since August, we have the GUOB logo, once I participated in last GUOB Tech Day as Official Blogger.

aaeaaqaaaaaaaafyaaaajduznda0zgjjlwjmy2itndi1ns1hmtkzltnmnzq3nzy2mjazyg

All this, however, was not achieved only by having the blog. Since the beginning we organized the weekly posting schedule and the author’s pages. The consistency prove itself by our monthly access growth. The organization and commitment to keep posting relevant content is what led us to this point.

Notwithstanding those numbers, recognitions, networking, self improvement in technical skills, writing and mindset changing, there is a rewarding feeling of giving back to community a little bit we took. Since I started as DBA, I sometimes used independent blogs and references in the most critical and desperate moments. This way, nothing is better than feeling useful for someone else. Don’t you think?

Be sure we are preparing lots of news and even more quality content in GrepOra.com for next year.

Thank you all and have a great New Year!

Matheus.

SYSTEMSTATE DUMP

Hi guys!
I already posted about Hang Analyze (part1, part2) and ASHDUMP. Now, in the same ‘package’, let me show you about SYSTEMSTATE DUMP.

Systemstate is basically made by the process state for all process in instance (or instances) at the time the systemstate is called.
Through a systemstate it’s possible to identify enqeues, rowcache locks, mutexes, library cache pins and locks, latch free situations, and other kind of chains.

It’s a good tool to add in a SR, but it’s quite hard to habituate on reading/interpreting the file. To undertand exactly how to read a systemstate I’d recommend you the best: Read the manual!
The doc Reading and Understanding Systemstate Dumps (Doc ID 423153.1) has a very good explanation with examples, I’m not able to to it better. 🙂

What I can do is share about the SYSTEMSTATE levels. I had some difficult to find it…
But before I show how you can do it, it’s important to mention that Oracle does not recommend you to use ‘numeric events’ without a SR (MOS), according to Note: 75713.1.

More“SYSTEMSTATE DUMP”

Auto start GoldenGate

How to autostart GoldenGate services after system startup?

On Linux: /etc/rc.local

#Auto start GoldenGate 
su - oracle -c "/oracle/goldengate/./ggsci paramfile startGG.obey"

On GoldenGate ggsci path, create follow file:

cd /oracle/goldengate/
echo "start mgr" > startGG.obey
./ggsci
GGSCI  1> edit params mgr
--Startup  MGR
AUTOSTART er *
AUTORESTART er *,RETRIES 5,WAITMINUTES 5,RESETMINUTES 30

Maiquel.

ASHDUMP for Instance Crash/Hang ‘Post Mortem’ Analysis

Hi guys!
In the last weeks I talked about ASHDUMP in the post HANGANALYZE Part 1. Let’s think about it now…

Imagine the situation: The database is hanging, you cannot find what is going on and decided to restart the database OR your leader/boss yelled to you do it so, OR you know the database is going do get down, anyway…
Everyone has passed by this kind of situation at least once. After restart everything become OK and the ‘problem’ was solved. But now you are being asked about RCA (what caused this situation?). The database was hanging, so no snap was closed and you lost the ASH info…

For this cases I think is very useful to take 1 minute before database get down to generate an ASHDUMP. It’s very simple:

More“ASHDUMP for Instance Crash/Hang ‘Post Mortem’ Analysis”

Merry Christmas!

We wish you a Merry Christmas!

Please, copy and paste on any sqlplus window. This is your gift for today:

set heading off;
set pages 5000;
SELECT DECODE(SIGN(FLOOR(maxwidth / 2) - ROWNUM),
              1,
              LPAD(' ', FLOOR(maxwidth / 2) - (ROWNUM - 1)) ||
              RPAD('*', 2 * (ROWNUM - 1) + 1, ' *'),
              LPAD('* * *', FLOOR(maxwidth / 2) + 3))
  FROM all_objects, (SELECT 40 AS maxwidth FROM DUAL)
 WHERE ROWNUM < FLOOR(maxwidth / 2) + 5
union all select '|GrepOra Team Wishes You a Merry Christmas!' from dual;

Surprise!

newscreenshot-2016-12-24-as-16-24-08

Enjoy!

GoldenGate: Replicate data from SQLServer to TERADATA – Part 2

This steps should still be performed in SQLserver Host:

The pump process configuration is very simple, its only function is to transport the trail files to destination.

ADD extract P_MSQL, exttrailsource ./dirdat/tr

C:\goldengate> edit param P_MSQL

extract P_MSQL
SOURCEDB db0sql1, USERID ggate, PASSWORD ??????
CACHEMGR CACHESIZE 2GB
rmthost teradata1.net, mgrport 8809
rmttrail ./dirdat/td

--TABLE MAP
TABLE dbo.DLOG_ERRORS;
TABLE dbo.SAC_DATA;
TABLE dbo.SAC_LIST;
TABLE dbo.SAC_TITLE;

Still in the SQLserver Host, is need to create a definition file, wich will be used in gg-teradata.
First, create a “tables.def” file that should contain a dblogin and tables that will be replicated.

defsfile tables_sqlserver.sql purge 
SOURCEDB db0sql1, 
USERID ggate, PASSWORD ?????? 
TABLE dbo.DLOG_ERRORS; 
TABLE dbo.SAC_DATA; 
TABLE dbo.SAC_LIST; 
TABLE dbo.SAC_TITLE;

More“GoldenGate: Replicate data from SQLServer to TERADATA – Part 2”

HANGANALYZE Part 2

Hi!
See the first part of this post here: HANGANALIZE Part 1.

This post is just complement with a little kludge I liked…
First, let’s remmember that the hanganalyze is used when you are if some hanging in your environment, of course.

But what if you are having difficult to access the database, even with ‘/ as sysdba’?

You can create a ‘preliminary connection’ without create a session, like this:

sqlplus -prelim / as sysdba

This ‘feature’ is available since Oracle 10g, and it basically skips a session creation part (which could block) when logging on as SYSDBA.

More“HANGANALYZE Part 2”

ODI – Import(ANT) Modes

Oracle introduce in Data Integrator 12c an spectacular way to avoid object duplication (10g/11g users will bad remember)

With “Global ID”, ODI repository will generate special HASH to each object created on the repository (sometimes it will be updated).

This internal ID should be available on “Version” tab as below:important_modes

So, why this global id makes sense?

According oracle docs, “read carefully this section in order to determine the import mode you need.”

Changing ODI import modes, will be able to import/customize duplicated objects, generated by devops scripts.

Let’s understand the Import Modes:

More“ODI – Import(ANT) Modes”