This tutorial show How to Install Oracle 12C on Ubuntu 15.04. Ubuntu like systems are not in the list of Oracle 12c Database Supported OS, so you should be careful and use it at most for Development and not as Production Database Server

In this post we will be installing Oracle Database 12c Release 1 (12.1.0.2.0) – Enterprise Edition on Ubuntu 15.04 64 bit Operating System. If you are unsure about your system architecture check How to find Operating System bit in Linux.

Following is the summarized steps of How to Install Oracle 12c on Ubuntu 15.04

  1. Oracle Installation Prerequisites
  2. Install Oracle 12c on Ubuntu
  3. Post Installation

If you want to install Oracle 12C on Ubuntu 13.10 then follow How to Install Oracle 12C Enterprise Edition Database Ubuntu 13.10

If you want to install Oracle 11G R2 Express edition on Ubuntu follow Step By Step Guide to Install Oracle Database Express Edition 11GR2 On Ubuntu 12.10 / 12.04 / 11.10

If you want to install Oracle 11G R2 on Ubuntu 12.10 and 12.04 follow How to Install Oracle 11G R2 Enterprise Edition Database Ubuntu 12.10 / 12.04

If you want to install Oracle 11G R2 on Ubuntu 11.04 follow Oracle Database 11g R2 on Ubuntu 11.04

Detailed Step by Step of How to Install Oracle 12c on Ubuntu 15.04

  1. Oracle Installation Prerequisites
    Host file modification
    The /etc/hosts file must contain a fully qualified name for the server.

    IP-address  fully-qualified-machine-name machine-name

    Following is the example of my machine
    Install Oracle 12c on Ubuntu

  2. Hardware requirement
    1. General Server Minimum Requirements
      Server should be started in runlevel 3 or runlevel 5.
      Server display cards provide at least 1024 x 768 display resolution.
    2. Disk Space Requirements on Linux x86-64
      Disk Space for Enterprise Edition Installation type is 6.4 GB
      1 GB of space in the /tmp directory on your Linux system.
    3. Server Memory Minimum Requirements
      Ensure that your system meets the following memory requirements:
      Minimum: 1 GB of RAM
      Recommended: 2 GB of RAM or moreSwap Space Requirement for Linux

      1. If RAM size is between 1 GB to 2 GB then Swap space should be 1.5 times of the RAM
      2. If RAM size is between 2 GB to 16 GB then Swap space should be equal to the size of the RAM
      3. If RAM size is more than 16 GB then Swap space should be 16 GB
  3. Install Prerequisites packages
    1. Open a command prompt by pressing CTRL + ALT + t and run following command as a root / root equivalent user to downloads the package lists from the repositories and updates them to get information on the newest versions of packages and their dependencies. It will do this for all repositories and PPAs.
      sudo apt-get update
    2. Run following command to handle changing dependencies with new versions of packages.
      sudo apt-get dist-upgrade
    3. Restart machine by running following command
      sudo reboot --reboot
    4. Again run dist-upgrade to check if there is any new versions of packages
      sudo apt-get dist-upgrade
    5. Run following command to install dependencies
      sudo apt-get -y install alien binutils build-essential \
      cpp-4.4 debhelper g++-4.4 gawk gcc-4.4 gcc-4.4-base \
      gettext html2text lib32z1 lib32ncurses5 intltool-debian \
      ksh lib32z1-dev libaio-dev libaio1 libbeecrypt7 libc6 \
      libc6-dev libc6-dev-i386 libelf-dev libelf1 libltdl-dev \
      libltdl7 libmotif4 libodbcinstq4-1 libodbcinstq4-1:i386 \
      libqt4-core libqt4-gui libsqlite3-0 libstdc++5 libstdc++6 \
      libstdc++6-4.4-dev lsb lsb-core lsb-cxx lsb-desktop \
      lsb-graphics make odbcinst pax po-debconf rpm \
      rpm-common sysstat unixodbc unixodbc-dev unzip
  4. Creating Required Operating System Groups and Users
    1. Run following command as root/ root equivalent user to create required Operating System groups and users
      sudo addgroup oinstall
      sudo addgroup dba
      sudo addgroup nobody
      sudo usermod -g nobody nobody
      sudo useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle
      sudo mkdir /home/oracle
      sudo chown -R oracle:dba /home/oracle
      sudo mkdir -p /u01/app/oracle
      sudo mkdir -p /u01/binaries
      sudo chown -R oracle:dba /u01
    2. Set the password for the oracle user which we have created for installation purpose
      sudo passwd oracle
  5. Configuring Kernel Parameters and Resource Limits
    1. Make ourself as Red Hat by running following command as root/ root equivalent user
      echo 'Red Hat Linux release 6' | sudo tee -a /etc/redhat-release
    2. We need to create some soft links to start the installation. To do so run the following commands as root/ root equivalent user,
      sudo mkdir /usr/lib64
      sudo ln -s /etc /etc/rc.d
      sudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/
      sudo ln -s /usr/bin/awk /bin/awk
      sudo ln -s /usr/bin/basename /bin/basename
      sudo ln -s /usr/bin/rpm /bin/rpm
      sudo ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/
      sudo ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/
      sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/
      sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/
    3. To change the shell configuration for oracle user run following commands as root/ root equivalent user
      sudo cp /etc/security/limits.conf /etc/security/limits.conf.original
      echo "#Oracle 12C shell limits:" | sudo tee -a /etc/security/limits.conf
      echo "oracle soft nproc 2048" | sudo tee -a /etc/security/limits.conf
      echo "oracle hard nproc 16384"| sudo tee -a /etc/security/limits.conf
      echo "oracle soft nofile 1024" | sudo tee -a /etc/security/limits.conf
      echo "oracle hard nofile 65536" | sudo tee -a /etc/security/limits.conf
    4. Run following command to change the kernel parameters as root/ root equivalent user.
      echo "#" | sudo tee -a /etc/sysctl.conf
      echo "# Oracle 12C entries" | sudo tee -a /etc/sysctl.conf
      echo "fs.aio-max-nr=1048576" | sudo tee -a /etc/sysctl.conf
      echo "fs.file-max=6815744" | sudo tee -a /etc/sysctl.conf
      echo "kernel.shmall=2097152" | sudo tee -a /etc/sysctl.conf
      echo "kernel.shmmni=4096" | sudo tee -a /etc/sysctl.conf
      echo "kernel.sem=250 32000 100 128" | sudo tee -a /etc/sysctl.conf
      echo "net.ipv4.ip_local_port_range=9000 65500" | sudo tee -a /etc/sysctl.conf
      echo "net.core.rmem_default=262144" | sudo tee -a /etc/sysctl.conf
      echo "net.core.rmem_max=4194304" | sudo tee -a /etc/sysctl.conf
      echo "net.core.wmem_default=262144" | sudo tee -a /etc/sysctl.conf
      echo "net.core.wmem_max=1048586" | sudo tee -a /etc/sysctl.conf
      echo "kernel.shmmax=1073741824" | sudo tee -a /etc/sysctl.conf

      Note: kernel.shmmax = max possible value, e.g. size of physical memory in bytes. In my case machine is having 2GB so we are specifying 1GB. Adjust the parameter as per your configuration

    5. Load new kernel parameters, by running following as root/ root equivalent user.
      sudo sysctl -p

      Install Oracle 12c on Ubuntu

    6. We need to do changes in start-up script, run following commands as root/ root equivalent user
      for i in 0 1 2 3 4 5 6 S
      do sudo ln -s /etc/rc$i.d /etc/rc.d/rc$i.d
      done
  6. Downloading Software
    Login as a oracle user as we are going to install database using oracle user.
    Go to following link to download Oracle 12c.
    Download Oracle 12c Enterprise Edition
    Check Accept License Agreement radio button and click on File 1
    Install Oracle 12c on UbuntuThis will redirect to the login screen. Enter your credentials and click on Sign in button
    Install Oracle 12c on Ubuntu
    Download the file to /u01/binaries. Do the same for file 2.
  7. Unpack Files
    Login as a oracle user and open a terminal by pressing CTRL + ALT +t
    Go to /u01/binaries folder using following command

    cd /u01/binaries

    Run following commands to extract binaries

    unzip linuxamd64_12102_database_1of2.zip
    unzip linuxamd64_12102_database_2of2.zip

    Before doing the installation we need to give proper permission to the extracted file, to do the same run following command

    chown -Rf oracle:dba /u01/binaries
  8. Install Oracle 12c on Ubuntu
    1. Login as a oracle user and start installation using following command
      cd /u01/binaries/database
      /u01/binaries/database/runInstaller -ignoreSysPrereqs
    2. In the Configure Security Updates unchecked I wish to receive security updates via My Oracle Support and Click Next
      I have skipped Oracle Support Password provision as I don’t want to receive updates.
      Install Oracle 12c on Ubuntu
      It will ask about the confirmation, click Yes
      Install Oracle 12c on Ubuntu
    3. As the Ubuntu is not supported OS we need to we are seeing the below error, just click on Yes button to go ahead.
      Install Oracle 12c on Ubuntu
    4. In Selection Installation Option choose Create and configure a database and click on Next to go further
      Install Oracle 12c on Ubuntu
    5. In System Class screen select Server Class and click on Next to go further
      Install Oracle 12c on Ubuntu
    6. In Grid Installation Option screen select Single instance database installation and click on Next to go further
      Install Oracle 12c on Ubuntu
    7. In Select Install Type screen select Advanced install and click on Next to go further
      Install Oracle 12c on Ubuntu
    8. In Select Product Language screen select appropriate language and and click on Next to go further
      Install Oracle 12c on Ubuntu
    9. In Select Database Edition screen I am selecting Enterprise Edition. Click Next to go further.
      Install Oracle 12c on Ubuntu
    10. In Specify Installation Location screen, ensure that following values are there and click Next to go further
      Oracle base : /u01/app/oracle
      Software location : /u01/app/oracle/product/12.1.0/dbhome_1
      Install Oracle 12c on Ubuntu
    11. In Create Inventory screen, ensure that Inventory Directory is /u01/app/oraInventory and click Next to go further
      Install Oracle 12c on Ubuntu
    12. In Select Configuration Type screen, select General Purpose / Transaction Processing and click Next to proceed further.
      Install Oracle 12c on Ubuntu
    13. In Specify Database Identifiers screen, let it be default and ensure that you have unchecked Create as Container database option.
      Click Next to go further. Here we need to remember the Oracle system identifier (SID)

      Install Oracle 12c on Ubuntu
    14. In Specify Configuration Options configure as below:
      Under Memory select Enable Automatic Memory Management: TRUE
      Under Character sets select Use Unicode (AL32UTF8)
      Install Oracle 12c on Ubuntu Install Oracle 12c on Ubuntu
    15. Under Specify Database Storage Options ensure that database file location is /u01/app/oracle/oradata and click Next to go further.
      Install Oracle 12c on Ubuntu
    16. Leave default settings under Specify Management Options and click Next to go further.
      Install Oracle 12c on Ubuntu
    17. Leave default settings under Specify Recovery Options and click Next to go further.
      Install Oracle 12c on Ubuntu
    18. In Specify Schema Passwords screen I choose Use the same password for all accounts because of laziness. Enter password and click Next to go further.
      Install Oracle 12c on Ubuntu
      Skip the password warning by clicking Yes
      install oracle 12c on ubuntu
    19. Leave the default option under Privileged Operating System group and click Next to go further.
      Install Oracle 12c on Ubuntu
    20. Save the summary for future use and click Next to go further.
      Install Oracle 12c on Ubuntu
      Install Oracle 12c on Ubuntu
    21. At around 59% during Link binaries you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: undefined reference to symbol 'ztucxtb'
      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so: error adding symbols: DSO missing from command line
       
      INFO: collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:878: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/orapwd' failed

      ldd output of /u01/app/oracle/product/12.1.0/dbhome_1/lib/libnnz12.so file shows following
      Install Oracle 12c on Ubuntu
      Important line is libclntshcore.so.12.1 => not found. Run following command as root/ root equivalent user to rectify this

      sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntshcore.so.12.1 /usr/lib/

      Now see the linking again
      Install Oracle 12c on Ubuntu
      Also we need to do changes in ins_rdbms.mk file
      Take a backup of /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk by running following command

      cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk.original

      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk and search for Linking password utility (orapwd), you will see following lines
      Install Oracle 12c in Ubuntu
      Now change it to as follows. Note that you need to add -lnnz12 after $(ORAPWD_LINKLINE)
      Install Oracle 12c in Ubuntu
      Click on retry to go further.

    22. Again you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'ssMemRealloc'
      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntshcore.so: error adding symbols: DSO missing from command line
       
      INFO: collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:954: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hsots' failed

      ldd output of /u01/app/oracle/product/12.1.0/dbhome_1/lib/libagtsh.so file shows following
      Install Oracle 12c on Ubuntu

      Important line is libclntsh.so.12.1 => not found. Run following command as root/ root equivalent user to rectify this

      sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntsh.so.12.1 /usr/lib/

      Now see the linking again
      Install Oracle 12c on Ubuntu

      Also we need to do changes in ins_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk and search for Linking HS OTS agent,
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add -lagtsh after $(HSOTS_LINKLINE)
      Install Oracle 12c on Ubuntu

      Further you need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file.
      First take the backup of file using following command

      cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk.original

      Now open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk using file editor and search for HSOTS_LINKLINE. You will see following lines in the file
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(OPT).

      Install oracle 12c on Ubuntu
      Click on retry to go further.

    23. Again you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'ssMemRealloc'
      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntshcore.so: error adding symbols: DSO missing from command line
       
      INFO: collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:948: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hsdepxa' failed

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for HSDEPXA_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(OPT).
      Install Oracle 12c on Ubuntu
      Click on retry to go further.

    24. Again you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libasmclntsh12.so: undefined reference to `clsCredInit'
      collect2: error:
      INFO:  ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:1152: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/amdu' failed
       
      INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/amdu] Error 1

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for AMDU_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(S0MAIN).
      Install Oracle 12c on Ubuntu
      Click on retry to go further.

    25. Again you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:1140: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/kfed' failed
       
      INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/kfed] Error 1

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for KFED_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(S0MAIN).
      Install Oracle 12c on Ubuntu
      Click on retry to go further.

    26. Again you will see an error as Error in invoking target ‘all_no_orcl’ of makefileInstall Oracle 12c on Ubuntu
      In the log file observed following line

      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:1164: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/renamedg' failed
       
      INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/renamedg] Error 1
       
      INFO: End output from spawned process.

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for KFNDG_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu
      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(S0MAIN).
      Install Oracle 12c on Ubuntu
      Click on retry to go further.

    27. This time you will see an error as Error in invoking target ‘utilities’ of makefile
      Install Oracle 12c on UbuntuIn the log file observed following line

      INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'nsdisc'
      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: error adding symbols: DSO missing from command line
       
      INFO: collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:927: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc' failed

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk and search for Linking external procedure agent.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -lagtsh

      after $(EXTPROC_LINKLINE).
      Install Oracle 12c on Ubuntu

      Also we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file.
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for EXTPROC_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

      -Wl,--no-as-needed

      after $(OPT).
      Install Oracle 12c on Ubuntu
      Click on retry to go further.

    28. This time you will see an error as Error in invoking target ‘install’ of makefile
      install oracle 12c on UbuntuIn the log file observed following line

      INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: undefined reference to symbol 'ztcr2rnd'
      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so: error adding symbols: DSO missing from command line
       
      INFO: collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk:27: recipe for target 'tnslsnr' failed
       
      INFO: make: *** [tnslsnr] Error 1

      For above we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk and search for Linking $(TNSLSNR).
      You will see following lines in the file.
      install oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

       -lnnz12 -lons

      after $(TNSLSNR_LINKLINE).
      install oracle 12c on Ubuntu
      Click on retry to go further.

    29. This time you will see an error as Error in invoking target ‘irman_oracle’ of makefile
      Install Oracle 12c on UbuntuIn the log file observed following line

      /u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrutl12.so: undefined reference to `lfieno'
      collect2: error: ld returned 1 exit status
       
      INFO: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk:788: recipe for target '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/oracle' failed
       
      INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/oracle] Error 1

      ldd output of /u01/app/oracle/product/12.1.0/dbhome_1/lib/libocrb12.so file shows following
      Install Oracle 12c on Ubuntu

      Important line is libocrutl12.so => not found. Run following command as root/ root equivalent user to rectify this

      sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libocrutl12.so /usr/lib

      Now see the linking again
      Install Oracle 12c on Ubuntu

      We also need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file
      Open /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk and search for ORACLE_LINKLINE.
      You will see following lines in the file.
      Install Oracle 12c on Ubuntu

      Now change it to as follows. Note that you need to add

       -Wl,--no-as-needed

      after $(ORACLE_LINKER).
      Install Oracle 12c on Ubuntu

      Click on retry to go further.

    30. Finally we have finished all the linking errors. Now as per the instructions run the following commands with root / root equivalent user:
      Install Oracle 12c on Ubuntu

      /u01/app/oraInventory/orainstRoot.sh

      Install Oracle 12c on Ubuntu

       

      /u01/app/oracle/product/12.1.0/dbhome_1/root.sh

      Install Oracle 12c on Ubuntu
      Click OK button of Execution Configuration Script windows to move ahead

    31. Now setup will start the Database Configuration wizard.
      Install Oracle 12c on Ubuntu
      Finally you will see following screens which confirms the successful installation. Remember the EM Database Express URL Install Oracle 12c on Ubuntu
    32. This is the final screen which shows that installation is completed successfully.
      Install Oracle 12c on Ubuntu
    33. As show earlier open a browser and type following URL in it and specify the user as sys and select as sysdba. Specify the password which we have entered during the installation process.
      https://db_ip:5500/em
      You will see following screens.
      Install Oracle 12c on Ubuntu Install Oracle 12c on Ubuntu
  9. Post Installation task
    First find the SID by reading /etc/oratab
    Sample output is as follows
    Install Oracle 12c on UbuntuIn above orcl is SID

    1. To start listener run following as oracle user
      export ORACLE_BASE=/u01/app/oracle
      export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
      export ORACLE_OWNR=oracle
      export PATH=$PATH:$ORACLE_HOME/bin
      export ORACLE_SID=orcl
      $ORACLE_HOME/bin/lsnrctl start
    2. To start database run following
      sqlplus /nolog
      connect sys as sysdba
      STARTUP;
      EXIT;
    3. To stop the database run following
      sqlplus /nolog
      connect sys as sysdba
      SHUTDOWN;
      EXIT;
    4. To stop listener run following
      $ORACLE_HOME/bin/lsnrctl stop

Hope you have like this article. Do let me know in case of any issue you have facing while following these steps.

If you find any missing point in here, please let us know in comment section or tweet us at @techienotecom. To get more articles like this, subscribe to our RSS feeds.

How to Install Oracle 12c on Ubuntu 15.04
Tagged on:         

44 thoughts on “How to Install Oracle 12c on Ubuntu 15.04

  • August 18, 2015 at 9:42 pm
    Permalink

    Thanks! very useful , errors were driving me crazy.

    Reply
  • August 21, 2015 at 10:23 am
    Permalink

    I got error INS-32012 unable to create directory /u01/app/oracle
    I tried these cmd
    chmod -R 755 /u01

    chown -R oracle:oinstall /u01

    but it still got error like this . Do you have any suggestion?
    Thank

    Reply
    • August 21, 2015 at 11:31 pm
      Permalink

      Hello John,

      Are you installing the DB with oracle user? Can you try to create a folder manually with the oracle user?

      Reply
  • August 22, 2015 at 12:10 am
    Permalink

    Thank you very much. Finally, I installed it successful . However , after I rebooted my laptop , I cannot use https://db_ip:5500/em anymore even I use following command :
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
    export ORACLE_OWNR=oracle
    export PATH=$PATH:$ORACLE_HOME/bin
    export ORACLE_SID=orcl
    $ORACLE_HOME/bin/lsnrctl start
    sqlplus /nolog
    connect sys as sysdba
    STARTUP;
    EXIT;
    Can you help me ? I try to google it , but some people use emctl to start agent . But I did not succeed with this command too.

    Reply
    • August 22, 2015 at 5:41 pm
      Permalink

      Welcome John. Can you let me know what is the output of $ORACLE_HOME/bin/lsnrctl start
      Please note that you need to run these commands through oracle user.

      Reply
      • August 22, 2015 at 11:51 pm
        Permalink

        Thanks admin very much. all problems were solved now . Very very useful.

        Reply
  • October 12, 2015 at 8:20 pm
    Permalink

    I keep getting an “Invalid Entry CRC” at 17% when copying the files. I did a cksum on the .zip files and they match the checksum that Oracle has posted when downloading the files. I have also tried re-downloading the files (and performed another cksum to make sure), but same thing. Any ideas? Thanks!

    Reply
    • February 27, 2016 at 9:33 pm
      Permalink

      I am trying to figure out the same exact issue. Was this resolved?

      Reply
  • Pingback: Ubuntu:Installing Oracle database 12c on Ubuntu 14.04 – Ubuntu Linux Questions

  • October 29, 2015 at 12:59 pm
    Permalink

    i keep getting this error PRVF-0002 : could not retrieve local node name at the start and then the program exit
    please how can i solve this

    Reply
    • October 30, 2015 at 12:01 am
      Permalink

      Kindly check the entries of the host name in /etc/hosts file

      Reply
  • November 8, 2015 at 8:34 am
    Permalink

    Hi, I installed successfully. Thanks for excellent notes.
    After reboot I cannot use https://db_ip:5500/em anymore even I use following command :
    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1
    export ORACLE_OWNR=oracle
    export PATH=$PATH:$ORACLE_HOME/bin
    export ORACLE_SID=orcl
    $ORACLE_HOME/bin/lsnrctl start

    Output:
    Copyright (c) 1991, 2014, Oracle. All rights reserved.

    Starting /u01/app/oracle/product/12.1.0/dbhome_1/bin/tnslsnr: please wait…

    TNSLSNR for Linux: Version 12.1.0.2.0 – Production
    System parameter file is /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
    Log messages written to /u01/app/oracle/diag/tnslsnr/Thirumal/listener/alert/log.xml
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Thirumal)(PORT=1521)))
    Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Thirumal)(PORT=1521)))
    STATUS of the LISTENER
    ————————
    Alias LISTENER
    Version TNSLSNR for Linux: Version 12.1.0.2.0 – Production
    Start Date 08-NOV-2015 08:30:36
    Uptime 0 days 0 hr. 0 min. 0 sec
    Trace Level off
    Security ON: Local OS Authentication
    SNMP OFF
    Listener Parameter File /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
    Listener Log File /u01/app/oracle/diag/tnslsnr/Thirumal/listener/alert/log.xml
    Listening Endpoints Summary…
    (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Thirumal)(PORT=1521)))
    (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
    The listener supports no services
    The command completed successfully

    Reply
  • November 10, 2015 at 7:19 pm
    Permalink

    hey John,

    Thank you for this !. I managed to follow all your steps and installed successfully. However im having difficulty logging in as loggin in using sys as sysdba gives me

    Logon denied; insufficient privileges or invalid username/password

    Can you help me with this ?

    Regards,
    Adrian Stephen

    Reply
  • November 14, 2015 at 12:52 am
    Permalink

    Perhaps the best website for Oracle installation on a Virtual Machine with Ubuntu. The step by step screenshots and explanation is simply superb.
    Thanks!

    Reply
  • November 14, 2015 at 2:17 am
    Permalink

    Thank very much. Its genial article

    Reply
  • November 18, 2015 at 5:29 pm
    Permalink

    Thanks it worked like a charm !!

    Reply
  • December 7, 2015 at 3:29 am
    Permalink

    thanks for that great thing!

    Reply
  • January 4, 2016 at 2:41 am
    Permalink

    Thanks so much for posting this – I spent a week trying to install 12c on a new MacBook Pro (2015 model) as a VM with no success (same VM copied from an older iMac works perfectly on the iMac).
    https://community.oracle.com/thread/3720393?start=0&tstart=0

    So I installed Ubuntu last night as a VM (using the install option in Parallels), and with the help of your article, just successfully installed 12c.

    Reply
  • January 9, 2016 at 5:39 am
    Permalink

    Hi,

    It is mentioned in step 8 that the one has to be logged in as an Oracle user. Can you please let me know how this is done?

    Thanks,
    Shruthi

    Reply
  • January 9, 2016 at 4:33 pm
    Permalink

    Hello,

    This is probably the best website for Oracle 12c installation on Ubuntu. I have the 14.04 LTS version of Ubuntu, and these steps worked like a charm! Thank you very much for the detailed explanations and screenshots, and more importantly, the steps for the resolution of the many errors.

    Wonderful job, team Techienote!

    Best wishes,
    Shruthi

    Reply
  • February 1, 2016 at 7:29 pm
    Permalink

    Thanks a ton. That worked like a charm.

    Reply
  • February 17, 2016 at 10:32 pm
    Permalink

    I got the “clsCredInit” missing symbol, too, but it wouldn’t go away until I added the last two libraries:

    ASMCLNT_LIBS=$(LLIBASMCLNT) $(LLIBCOMMON) $(LLIBSAGE) $(LLIBSKGXP) \
    $(LLIBGENERIC) -lhasgen12 -locr12

    Reply
  • February 29, 2016 at 7:27 pm
    Permalink

    Hi,

    After installation i cannot open url link. In etc/hosts i put my ip address and user name. Someone have this problem too ?

    my etc/hosts file is (xxx.xxx.xxx.xxx is my ip address) :
    127.0.0.1 localhost
    xxxx.xxx.xxx.xxx myName
    # The following lines are desirable for IPv6 capable hosts
    ::1 ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters

    and my url address is https://myName:5500/em but does not work

    Reply
  • March 3, 2016 at 5:39 am
    Permalink

    I followed step-by-step, may be 10 times, making sure that i did not miss anything. Sadly, enough did not get over those error pop-ups. So, guys, be informed. OK! You can call me stupid! But I was determined to make it work. Trust me! I did not miss a single step.

    BTW: At one point I decide to check the logs.

    INFO: gcc: error: Wl,–no-as-needed: No such file or directory

    The above error shows all over the place in the logs.

    While, I kept on updating the files inserting -Wl,–no-as-needed wherever it was called for. Incidentally, I can see this never worked throughout the installation.

    With that note, there has to be a missing article/step that results in the error shown in the log.

    Reply
  • March 3, 2016 at 6:14 am
    Permalink

    Following-up from my previous comment:
    As I indicated after going through every single step to updated related files, inserting -Wl,–no-as-needed, I kept getting the pop-ups – similar to those shown in article.

    Well, after I shared my comments of frustration, I decided to just click on Continue instead of Retry – By that time, I had gone through all required updates mentioned in this article. Incidentally, as I am surprised, the Linking Libraries continued without any errors to completion with Success.
    The subsequent steps required to finish the completed with total success, including configuring, creating database.

    I am surprised as well as very happy that it worked. I give full credit to this article.

    Reply
  • March 5, 2016 at 7:50 am
    Permalink

    hello ,
    i got an error “ora-12547 :TNS:lost contact” while the assistant is trying to configure the database
    anyone can help me please

    Reply
    • April 15, 2016 at 4:17 pm
      Permalink

      Hi David,

      You should run

      sudo apt-get install libaio1

      and you can create database correctly.

      Reply
  • March 21, 2016 at 4:15 am
    Permalink

    Love this step by step guide. Does anybody have any luck with creating new users? I am able to create a new user and grant all permissions no problem. Once I try to login on the local server or sql developer it always gives me username/password invalid.

    Reply
  • April 1, 2016 at 6:14 pm
    Permalink

    Many thanks it will a long process but finally got the job done.

    Reply
  • May 12, 2016 at 4:25 am
    Permalink

    Muy bueno, gracias por compartir tus conocimientos

    Reply
  • Pingback: Softwareentwicklung Jacek Kempski Oracle 12c on Ubuntu 16.04 - Softwareentwicklung Jacek Kempski

  • June 9, 2016 at 11:03 am
    Permalink

    hey , you are the best. This guide is perfect and accurate. Really thx for sharing.

    Grats

    GM

    Reply
  • June 13, 2016 at 12:23 am
    Permalink

    Simply awesome! i am newbie to LINUX and i have to say this is most concise installation guide i ever come across!

    Thank you very much mate

    Reply
  • June 15, 2016 at 9:26 pm
    Permalink

    Very nice tutorial. Worked for me on 14.04 getting 12c RDBMS installed. Can you point to a resource that would help me to understand how you came up with the required fixes for the linking problems. I would like to be able to solve this kind of issue on my own in the future.

    Thanks.

    Reply
  • July 29, 2016 at 12:55 am
    Permalink

    Excellent document! this cleared all my linking errors.

    Thanks a lot!

    Reply
  • August 16, 2016 at 11:30 pm
    Permalink

    hello vidhyasagar
    i am unable to install depencies as am getting errors saying E: Unable to locate package cpp-4.4
    E: Couldn’t find any package by glob ‘cpp-4.4’
    E: Couldn’t find any package by regex ‘cpp-4.4’
    E: Package ‘g++-4.4’ has no installation candidate
    E: Package ‘gcc-4.4’ has no installation candidate
    E: Package ‘gcc-4.4-base’ has no installation candidate
    E: Unable to locate package libbeecrypt7
    E: Package ‘libmotif4’ has no installation candidate
    E: Unable to locate package libqt4-core
    E: Unable to locate package libqt4-gui
    E: Package ‘libstdc++6-4.4-dev’ has no installation candidate
    E: Unable to locate package lsb-cxx
    E: Unable to locate package lsb-desktop
    E: Unable to locate package lsb-graphics
    can you please guide me through this

    Reply
  • December 30, 2016 at 4:23 pm
    Permalink

    Great!
    Works for installing Oracle 12 on Ubuntu Server 16 LTS.

    Thank you

    Reply
  • January 15, 2017 at 1:20 pm
    Permalink

    I am trying to Install oracle database on hp-ux machine. I did all the required system prerequisites and installed all the necessary patches. But I am getting the same error at 59% of installation progress,

    INFO: *** Error exit code 1

    INFO: End output from spawned process.
    INFO: ———————————-
    INFO: Exception thrown from action: make
    Exception Name: MakefileException
    Exception String: Error in invoking target ‘all_no_orcl’ of makefile ‘/u02/app/oracle/product/11.2.0/dbhome_3/rdbms/lib/ins_rdbms.mk’. See ‘/u02/app/oraInventory/logs/installActions2017-01-11_12-47-46PM.log’ for details.
    Exception Severity: 1

    Can i use the same method as you have used to fix this error? any idea on this? Please help me with this.

    Reply
  • January 30, 2017 at 2:06 am
    Permalink

    This post was incredibly helpful. I would have been clueless how to handle all of the linking errors and compiler flag issues without this guide. In addition to this resource, i consulted the following:

    https://gemsofprogramming.wordpress.com/2013/09/19/installing-oracle-12c-on-ubuntu-12-04-64-bit-a-hard-journey-but-its-worth-it/

    Prior to attempting the installation, I used dizwell’s mandela.sh script to prepare my system:
    https://www.dizwell.com/wordpress/technical-articles/oracle/install-oracle-12c-on-ubuntu-16-04/3/

    Reply

Leave a Reply to TechieNote Cancel reply

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

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recommend on Google