Reading List – 2018

I don’t normally do New Year Resolutions, but during the Christmas break I was reading numerous articles on LinkedIn, I’ve always enjoyed Linkedin, with it’s career connections and articles. However, I also realized how much wasted time I spent on Facebook and Twitter, so because it’s that time of year, I am calling this my “New Year’s Resolution”: Spend more time bettering myself and my career

First up, purchase a kindle and I got a great deal. I wasn’t looking for two kindles, but when I saw Amazon had a special deal, buy two kindles get $60 off, I couldn’t pass the opportunity to gain some bonus points with my wife. Her kindle is a few years old and only 6gb, so I was able to get two Kindle Fire HD 8’s for $99.

Create a list of books to read and afterwards write a review. I am sure this list will continue to grow, but for starters and in no particular order:

Hit Refresh, Microsoft CEO, Satya Nadella 

Business Adventures, John Brooks  

Mindset, Carol Dweck 

The Better Angels of Our Nature, Steven Pinker 

The Innovators, Walter Isaccson 

Hackers: Heroes of the Computer Revolution, Steven Levy 

The Four: The Hidden DNA of Amazon, Apple, Facebook, and Google, Scott Galloway

Not a book, but… Oracle E-Business Suite Architecture

Leave any book recommendations in the comments.

 

Determine what Linux Version

4 different commands that you can run to see information about your Linux distro.

[oracle@server ~]$ cat /etc/issue
Oracle Linux Server release 6.8

[oracle@server ~]$ cat /etc/*release
LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Oracle Linux Server release 6.8
NAME=”Oracle Linux Server”
VERSION=”6.8″
ID=”ol”
VERSION_ID=”6.8″
PRETTY_NAME=”Oracle Linux Server 6.8″
ANSI_COLOR=”0;31″
CPE_NAME=”cpe:/o:oracle:linux:6:8:server”
HOME_URL=”https://linux.oracle.com/”
BUG_REPORT_URL=”https://bugzilla.oracle.com/”

ORACLE_BUGZILLA_PRODUCT=”Oracle Linux 6″
ORACLE_BUGZILLA_PRODUCT_VERSION=6.8
ORACLE_SUPPORT_PRODUCT=”Oracle Linux”
ORACLE_SUPPORT_PRODUCT_VERSION=6.8
Red Hat Enterprise Linux Server release 6.8 (Santiago)
Oracle Linux Server release 6.8

Kernel Version commands
[oracle@server ~]$ uname -r
4.1.12-103.9.6.el6uek.x86_64

**Whether you are using 32 bit or 64 bit version… the x86_64 means a 64 bit kernel

[oracle@server ~]$ uname -a
Linux server 4.1.12-103.9.6.el6uek.x86_64 #2 SMP Wed Nov 15 18:03:27 PST 2017 x86_64 x86_64 x86_64 GNU/Linux

Create Data Guard standby using RMAN


Production server – serverProd
Standby server – serverStby
Production database – whseprod
Standby database – whsestby
Step 1: Using RMAN, Backup the database that includes backup of datafiles, archivelogs and controlfile for standby

[oracle@serverProd]$ rman target /
connected to target database: whseprod (DBID=123322)
RMAN> run {
allocate channel disk1 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
allocate channel disk2 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
allocate channel disk3 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
allocate channel disk4 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
allocate channel disk5 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
backup force  as BACKUPSET tag ‘%TAG’ database;
backup as BACKUPSET tag ‘%TAG’ archivelog;
release channel disk1;
release channel disk2;
release channel disk3;
release channel disk4;
release channel disk5;
}
RMAN> run {
allocate channel disk1 type disk format ‘/backup/whseprod_restore/%d%U’ maxpiecesize 5 G;
backup force  as BACKUPSET tag ‘%TAG’ current controlfile for standby;
release channel disk1;
}
Step 2: Move the backups to the standby server using ftp
               cd to directory that you want the files to go in on standby system
[oracle@serverStby ..]$ cd /backup/whseprod_restore
[oracle@serverStby /backup/whseprod_restore]$ ftp serverProd
ftp> bin
    ftp> prompt
change directory on the source system
                    ftp> cd /backup/whseprod_restore
                    ftp> mget *
                    ftp> quit

Step 3: Make proper changes in the parameter files of both primary and standby database
whseprod init file
DB_NAME=whseprod
DB_UNIQUE_NAME=whse
CONTROL_FILES=’/whseredo/oradata/control01.ctl’,’/whseredo/oradata/control02.ctl’,’/whseredo/oradata/control03.ctl’
LOG_ARCHIVE_DEST_1=’LOCATION=/whsearch/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES)’
alter system set FAL_CLIENT=whseprod scope=both;
alter system set FAL_SERVER=whsestby scope=both;
alter system set LOG_ARCHIVE_CONFIG=’DG_CONFIG=(whseprod, whsestby)’ scope=both;
alter system set log_archive_dest_2 =’SERVICE=whsestby LGWR ASYNC=40960 DB_UNIQUE_name=whsestby OPTIONAL REOPEN=120 MAX_FAILURE=120 NET_TIMEOUT=900′ scope=both;
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=both;
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=both;
alter system set STANDBY_FILE_MANAGEMENT=AUTO scope=both;
 whsestby init file
DB_NAME=whse
DB_UNIQUE_NAME=whsestby
CONTROL_FILES=’/whseredo/oradata/control01.ctl’,’/whseredo/oradata/control02.ctl’,’/whseredo/oradata/control03.ctl’
LOG_ARCHIVE_DEST_1=’LOCATION=/whsearch/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES)’
alter system set FAL_CLIENT=whsestby scope=both;
alter system set FAL_SERVER=whseprod scope=both;
alter system set LOG_ARCHIVE_CONFIG=’DG_CONFIG=(whseprod, whsestby)’ scope=both;
alter system set log_archive_dest_2 =’SERVICE=whseprod LGWR ASYNC=40960 DB_UNIQUE_name=whseprod OPTIONAL REOPEN=120 MAX_FAILURE=120 NET_TIMEOUT=900′ scope=both;
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=both;
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=both;
alter system set STANDBY_FILE_MANAGEMENT=AUTO scope=both;
Step 4: Do the restore and recover on standbydatabase
           serverStby> rman target /
          RMAN> startup nomount
          RMAN> restore standby controlfile from ‘/backup/whseprod_restore/c-1778-20171202-02’;
          serverStby>sqlplus as sysdba
          sql> alter database mount standby database;
          serverStby> rman target /
          RMAN> restore database
          Rman> list backup of archivelog all
***copied all of the archives that were created after the backup to the /whsearch/arch directory from the source
               cd to directory that you want the files to go in on standby system
[oracle@serverStby ..]$ cd /whsearch/arch
[oracle@serverStby /whsesarch/arch]$ ftp serverProd
ftp> bin
    ftp> prompt
change directory on the source system
                    ftp> cd /whsearch/arch
                    ftp> mget arch_111_2*
                    ftp> quit
          Rman> recover database
Step 5: Put the standby database in recover managed mode
        
        sql> alter database recover managed standby database disconnect from session;
Database altered.
Verify the Physical Standby Database Is Performing Properly
On the standby database, query the V$ARCHIVED_LOG view to identify existing files in
the archived redo log.
          sql> select sequence#, applied, to_char(first_time,’mm/dd/yy hh24:mi:ss’) first from v$archived_log order by first_time;
Step 6: Add standby redo logs
          sql>alter database recover managed standby database cancel;
sql>alter database add standby logfile group 15 ‘/whseredo/oradata/whse_sr15.log’ size 1048576000;
sql>alter database add standby logfile group 16 ‘/whseredo/oradata/whse_sr16.log’ size 1048576000;
sql>alter database add standby logfile group 17 ‘/whseredo/oradata/whse_sr17.log’ size 1048576000;
sql>alter database recover managed standby database disconnect from session;
Step 7: Add Data Guard Broker through OEM
                –make sure the standby’s are in oem
    –set preferred credentials by trying to log in through oem

      Click on primary database in OEM

      On Home Page ->availability->add standby database
      Choose third option Manage an Existing standby database with data guard broker and follow the on-screen instructions

2018’s list of goals

Many items peak my interest and that can sometimes make it difficult to choose a few that I would like to gain a deeper learning of, but I think my current role will guide me in 2018.

In no particular order:

SQL Server on Linux: This is a no brainer. As long as I can remember, I have preferred to work with command line over gui based tools. I’ve always felt like I have more control over what I am doing. And now that SQL Server is on Linux, I want to dig in and learn whatever I can. I think I also like the idea, that there aren’t a lot of SQL Server DBA’s that are familiar with Linux.

Cloud: I’ve played around in the cloud for years, but with little reason. Between Azure options and the Oracle Cloud, it’s time to start looking at the differences and see where each can help me.

Power BI: With Power BI Premium, I think this is a game changer for Corporate adoption.

Make it to PASS Summit: I’ve been to Oracle Open World 3 times, but do to job responsibilities or other co-workers training needs, I have unfortunately never made it to PASS. I don’t mind Open World, but more and more I can see PASS being more beneficial.

Oracle OEM details in PowerBI


Instead of filling out excel files with all of our Oracle database details, I decided to use Power BI to organize that information.
Prerequisites

  •  Must have Oracle client installed on computer
  • Must have a tnsnames.ora file to connect to Oracle database
  • Connecting to Oracle Database


The server entry is actually the entry in your tnsnames. Example below

Also fill in the select statement for the view that you want



In the next window choose database and then supply database credentials

A few of the OEM tables that I find interesting
mgmt.$hw_nic
mgmt.$jobs
mgmt.$os_hw_summary
mgmt.$target
mgmt.$target_properties

Oracle Open World and PASS Summit

A little less than a month ago I attended Oracle Open World in San Francisco. It’s been a few years since I last attended the conference. Although San Francisco seems to have changed the conference has stayed the same. Numerous days of sessions that are very informative. As I felt the last time I attended, many of the sessions seem like marketing sessions, this isn’t a bad thing, just different. I did really enjoy some sessions dealing with Oracle EBS, Oracle Cloud and DBA topics. One session “Navigating your DBA Career in the Oracle Cloud” by Craig Shallahamer from orapub.com was very eye opening. Enough so, that I have started to look more closely at my future.

PASS Summit is going on right now and unfortunately, I am not in attendance. However, thanks to PASSTV, I have been able to watch numerous days worth of keynotes and sessions. This is definitely a conference that I would like to attend in the future. I know a good amount of people that attend every year and love this conference.

Combination of Both Worlds

I just recently came back to my blog and noticed that my last post stated that I was going back to Oracle. I did, but the fit with that employer was not the best and I moved on to another company at the beginning of 2016. I couldn’t be happier with that move in 2016. I get to work with SQL Server and Oracle along with other software packages. Some items that I am working on or researching and would like to blog about in the future, Automic Scheduling software, SQL Server on Linux, Azure, Azure Analysis Services, Business Intelligence, Power BI, Oracle Data Guard, Oracle Cloud and other various items.

Going back to Oracle

I am thrilled to say that after 4 years of working with Microsoft SQL Server and the BI Tool Stack, I am going back to working with Oracle. I enjoyed working with Microsoft and getting to add another tool in my tool belt, but I am very excited about this new opportunity.

Hopefully this opportunity will lend itself to more blog posts.

Stay tuned for more details.

Remarkable Employees

I am not the original author of the eight qualities of remarkable employees below and unfortunately, I don’t know who wrote it, but it is something I believe that I am. So thank you to whomever the Author is.

Great employees are reliable, dependable, proactive, diligent, great leaders and great followers… they possess a wide range of easily-defined—but hard to find—qualities.
A few hit the next level. Some employees are remarkable, possessing qualities that may not appear on performance appraisals but nonetheless make a major impact on performance.

Here are eight qualities of remarkable employees:

1. They ignore job descriptions. The smaller the company, the more important it is that employees can think on their feet, adapt quickly to shifting priorities, and do whatever it takes, regardless of role or position, to get things done.

When a key customer’s project is in jeopardy, remarkable employees know without being told there’s a problem and jump in without being asked—even if it’s not their job.

2. They’re eccentric… The best employees are often a little different: quirky, sometimes irreverent, even delighted to be unusual. They seem slightly odd, but in a really good way. Unusual personalities shake things up, make work more fun, and transform a plain-vanilla group into a team with flair and flavor.

People who aren’t afraid to be different naturally stretch boundaries and challenge the status quo, and they often come up with the best ideas.

3. But they know when to dial it back. An unusual personality is a lot of fun… until it isn’t. When a major challenge pops up or a situation gets stressful, the best employees stop expressing their individuality and fit seamlessly into the team.

Remarkable employees know when to play and when to be serious; when to be irreverent and when to conform; and when to challenge and when to back off. It’s a tough balance to strike, but a rare few can walk that fine line with ease.

4. They publicly praise… Praise from a boss feels good. Praise from a peer feels awesome, especially when you look up to that person.

Remarkable employees recognize the contributions of others, especially in group settings where the impact of their words is even greater.

5. And they privately complain. We all want employees to bring issues forward, but some problems are better handled in private. Great employees often get more latitude to bring up controversial subjects in a group setting because their performance allows greater freedom.

Remarkable employees come to you before or after a meeting to discuss a sensitive issue, knowing that bringing it up in a group setting could set off a firestorm.

6. They speak when others won’t. Some employees are hesitant to speak up in meetings. Some are even hesitant to speak up privately.

An employee once asked me a question about potential layoffs. After the meeting I said to him, “Why did you ask about that? You already know what’s going on.” He said, “I do, but a lot of other people don’t, and they’re afraid to ask. I thought it would help if they heard the answer from you.”

Remarkable employees have an innate feel for the issues and concerns of those around them, and step up to ask questions or raise important issues when others hesitate.

7. They like to prove others wrong. Self-motivation often springs from a desire to show that doubters are wrong. The kid without a college degree or the woman who was told she didn’t have leadership potential often possess a burning desire to prove other people wrong.

Education, intelligence, talent, and skill are important, but drive is critical. Remarkable employees are driven by something deeper and more personal than just the desire to do a good job.

8. They’re always fiddling. Some people are rarely satisfied (I mean that in a good way) and are constantly tinkering with something: Reworking a timeline, adjusting a process, tweaking a workflow.

Great employees follow processes. Remarkable employees find ways to make those processes even better, not only because they are expected to… but because they just can’t help it.

———————————-
One of my favorite quotes… from Steve Jobs

“Here’s to the crazy ones. The misfits. The rebels. The troublemakers. The round pegs in the square holes. The ones who see things differently. They’re not fond of rules. And they have no respect for the status quo. You can quote them, disagree with them, glorify or vilify them. About the only thing you can’t do is ignore them. Because they change things. They push the human race forward. And while some may see them as the crazy ones, we see genius. Because the people who are crazy enough to think they can change the world, are the ones who do.”

Youtube video of the commercial
https://www.youtube.com/watch?v=TM8GiNGcXuM

Losing Statistics

In a world where data is king, why do we as Business Intelligence Developers not capture our own data. For instance, when we send reports out by email, we lose any kind of insight we may have on our reports. Who is looking at them, how often, what are peak times? This can make it very difficult for down times and notifications if there are any issues.

We also make some items available through Tableau, but unless you deep dive in to their PostGres database, you only see the last time someone logged on to the system. Then there’s Sharepoint. I’ll admit, I don’t know a lot about whether you can get this level of detail from Sharepoint, but I would be happy to assume that you can get a lot more than by only attaching reports to emails.

We need a better plan.