Replacement of environment variables or properties in Bash

Earlier I wrote about the automatic installation of Fusion Middleware components using response files. A thing that lacked in my scripts was that although I had a FMW_HOME variable set in my enviroment shell script, the response files had the location hard coded in them. At the time I hadn't had the chance to figure out how to do property/variable replacement in shell. I do know how to do it with ANT. But I figured (more...)

Installing a 12.1.0.5 agent on a Linux 5.x platform from a 13.1 OMS

Is that enough version numbers for you? 🙂

The issue this post will address (very briefly because it’s the week before OOW2016 and life is crazy!) is this. If you are running a 13.1 version of the OMS, and you try to push a 12.1.0.5 agent to a Linux box that’s running some version of 5.x (such as RHEL5 or OL5), you will get an error message saying you are (more...)

Microsoft SQL Server under Linux – Preview

Today something off topic, as I am normally blogging about Oracle Fusion Middleware stuff.

Microsoft SQL Server under Linux - Preview ... many of you (specially the Oracle Guys) might think now "WHAT ????", but its really true.
Some months ago Microsoft announced that they will release a SQL Server Version for Linux and I was lucky to get into the Preview Program.

The installation of the SQL Server under Linux (currently supported under Ubuntu 16 (more...)

How many memory is truly used by my Oracle instance?

There are many posts about the amount of memory that is taken by the Oracle database executables and the database SGA and PGA. The reason for adding yet another one on this topic is a question I recently gotten, and the complexities which surrounds memory usage on modern systems. The intention for this blogpost is to show a tiny bit about page sharing of linux for private pages, then move on to shared pages, and (more...)

Virtual Development Server: Provide Docker images in docker registry for Oracle XE Database and others

For later creation of containers as needed in the deployment process we have first to build docker images whenever we do not find suitable one in docker hub.

For most of my development I need a oracle database. On the internet you can find a lot of Dockerfile’s for this, but no ready image. This is because for running a database you have to accept a license and this happens when you download the installation (more...)

Little things worth knowing: using Remote Diagnostic Agent more effectively with profiles

RDA, or the Remote Diagnostics Agent, has been around for a little while. Over the time, and with the growing number of Oracle’s acquisitions it has become, shall we say, a little more difficult to handle. It appears to me as if every one of them will have its diagnostics handled by RDA making it hard to focus on something specific, like for example the database.

I won’t go into very detail of the Remote (more...)

Mount NTFS disk in Linux 7

Today I wanted to pass an old disk in a usb-case to my son. It was from an old Windows Laptop and even though I'm administrator, I wasn't able to read the documents in an other user's folder.

So I thought, let's do it from an Oracle Linux 7 VM, as root. But it turns out that Oracle linux did not support NTFS by default.

But with the trick in this link I managed to (more...)

Building “Ready to Deploy” Oracle VM Templates

I’ve been playing a bit lately with Oracle VM on a few different platforms (ODA, Exalytics, Private Cloud Appliance) and was tasked with creating a good Oracle VM template image for Oracle Linux 7. Oracle makes templates available on eDelivery (https://edelivery.oracle.com) that present you with VM configuration questions on first boot, but those VM templates have a few limitations that make them hard to use:

  1. The templates have a minimal Linux installation, and are (more...)

How To Poke Around OBIEE on Linux with strace (Working with Unsupported ODBC Sources in OBIEE 12c)

OBIEE 12c (and 11g and 10g before it) supports three primary ways of connecting to data sources:

  1. Native Gateway, such as OCI for Oracle. This is always the preferred option as it gives the greatest support and performance.
  2. Data Direct ODBC Drivers, a set of which are bundled with OBIEE for enabling connectivity to sources such as SQL Server, MySQL, Hive, and Impala. The configuration of these is documented in the OBIEE manuals (more...)

Virtual Development Server: Add swapfile to VirtualBox as requirement for installing Oracle or build Oracle docker images

As I want later build Oracle docker images, some of this need a swapfile.

Per default my used Vagrantbox, does not have one, so later steps will fail.

As in the last blog I use a Vagrant shell provider.

...
  # add swapfile to the box
  config.vm.provision :shell, :path => "add_swap.sh"
...

This calls the script add_swap.sh in the created VirtualBox machine.
Make sure, that you create your swapfile on a supported (more...)

rlwrap – there’s a rpm for that

Recently, there has been discussion about using rlwrap for Goldengate on Twitter feed.

Truthfully, I did not know there was RPM for this and I did not even know it was already installed.

It just worked, when I had set it up.

A very nice cheat sheet for using yum.

Yum Command Cheat Sheet for Red Hat Enterprise Linux

I started to investigate how was rlwrap installed on the system.

OS Version.

$ cat /etc/issue
 (more...)

The rlwrap utility for DBA.

I spend most of my time as a DBA in linux terminal and sqlplus. Everybody who works with oracle sqlplus knows about its power, but also about its limitations. For many years I have used the rlwrap utility developed by Hans Lub. It gives me command history, and the ability to edit my SQL Plus commands, and use auto completion if I set it up. In this post I will share some tips about installation (more...)

Quick note on using nc (netcat)

Due to security hardening, telnet is not available.

$ rpm -q --whatprovides nc
nc-1.84-24.el6.x86_64

$ yum list nc
Loaded plugins: refresh-packagekit, security
epel/metalink                                                                                                           |  11 kB     00:00
epel                                                                                                                    | 4.3 kB     00:00
epel/primary_db                                                                                                         | 5.9 MB     00:03
public_ol6_UEKR3_latest                                                                                                 | 1.2 kB     00:00
public_ol6_latest                                                                                                       | 1.4 kB     00:00
Installed Packages
nc.x86_64                                                    1.84-24.el6                                                     @public_ol6_latest

$ nc -v -z -w 3 stackoverflow.com 80; echo $?
Connection to stackoverflow.com 80 port [tcp/http] succeeded!
0

Virtual Development Server: Add enough ram and disk space to VirtualBox for further server components

As I want later build docker images and run docker containers I have to provide enough disk space for this.

Per default the Vagrantboxes have vmdk disks, these have a static size and are to small for my purposes.

Therefore I convert the disk, which comes with the box, via Vagrant VirtualBox provider from vmdk to vdi, so that it allocate only the used disk space in the host system.
Additional I add a second (more...)

Virtual Development Server: Creating Virtualbox machine including docker containers with Vagrant

As I want to decouple my development server from my computer as much as possible I want to create first a virtual machine with linux.

Because I have used Oracle Virtualbox in the past successfully, I will use it here too.

As I want have later a reproducible environment via Infrastructure as code, I give Vagrant a try for this. As source code management system I use GIT, my remote repository is located at CloudForge.

(more...)

Redirecting ILOM Console Via SSH Tunneling With Putty

While preparing for a virtualized Exalytics upgrade, I was testing the various connection methods that would be needed.  Last on the list was to validate that I could connect to the ILOM’s web interface, launch the java console, and mount an ISO file from my laptop to the machine.   This is necessary because the Oracle VM server upgrade for a virtualized Exalytics requires you to boot from a specific ISO file in order to patch (more...)

A total unattended install of linux and the Oracle database.

This is a blogpost about how I setup my test virtual machines. The seasoned sysadmin and DBA will notice that the techniques used here are perfectly usable for real production environments. The most important thing is there is no need to download or stage any software for installing the virtual machine, everything is downloaded when needed during installation. Obviously this works best when you have got reasonable bandwidth available for connecting to the internet.

The (more...)

OSWatcher integration in Trace File Analyzer (TFA)

Some time ago I wrote a post about using OSWatcher for system analysis. Neil Chandler (@ChandlerDBA) rightfully pointed out that although OSWatcher was cool, TFA was the way to go. TFA can include OSWatcher, but more importantly it adds a lot of value over and above what OSWatcher does.

I guess it depends on what you want to do-I still think that OSWatcher is a good starting point and enough for most problems on single (more...)

Preventing a SPOF with CMAN 12c

I have already written about the use of Connection Manager 11.2 to govern access to a database. While researching this piece I have updated the original post so that it’s relevant for 12c as well.

Although the idea of using Connection Manager is tempting, the obvious first question is about high availability of the process. After all, if the gatekeeper to your database environment fails, you are effectively closed for business. One option would (more...)

Investigating kernel dives using ftrace.

This blogpost is about using the linux ftrace kernel facility. If you are familiar with ftrace and specifically the function_graph tracer, you might already be aware of this functionality. This is Linux specific, and this facility is at least available in kernel 2.6.39 (Oracle’s UEK2 kernel).

What is a ‘kernel dive’? Whenever a process is running, it should mostly be in ‘user mode’, executing the program it is supposed to run. However, during (more...)