# Finally up on Oracle 12c

So, I had to get a new work laptop to install Oracle 12c.  I was on Windows XP and even though I knew my company would have paid for me to get a new one a long time ago I was slow to give up my old laptop because of the time it would take to reconfigure it.  But, because 12c wasn’t out for 32 bit windows I had to bite the bullet and request a new laptop.  It is really nice.  It is an HP EliteBook 8470P with 128 gig solid state disk and 4 G of RAM.  The SSD is so fast it is sweet.  But, I don’t have a ton of RAM to build virtual environments in.  It supports up to 16 gig on Windows 7 64-bit so I may end up upgrading the memory.  Also, I didn’t want to eat up space on my SSD for a test environment so I used a 500 gig external drive connected to the laptop using USB to store the virtual machine and install files.

I’m not going to give all the gory details because it would just be a repeat of what other people have published.  I’ll just give the highlights.

I’m using VMware player 5.02, Oracle Enterprise Linux 6.4, and the 12c 64-bit Linux install zips.  I setup a VM with 2 gig of RAM, 2 cores CPU, and 100 gig of disk space.  I used the default NAT network configuration.

After installing OEL I found that I couldn’t connect to the new VM from Windows over the network.  Apparently the network is not started by default and I had to check a box in the Linux network configuration while doing the install or the network would not come up automatically when the OS boots up.  I found this web site after the fact that documents this issue.

The other surprise was that the way I installed Linux the OS was not configured with a graphical console.  I chose “database server”.  I guess I’m surprised that they wouldn’t install X Windows on a database server by default.  So, to do the Oracle software install I ended up using my Cygwin XWindows server to run the install just as I would for a remote install on one of my real work servers where I don’t have access to the graphical console.

I found this command in the Linux installation guide for 12c:

yum install oracle-rdbms-server-12cR1-preinstall

This was very nice.  It installed all of the needed packages downloading them over the internet and created the needed oracle user and oinstall groups.  I think it also did any needed kernel parameter changes.  It was definitely a time saver over doing all this manually as I have in the past.

Even though I really didn’t have a /u01 filesystem – I just let it create the default / and /home filesystems – I still put everything under /u01 to make it look like a default install:

mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle

So, ORACLE_BASE=/u01/app/oracle

Next I got this error running the installer:

PRVF-0002 Could not retrieve local nodename

I found this web site which recommended adding the hostname to the /etc/hosts file.  Here is what I ended up adding:

192.168.133.128   ora12c ora12c.usfoods.com

I had set the name and domain to ora12c.usfoods.com during the install and ultimately I found out that I needed to use this hosts entry to get it to work.  Also, I found the ip address for the virtual machine by running ifconfig.

Lastly, I found that I had to disable the firewall to be able to access the database from the  Windows host using sqlplus.  It is interesting that even though I choose “database server” and did the yum install of the package it still had the firewall up blocking port 1521 in to the machine.  I ran these two commands as root to turn off the firewall:

service iptables stop
chkconfig iptables off

Now, after backing up my newly configured VM I can get into my new 12c DB from the Windows host:

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing opt
ions

SQL>

Victory!  Of course, then the very first thing I attempt to do, that I would normally do under 11g, doesn’t work:

SQL> create user abc123 identified by a9s9d9d9;
create user abc123 identified by a9s9d9d9
*
ERROR at line 1:
ORA-65096: invalid common user or role name

So, I’ve got 12c, but now I still have to figure out how to use it!

– Bobby

P.S. Check out this 12c install web page.  It looks pretty comprehensive.