Changing the Hostname and IP Address on a CentOS server and re-configuring Oracle and ORDS

I use VirtualBox quite a lot. Rather than going through the rigmarole of installing the software I need every time I want a new environment, I simply clone the VM I’ve already installed everything on.
One drawback with this approach is that, because I’ve already configured the network settings on this baseline VM, I can’t run two clones concurrently as they both have the same hostname and IP address.

What I’ll be covering here is :

The approach I’ve taken is to execute each step on the command line without the need for any interactive input. Therefore, it’s possible to take the steps described here as building blocks for a bash script (or scripts) to accomplish these tasks.
The exception is where I edit the contents of files. If you wanted to automate this, you can use something like…

sed -i s/192.168.56.220/192.168.56.225/g file_to_edit

…for the IP address and…

sed -i s/frea./rincewind./g file_to_edit

…for the hostname where file_to_edit is the file you want to change.

If you’ve found your way here in search of simply changing the hostname and/or the IP address on a CentOS7 server, then you can just skip all the database related stuff and start right here.

By the way, I’ve decided upon a new naming convention for my servers which makes use of Discworld characters. There may be the odd reference to this in what follows…

Continue reading

Installing and Configuring Oracle 18cXE on CentOS

After seven years, the much anticipated Oracle 18c Express Edition (XE) has finally seen the light of day.
Reaction to the new version can be summed up as…

It’s the Dog’s Wotsits !

Gerald Venzl, the person we have to thank for this new and vastly improved version of XE, has already published an installation guide.

At this point you may well ask yourself that what – apart from gratuitous puppy pics and cheesy-snack-based puns – is the difference between that post and this.

Well, if you’re a long-time user of 11gXE and you’re looking to upgrade then you will find 18cXE a rather different proposition.
The introduction of Multitenant databases aside, 18cXE differs greatly from it’s predecessor in terms of it’s functional scope.
Wheras 11gXE was – broadly speaking – functionally equivalent to Oracle Standard Edition, the approach for 18cXE has been to shoe-horn in as many Enterprise Edition features as possible.
No doubt, this will leave you anxious to play with the new version. However, there are some “home comforts” that were present in the old version that you’ll need to configure yourself this time around.
What I’m going to go through is :

  • Installing 18cXE on a Red Hat compatible distro (CentOS7)
  • Connecting to the database and exploring the containers
  • Checking the TNS Listener
  • Manual and Automatic Startup and Shutdown of the database and listener
  • Setting and persisting the Oracle environment variables
  • Accessing Enterprise Manager Express
  • Installing the HR demo application in a Pluggable Database (PDB)
  • Configuring the firewall to allow remote access to Oracle

The steps documented here have been performed on a vanilla installation of CentOS7. As such, they should work pretty much unaltered for other Red Hat based distros based on or similar to Red Hat Enterprise Linux (RHEL) version 7.

Before all of that though… Continue reading

Oracle XE 11g – Getting APEX to start when your database does

They say patience is a virtue. It’s one that I often get to exercise, through no fault of my own.
Usually trains are involved. Well, I say involved, what I mean is…er…late.
I know, I do go on about trains. It’s a peculiarly British trait.
This may be because the highest train fares in Europe somehow don’t quite add up to the finest train service.
We can debate the benefits of British Trains later – let’s face it we’ll have plenty of time whilst we’re waiting for one to turn up. For now, I want to concentrate on avoiding any further drain on my badly tried patience by persuading APEX that it should be available as soon as my Oracle XE database is…
Continue reading

Troubleshooting Oracle 10g XE Installation on Ubuntu

You’ve followed the instructions, everythings working fine. You shutdown your machine and go for a celebratory pint / cup of tea / curry.
Then, when you next start your machine, Oracle doesn’t want to know. What’s going on ?
To be honest, I don’t know. What I do know is that there are some steps you can take to at least attempt to diagnose your problem.

Before I go any further, I’d like to dedicate this post to Wayne.
He found himself in this position. After much head scratching between the two of us, he managed to find and resolve his problem.

Whilst a hardened veteran in computing terms, Wayne was new to both Linux and Oracle. From the mails I’ve received regarding this post, there seem to be a number of people in a similar position to him. Therefore, this post is written with these interpid souls in mind and I’ve tried to take time out to explain why we’re doing stuff at each step.

Update

It’s now quite a while since I posted this and some people have contributed some really useful comments. These include solutions that they found to various problems, which are additional to the ones in this post. So, if you’re still having problems, check out the comments as well. MestreLion’s tip about sudo chmod -t /var/tmp/.oracle seems to be a particularly good example of this.

One other point worth mentioning is that Oracle 11gXE is now available. Many of the issues in this post are still relevant. However, if you’d like to know how to install the latest XE on Ubuntu or Mint, here are the instructions
Continue reading