Install Oracle 12C Release 1 (12.1) on Centos 6 – UDEV disks, NFS disks, kmod-oracleasm disks

This article presents installation of Oracle Database 12C(12.1) on Centos 6. Both database and grid software(standalone version) are installed. Grid software will use devices configured using three methods:

  • disk devices configured using UDEV
  • disk devices accessed by NFS
  • kmod-oracleasm library – extra Red Hat 6 rpm to simulate oracleasm lib

In this article there are two separated users:

  • oracle – manage database software and databases
  • grid – manage grid software and asm database.

Read following article how to install Centos 6 Linux: Install Centos 6 64 bit(for comfort set 4G memory and 64G for disk in your virtual machine). Cetnos6_1

Once your Centos 6 is installed you need to add extra storage for ASM disk devices.

1. Shutdown your virtual machine. Once it’s down go to “Settings” select “Storage” then click on icon with plus on disk.

Cetnos6_shared_1

2. Click on “Create new disk” button.

Cetnos6_shared_2

3. Default option “VDI” is fine click “Next” button.

Cetnos6_shared_3

4. Select “Dynamically allocated” then click “Next” button.

Cetnos6_shared_4

5. Enter storage name “Centos6_extra_disk” and set size to 40G then click “Create” button.

Cetnos6_shared_5

6. Once created you should see new disk attached to our virtual machine. Click “OK” button.

Cetnos6_shared_6

7. Start again virtual machine by click “Start” button.

Cetnos6_shared_7

Architecture

Architecture_Centos5_12C1_1

Software used:

  • Oracle Virtual Box – 64 bit
  • Centos 6 – 64 bit
  • Oracle Database 12C Release 1(12.1.0.1) – 64 bit for Linux

Software for Oracle Database 12CR1 is available on OTN or edelivery

Grid software

linuxamd64_12c_grid_1of2.zip
linuxamd64_12c_grid_2of2.zip

Database software

linuxamd64_12c_database_1of2.zip 
linuxamd64_12c_database_2of2.zip

Requirements

Be sure you fulfill following:

  • Red Hat Compatible kernel: 2.6.32-71.el6.x86_64 or later

Virtual machine consist of:

  • 64G local disk (dynamic space allocation)
  • 4G ram memory
  • 1 network cards (1 for Internet connection)

Extra storage for ASM devices:

  • 40G disk (dynamic allocation)

Host configuration

All commands are executed as user root.

Configure shared storage

Shared storage is visible as /dev/sdb device. Four logical partitions each 10G will be created using fdisk command. Both new partitions will be used for ASM.

--list devices

[root@centos6 ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sdb
--add four partitions

[root@centos6 ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun,
SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x9c860511.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 
         will be corrected by w(rite)

WARNING: 
  DOS-compatible mode is deprecated. It's strongly recommended to
  switch off the mode (command 'c') and change display units to
  sectors (command 'u').

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
e
Partition number (1-4): 1
First cylinder (1-5221, default 1): 
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-5221, default 5221): 
Using default value 5221

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (1-5221, default 1): 
Using default value 1
Last cylinder, 
+cylinders or +size{K,M,G} (1-5221, default 5221): +10240M

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (1307-5221, default 1307): 
Using default value 1307
Last cylinder, 
+cylinders or +size{K,M,G} (1307-5221, default 5221): +10240M

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (2613-5221, default 2613): 
Using default value 2613
Last cylinder, 
+cylinders or +size{K,M,G} (2613-5221, default 5221): +10240M

Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (3919-5221, default 3919): 
Using default value 3919
Last cylinder, +cylinders or +size{K,M,G} (3919-5221, default 5221): 
Using default value 5221

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
--list new partitions

[root@centos6 ~]# fdisk -l /dev/sdb

Disk /dev/sdb: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x9c860511

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        5221    41937651    5  Extended
/dev/sdb5               1        1306    10490382   83  Linux
/dev/sdb6            1307        2612    10490413+  83  Linux
/dev/sdb7            2613        3918    10490413+  83  Linux
/dev/sdb8            3919        5221    10466316   83  Linux

Add groups

groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
groupadd -g 54324 backupdba
groupadd -g 54325 dgdba
groupadd -g 54326 kmdba
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54329 asmadmin
Add user oracle – “\” is used to break lines in Unix
useradd -u 54321 \
-g oinstall -G dba,oper,backupdba,dgdba,kmdba,asmdba oracle
Change password for user oracle
passwd oracle
Add user grid – “\” is used to break lines in Unix
useradd -u 54322 \
-g oinstall -G asmdba,asmoper,asmadmin,dba grid
Change password for user oracle
passwd grid

OS settings

Add kernel parameters to “/etc/sysctl.conf”
--kernel parameters for 12gR1 installation

fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

Apply kernel parameters

/sbin/sysctl -p

Add following line for user grid and oracle shell limits in file “/etc/security/limits.conf”

--shell limits for users oracle and grid 12cR1
grid    soft    nproc    131072
grid    hard    nproc    131072
grid    soft    nofile   131072
grid    hard    nofile   131072
grid    soft    core     unlimited
grid    hard    core     unlimited
grid    soft    memlock  50000000
grid    hard    memlock  50000000

oracle   soft   nproc    131072
oracle   hard   nproc    131072
oracle   soft   nofile   131072
oracle   hard   nofile   131072
oracle   soft   core     unlimited
oracle   hard   core     unlimited
oracle   soft   memlock  50000000
oracle   hard   memlock  50000000

Other host configuration

The “/etc/hosts” file must contain a fully qualified name for the server.

<IP-address>  <fully-qualified-machine-name>  <machine-name>

For example

127.0.0.1 centos6.dbaora.com centos6 localhost.localdomain localhost

Check which packages are installed and which are missing

rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE}(%{ARCH})\n' binutils \
compat-libcap1 \
compat-libstdc++-33 \
elfutils-libelf \
elfutils-libelf-devel \
gcc \
gcc-c++ \
glibc \
glibc-common \
glibc-devel \
glibc-headers \
ksh \
libaio \
libaio-devel \
libgcc \
libstdc++ \
libstdc++-devel \
make \
libXext \
libXtst \
libX11 \
libXau \
libxcb \
libXi \
sysstat \
unixODBC \
unixODBC-devel

Install missing packages. It’s just example:

#directory with mounted Centos Linux 6 install disk 

cd <Centos 6>/Server/Packages 

#install missed packages (example for package unixODBC*) 

rpm -Uvh unixODBC*

or via Internet

yum install unixODBC*

MEMORY_TARGET

During installation you can encounter typical error commonly know by DBAs

ORA-00845: MEMORY_TARGET not supported on this system

Oracle is using for automatic memory management Linux shared segments. Usually they are too small but you can modify it on-the-fly. For this presentation we need 2500M.

Just modify entry in “/etc/fstab” to have persistent settings between reboot of your machine

tmpfs   /dev/shm   tmpfs  size=2500M  0 0

remount it

mount -o remount tmpfs

and verify

mount | grep tmpfs
tmpfs on /dev/shm type tmpfs (rw,size=2500M)

Secure Linux

To change secure Linux edit the “/etc/selinux/config” file, making sure the SELINUX flag is set as follows. It requires REBOOT to be effective !!!

SELINUX=permissive

Directories

Create directory structure

mkdir -p /ora01/app
chown grid:oinstall /ora01/app
chmod 775 /ora01/app

ORACLE_BASE for grid

mkdir -p /ora01/app/grid
chown -R grid:oinstall /ora01/
chmod 775 /ora01/app/grid

ORACLE_BASE for oracle

mkdir -p /ora01/app/oracle
chown oracle:oinstall /ora01/app/oracle
chmod 775 /ora01/app/oracle

Create ORACLE_HOME directories for grid and oracle

mkdir -p /ora01/app/oracle/product/12.1.0/db_1
chown oracle:oinstall -R /ora01/app/oracle

mkdir -p /ora01/app/grid/product/12.1.0/grid
chown grid:oinstall -R /ora01/app/grid

New profiles

Create new profile for user oracle /home/oracle/.bash_profile. This profile will be used for database software.

# Oracle Settings
export TMP=/tmp

export ORACLE_HOSTNAME=centos6.dbaora.com
export ORACLE_UNQNAME=ORA12C
export ORACLE_BASE=/ora01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
export ORACLE_SID=ORA12C

PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

alias cdob='cd $ORACLE_BASE'
alias cdoh='cd $ORACLE_HOME'
alias tns='cd $ORACLE_HOME/network/admin'
alias envo='env | grep ORACLE'

umask 022

Create new profile for user grid /home/grid/.bash_profile. This profile will be used for grid software.

# Oracle Settings
export TMP=/tmp

export ORACLE_HOSTNAME=centos6.dbaora.com
export ORACLE_UNQNAME=+ASM
export ORACLE_BASE=/ora01/app/grid
export ORACLE_HOME=/ora01/app/grid/product/12.1.0/grid
export ORACLE_SID=+ASM

PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

alias cdob='cd $ORACLE_BASE'
alias cdoh='cd $ORACLE_HOME'
alias tns='cd $ORACLE_HOME/network/admin'
alias envo='env | grep ORACLE'

Following aliases are defined in profiles

  • cdob – change directory to $ORACLE_BASE

alias cdob=’cd $ORACLE_BASE’

  • cdoh – change directory to $ORACLE_HOME

alias cdoh=’cd $ORACLE_HOME’

  • tns – change directory to $ORACLE_HOME/network/admin

alias tns=’cd $ORACLE_HOME/network/admin’

  • envo – displays current environments settings and filters by ORACLE word

alias envo=’env | grep ORACLE’

[grid@centos6 ~]$ envo
ORACLE_UNQNAME=+ASM
ORACLE_SID=+ASM
ORACLE_BASE=/ora01/app/grid
ORACLE_HOSTNAME=centos6.dbaora.com
ORACLE_HOME=/ora01/app/grid/product/12.1.0/grid
[oracle@centos6 ~]$ envo
ORACLE_UNQNAME=ORA12C
ORACLE_SID=ORA12C
ORACLE_BASE=/ora01/app/oracle
ORACLE_HOSTNAME=centos6.dbaora.com
ORACLE_HOME=/ora01/app/oracle/product/12.1.0/db_1

Remember to modify owner of all profiles

chown oracle:oinstall /home/oracle/.bash*
chmod 750 /home/oracle/.bash*

chown grid:oinstall /home/grid/.bash*
chmod 750 /home/grid/.bash*

Devices for ASM

Now it’s time to configure devices for ASM. In our system we have two disks:

  • /dev/sda
  • /dev/sdb

with following partitions

[root@centos6 ~]# ls -la /dev/sd*
brw-rw----. 1 root disk 8,  0 Nov 27 22:06 /dev/sda
brw-rw----. 1 root disk 8,  1 Nov 27 22:04 /dev/sda1
brw-rw----. 1 root disk 8,  2 Nov 27 22:04 /dev/sda2
brw-rw----. 1 root disk 8, 16 Nov 27 22:10 /dev/sdb
brw-rw----. 1 root disk 8, 17 Nov 27 22:10 /dev/sdb1
brw-rw----. 1 root disk 8, 21 Nov 27 22:10 /dev/sdb5
brw-rw----. 1 root disk 8, 22 Nov 27 22:10 /dev/sdb6
brw-rw----. 1 root disk 8, 23 Nov 27 22:10 /dev/sdb7
brw-rw----. 1 root disk 8, 24 Nov 27 22:10 /dev/sdb8

Configure UDEV devices

On extra disk /dev/sdb two partitions will be used for ASM and udev

partprobe /dev/sdb5
partprobe /dev/sdb6

Set the new UDEV rules on the new partitions (“/dev/sdb5” and “/dev/sdb6”) as follows

[root@centos6 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sdb5", NAME="asm_sdb_udev_p5", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sdb6", NAME="asm_sdb_udev_p6", OWNER="grid", GROUP="asmadmin", MODE="0660"

Reload and Restart the udev rules

[root@centos6 Desktop]# start_udev
Starting udev:                                             [  OK  ]

Make sure the new udev partition device is created with the correct ownership (grid & asmadmin) and permissions (brw-rw—-)

[root@centos6 ~]# ls -ltr /dev/asm*
brw-rw----. 1 grid asmadmin 8, 21 Nov 27 22:27 /dev/asm_sdb_udev_p5
brw-rw----. 1 grid asmadmin 8, 22 Nov 27 22:27 /dev/asm_sdb_udev_p6

you should notice /dev/sdb* list now shorter

[root@centos6 ~]# ls -la /dev/sdb*
brw-rw----. 1 root disk 8, 16 Nov 27 22:27 /dev/sdb
brw-rw----. 1 root disk 8, 17 Nov 27 22:27 /dev/sdb1
brw-rw----. 1 root disk 8, 23 Nov 27 22:27 /dev/sdb7
brw-rw----. 1 root disk 8, 24 Nov 27 22:27 /dev/sdb8

Configure NFS

Mount NFS file systems using OS kernel NFS client as user root.

mkdir /nfs_server_data
chown grid:asmadmin /nfs_server_data

add to file “/etc/exports” following entry

/nfs_server_data *(rw,sync,no_wdelay,insecure_locks,no_root_squash)

start nfs server

chkconfig nfs on
service nfs restart

create directory to mount /nfs_server_data

mkdir /ora01/nfs_client
chown grid:asmadmin /ora01/nfs_client

add entry to “/etc/fstab” file to mount /nfs_server_data on /ora01/nfs_client

centos6.dbaora.com:/nfs_server_data /ora01/nfs_client nfs rw,bg,hard,nointr,tcp,vers=3,timeo=300,rsize=32768,wsize=32768,actimeo=0  0 0

mount NFS data

mount /ora01/nfs_client

verify NFS mount

[root@centos6 ~]# df /ora01/nfs_client
Filesystem           1K-blocks      Used Available Use% Mounted on
centos6.dbaora.com:/nfs_server_data
                 61419424  36088864  22210624  62% /ora01/nfs_client

Now it’s time to create block devices over NFS

su - grid
dd if=/dev/zero of=/ora01/nfs_client/asm_sda_nfs_b1 bs=1M count=5120
dd if=/dev/zero of=/ora01/nfs_client/asm_sda_nfs_b2 bs=1M count=5120

Change owner and permissions and verify it

su - grid
chown grid:asmadmin /ora01/nfs_client/asm_sda_nfs_b1
chown grid:asmadmin /ora01/nfs_client/asm_sda_nfs_b2
chmod 664 /ora01/nfs_client/asm_sda_nfs_b1
chmod 664 /ora01/nfs_client/asm_sda_nfs_b2
[root@centos6 ora01]# ls -la /ora01/nfs_client
total 10485776
drwxr-xr-x. 2 grid asmadmin       4096 Nov 27 22:44 .
drwxr-xr-x. 4 grid oinstall       4096 Nov 27 22:32 ..
-rw-rw-r--. 1 grid asmadmin 5368709120 Nov 28 18:18 asm_sda_nfs_b1
-rw-rw-r--. 1 grid asmadmin 5368709120 Nov 28 18:11 asm_sda_nfs_b2

Configure kmod-oracleasm

Oracle is not delivering anymore oracleasm library for Redhat 6. RedHat has published its own version kmod-oracleasm-2.0.6.rh1-2.el6.x86_64. You need to download it from official page of RedHat and install as root user.

Install the package using the following command

rpm -Uvh kmod-oracleasm*.rpm

Additionally you need following files which can be download from Oracle OTN page

Install the packages using the following command

rpm -Uvh oracleasm*.rpm

Verify all is in place

[root@centos6]# rpm -qa | grep oracleasm
oracleasm-support-2.1.8-1.el6.x86_64
kmod-oracleasm-2.0.6.rh1-2.el6.x86_64
oracleasmlib-2.0.4-1.el6.x86_64

Configure ASMlib

[root@centos6 ~]# /usr/sbin/oracleasm configure -i
Configuring the Oracle ASM library driver.

This will configure the on-boot properties of the Oracle ASM library
driver.  The following questions will determine whether the driver is
loaded on boot and what permissions it will have.  The current values
will be shown in brackets ('[]').  Hitting <ENTER> without typing an
answer will keep that current value.  Ctrl-C will abort.

Default user to own the driver interface []: grid
Default group to own the driver interface []: asmadmin
Start Oracle ASM library driver on boot (y/n) [n]: y
Scan for Oracle ASM disks on boot (y/n) [y]: y
Writing Oracle ASM library driver configuration: done

Load asm kernel module

[root@centos6 ~]# /usr/sbin/oracleasm init
Creating /dev/oracleasm mount point: /dev/oracleasm
Loading module "oracleasm": oracleasm
Mounting ASMlib driver filesystem: /dev/oracleasm

Add ASM disks

[root@centos6 ~]# /usr/sbin/oracleasm createdisk KMOD_DISK1 /dev/sdb7
Writing disk header: done
Instantiating disk: done
[root@centos6 ~]# 
[root@centos6 ~]# /usr/sbin/oracleasm createdisk KMOD_DISK2 /dev/sdb8
Writing disk header: done
Instantiating disk: done

Scan ASM disks

[root@centos6 ~]# /usr/sbin/oracleasm scandisks
Reloading disk partitions: done
Cleaning any stale ASM disks...
Scanning system for ASM disks...

List ASM disks

[root@centos6 ~]# /usr/sbin/oracleasm listdisks
KMOD_DISK1
KMOD_DISK2

Install grid software

Start grid software installation as user grid, remember to run command xhost+ as root.

xhost +
access control disabled, clients can connect from any host

As grid user unzip grid software. It should create 1 directories:

  • grid – grid software
su - grid
[grid@centos6]$ unzip linuxamd64_12c_grid_1of2.zip 
[grid@centos6]$ unzip linuxamd64_12c_grid_2of2.zip
[grid@centos6]ls 
grid

then run installation from grid directory

[grid@centos6 ~]$ cd grid
[grid@centos6 grid]$ 
./runInstall

1. Select “Skip software updates” and click “Next” button.

centos6_121_grid1

2. Ignore this warning, just click “Yes” button.

centos6_121_grid2

3. Select “configure Oracle Grid Infrastructure for Standalone Server” and click “Next” button.

centos6_121_grid3

4. Select language and click “Next” button.

centos6_121_grid4

5. It’s time to create ASM diskgroup DATA. So first you need to make visible ASM devices. Click “Change Discovery Path” button.

centos6_121_grid5

6. Enter new discovery path: ORCL:*,/ora01/nfs_client/*,/dev/asm* and click “OK” button.

centos6_121_grid6

7. You should see 6 ASM devices. Select “External” Redundancy for new diskgroup and check checkbox for two devices /dev/asm_sdb_udev_p5 and /dev/asm/sdb_udev_p6. Click “Next” button.

centos6_121_grid7

8. From security point of view you should specify separate password for user SYS and ASMSNMP. I set for both user the same password. Click “Next” button.

centos6_121_grid8

9. You can change assignment of groups to ASM roles here. When it’s done click “Next” button.

centos6_121_grid9

10. here you can specify ORACLE_BASE and ORACLE_HOME directories for your grid software. Just click “Next” button.

centos6_121_grid10

11. On this page you can specify directory for Oracle inventory. Just click “Next” button.

centos6_121_grid11

12. Check checkbox “Automatically run configuration scripts” then specify root credentials. Extra scripts will be started during installation as root user.

centos6_121_grid12

13. It’s last step to back and change some settings before running installation. Click “Install” button to proceed.

centos6_121_grid13

14.Installation will start.

centos6_121_grid14

15. In the end of installation you will be informed that some scripts will run as user root. Just click “Yes” button to continue.

centos6_121_grid15 centos6_121_grid16

16. Installation will continue. When it’s done click “Close” button.

centos6_121_grid17 centos6_121_grid18

ASM configuration assistant

So far we have created only one ASM group DATA. I want to show you how quickly you can add extra group to ASM instance.

As user grid start ASMCA. Remeber to start xhost + as user root to enable run graphical tools from other users like grid.

ASMCA – ASM configuration assistant is part of grid software so proper environment must be set

su - grid

[grid@centos6 ~]$ asmca

1. ASMCA started click “Create” button to add new ASM diskgroup.

centos6_121_grid1

2. Enter group name BACKUP, check checkbox for all devices and click “OK” button. Redundancy must be “External”.

centos6_121_grid2

3. You should see following screen. Click “OK”.

centos6_121_grid3

4. Now you should see we have 2 ASM groups “BACKUP” and “DATA”. Click “Exit” button.

centos6_121_grid4

Now you can verify in sqlplus that you have 2 ASM groups.

[grid@centos6 ~]$ sqlplus / as sysasm

SQL*Plus: Release 12.1.0.1.0 Production on Thu Nov 28 00:08:45 2013

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Automatic Storage Management option

SQL> select name from v$asm_diskgroup;

NAME
------------------------------
BACKUP
DATA

Database software installation

Start oracle software installation as user oracle, remember to run command xhost+ as root.

xhost +
access control disabled, clients can connect from any host

As oracle user unzip oracle software. It should create 1 directories:

  • oracle – oracle software
su - oracle

[oracle@centos6]$ unzip linuxamd64_12c_database_1of2.zip 
[oracle@centos6]$ unzip linuxamd64_12c_database_2of2.zip

[oracle@centos6]ls 
oracle

then run installation from oracle directory

[oracle@centos6 ~]$ cd oracle
[oracle@centos6 oracle]$ 
./runInstall

1. Uncheck checkbox “I wish to receive security updates via My Oracle Support” and then click “Next” button.

centos6_121_db1

2. Just click “Yes” button to continue.

centos6_121_db2

3. Accept default “Skip software updates” and click “Next” button.

centos6_121_db3

4. Ignore this warning and click “Yes” button.

centos6_121_db4

5. Select “Install database software only” and click “Next” button.

centos6_121_db5

6. Accept default “Single instance database installation” and click “Next” button.

centos6_121_db6

7. You can select language here. Once it’s done click “Next” button.

centos6_121_db7

8. You can select here type of binaries to install. Once it’s done click “Next” button.

centos6_121_db8

9. Here you should see directories for ORACLE_BASE and ORACLE_HOME for your binaries according to environmental settings. Click “Next” button.

centos6_121_db9

10. Here you can assign OS groups for each oracle group. Just click “Next” button.

centos6_121_db10

11. If everything is right click “Install” button. It’s the last moment to come back to each of previous point and make changes.

centos6_121_db11

12. Installation will continue. In the end you will be asked to run one script as root user. Once it’s done click “OK” button to continue with installation.

centos6_121_db11a

centos6_121_db12

13. Installation is completed click “Close” button.

centos6_121_db13

Database configuration assistant – DBCA

As user oracle start DBCA. Remeber to start xhost + as user root to enable run graphical tools from other users like oracle.

[root@centos6 ~]# su - oracle
[oracle@centos6 ~]$ dbca

1. DBCA is started. Just click “Next” button.

centos6_121_dbca1

2. Select “Advanced Mode” and click “Next” button.

centos6_121_dbca2

3. Select “General purpose or Transaction Processing” and click “Next” button.

centos6_121_dbca3

4. Enter “Global Database Name” and specify SID. If you want to create pluggable database check checkbox “Create as Container Database” then specify “Number of PDBs” and “PDB Name”. Click “Next” button.

centos6_121_dbca4

5. On this page you can register the database in Enterprise Manager Cloud Control or check checkbox “Configure Enterprise Manager (EM) Database Express”. I don’t have EM Cloud Control so I selected option one. Click “Next” button.

centos6_121_dbca5

6. Here you can specify password for key users in database. It’s recommended to specify separate password for each user. I selected second option and set the same password for the users. Click “Next” button.

centos6_121_dbca6

7. You can register the database in LISTENER already created by grid software (recommended option – my option here) or define new listener using database software(in this case listener name and port must be different then grid listener). Click “Next” button.

centos6_121_dbca7

8. On this page you can specify what kind of storage will be used for database and backup & recovery area. In my case I have chosen:

  • Storage Type – Automatic Storage Management (ASM) with disk group +DATA for both database and backup and recovery

You can also turn on archivelog on database level – option “Enable Archiving”. Click “Next” button.

centos6_121_dbca8

9. Check checkbox “Sample schemas” to install extra schemas on the database. On second tab you have option to install and configure “Database Vault” and “Label Security”.  Click “Next” button to continue.

centos6_121_dbca9 centos6_121_dbca10

10. Following 4 screens shows information about our new database. You can change some settings  for the database like memory settings, initial parameters, character set of our database, change default connection type(dedicated server, shared server). When you are ready click “Next” button.

centos6_121_dbca11 centos6_121_dbca12 centos6_121_dbca13 centos6_121_dbca14

11. Accept default settings “Create Database” and click “Next” button.

centos6_121_dbca15

12. You should see summary window. It’s the last moment to turn back and make changes on previous screens. Click “Finish” to start installation of your database.

centos6_121_dbca16

13. Installation in progress ..  centos6_121_dbca18 centos6_121_dbca19

14. In the end you should see information that installation is completed with details how to connect to Enterprise Manager Express. There is option “Password Management” to change passwords for all database accounts in your database. Click “Exit” once you are ready.

centos6_121_dbca20

15. Click “Close” button installation is done.

centos6_121_dbca21

Have a fun 🙂

Tomasz

One thought on “Install Oracle 12C Release 1 (12.1) on Centos 6 – UDEV disks, NFS disks, kmod-oracleasm disks

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.