How I Simplified Oracle Database 12c and 11g Installations on Oracle Linux 6

Wesley13
• 阅读 822

How I Simplified Oracle Database 12_c_ and 11_g_ Installations on Oracle Linux 6

by Ginny Henningsen; updated by Michele Casey

How to simplify the installation of Oracle Database 12_c_ or 11_g_ on Oracle Linux 6 by installing the oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-11gR2-preinstall RPM package, which automatically performs a number of tasks, such as installing required software packages, resolving package dependencies, and modifying kernel parameters.

Published September 2012 (updated September 2017)

READ THIS FIRST: Important Changes Since Publication

While the content in this article is still valid, several details have changed.  For example:

 

 

Introducing the oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-preinstall RPM for Oracle Linux

Before installing Oracle Database 12_c_ or 11_g_ on a system, you need to preconfigure the operating environment since the database requires certain software packages, package versions, and tweaks to kernel parameters. (Be sure to review the appropriate Oracle Database installation guide to familiarize yourself with hardware, software, and operating system requirements.)

Want to comment on this article? Post the link on Facebook's OTN Garage page.  Have a similar article to share? Bring it up on Facebook or Twitter and let's discuss.

Note: This article applies to Oracle Linux 6. A previous article, "How I Simplified Oracle Database Installation on Oracle Linux," covered performing a similar task on versions of Oracle Linux 5.

On Oracle Linux, I discovered that there is a remarkably easy way to address these installation prerequisites: First, depending on your database version, install either the RPM package called oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-11gR2-preinstall. This RPM performs a number of preconfiguration steps, including the following:

  • Automatically downloading and installing any additional software packages and specific package versions needed for installing Oracle Grid Infrastructure and Oracle Database 12 c Release 1 (12.1) or 11_g_ Release 2 (11.2.0.3), with package dependencies resolved via yum or up2date capabilities.
  • Creating the user oracle and the groups oinstall (for OraInventory) and dba (for OSDBA), which are used during database installation. (For security purposes, this user has no password by default and cannot log in remotely. To enable remote login, please set a password using the passwd tool.)
  • Modifying kernel parameters in /etc/sysctl.conf to change settings for shared memory, semaphores, the maximum number of file descriptors, and so on.
  • Setting hard and soft shell resource limits in /etc/security/limits.conf, such as the locked-in memory address space, the number of open files, the number of processes, and core file size.
  • Setting numa=off in the kernel for x86_64 machines.

Note that oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-preinstall parses the existing /etc/sysctl.conf and /etc/security/limits.conf files and updates values only as needed for database installation. Any precustomized settings not related to database installation are left as is.

The oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-preinstall RPM packages are accessible through the Oracle Unbreakable Linux Network (ULN, which requires a support contract), from the Oracle Linux distribution media, or from the Oracle public yum repository. Thus, whether or not your system is registered with ULN to access Oracle patches and support, you can use oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-preinstall to simplify database installation on Oracle Linux. In addition, the Oracle public yum repository now includes all security and bug errata, ensuring systems are secured and stable with the latest security updates and bug fixes.

Installing the oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-11gR2-preinstall RPM

The remainder of this article steps through the procedure that I used for installing oracle-rdbms-server-11gR2-preinstall on Oracle Linux via the Oracle public yum repository. The same steps outlined in the following section can be used for either version of the preinstall RPM package. I started with a system running Oracle Linux Release 6 Update 4 for x86_64, a 64-bit version of Oracle Linux that I downloaded from the Oracle software delivery cloud (requires registration or login). First, I set up a yum configuration file that pointed to the correct repository, and then I installed the oracle-rdbms-server-11gR2-preinstall RPM from that repository.

Here are the steps for preconfiguring a system for Oracle Database installation using oracle-rdbms-server-11gR2-preinstall. Remember, the steps are the same when using the oracle-rdbms-server-12cR1-preinstall package; you simply need to change the name of the RPM package during the yum installation step.

  1. As an authorized user (for example, root), retrieve the file that configures repository locations:  

    # cd /etc/yum.repos.d

    wget http://yum.oracle.com/public-yum-ol6.repo

  2. Using a text editor, modify the file, changing the field enabled=0 to enabled=1 to reflect repositories that correspond to the machine's operating system release.  

    Here is an excerpt of public-yum-old6.repo with the changed lines in boldface.

    [ol6_latest]

    name=Oracle Linux $releasever Latest ($basearch)

    baseurl=http://yum.oracle.com/repo/OracleLinux/OL6/latest/$basearch/

    gpgkey=http://yum.oracle.com/RPM-GPG-KEY-oracle-ol6

    gpgcheck=1

    enabled=1

    [ol6_UEK_latest]

    name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever ($basearch)

    baseurl=http://yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/$basearch/

    gpgkey=http://yum.oracle.com/RPM-GPG-KEY-oracle-ol6

    gpgcheck=1

    enabled=1

     

    Because the target system is running Oracle Linux Release 6 Update 4 for x86_64, which installs the Oracle Unbreakable Enterprise Kernel by default, there are two repositories to enable, [ol6_latest] and [ol6_UEK_latest].

  3. Next, install the oracle-rdbms-server-11gR2-preinstall RPM using the yum install command. If you are using Oracle Database 12_c_, then you would type yum install.  

    The output in Listing 1 shows how the installation checks dependencies and then downloads and installs the required packages.

    # yum install oracle-rdbms-server-11gR2-preinstall

    Loaded plugins: refresh-packagekit, rhnplugin, security

    Setting up Install Process

    Resolving Dependencies

    --> Running transaction check

    ---> Package oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6 will be installed

    --> Processing Dependency: gcc-c++ for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: gcc for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: libaio-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: libstdc++-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: glibc-devel for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: compat-libstdc++-33 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: ksh for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Processing Dependency: compat-libcap1 for package: oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

    --> Running transaction check

    ---> Package compat-libcap1.x86_64 0:1.10-1 will be installed

    ---> Package compat-libstdc++-33.x86_64 0:3.2.3-69.el6 will be installed

    ---> Package gcc.x86_64 0:4.4.6-4.el6 will be installed

    --> Processing Dependency: cpp = 4.4.6-4.el6 for package: gcc-4.4.6-4.el6.x86_64

    --> Processing Dependency: cloog-ppl >= 0.15 for package: gcc-4.4.6-4.el6.x86_64

    ---> Package gcc-c++.x86_64 0:4.4.6-4.el6 will be installed

    --> Processing Dependency: libmpfr.so.1()(64bit) for package: gcc-c++-4.4.6-4.el6.x86_64

    ---> Package glibc-devel.x86_64 0:2.12-1.80.el6_3.4 will be installed

    --> Processing Dependency: glibc-headers = 2.12-1.80.el6_3.4 for package: glibc-devel-2.12-1.80.el6_3.4.x86_64

    --> Processing Dependency: glibc-headers for package: glibc-devel-2.12-1.80.el6_3.4.x86_64

    ---> Package ksh.x86_64 0:20100621-16.el6 will be installed

    ---> Package libaio-devel.x86_64 0:0.3.107-10.el6 will be installed

    ---> Package libstdc++-devel.x86_64 0:4.4.6-4.el6 will be installed

    --> Running transaction check

    ---> Package cloog-ppl.x86_64 0:0.15.7-1.2.el6 will be installed

    --> Processing Dependency: libppl_c.so.2()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64

    --> Processing Dependency: libppl.so.7()(64bit) for package: cloog-ppl-0.15.7-1.2.el6.x86_64

    ---> Package cpp.x86_64 0:4.4.6-4.el6 will be installed

    ---> Package glibc-headers.x86_64 0:2.12-1.80.el6_3.4 will be installed

    --> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.12-1.80.el6_3.4.x86_64

    --> Processing Dependency: kernel-headers for package: glibc-headers-2.12-1.80.el6_3.4.x86_64

    ---> Package mpfr.x86_64 0:2.4.1-6.el6 will be installed

    --> Running transaction check

    ---> Package kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek will be installed

    ---> Package ppl.x86_64 0:0.10.2-11.el6 will be installed

    --> Finished Dependency Resolution

    Dependencies Resolved

    ================================================================================

    Package Arch Version Repository Size

    ================================================================================

    Installing:

    oracle-rdbms-server-11gR2-preinstall

                                 x86\_64 1.0-6.el6              ol6\_latest  15 k
    

    Installing for dependencies:

    cloog-ppl x86_64 0.15.7-1.2.el6 ol6_latest 93 k

    compat-libcap1 x86_64 1.10-1 ol6_latest 17 k

    compat-libstdc++-33 x86_64 3.2.3-69.el6 ol6_latest 183 k

    cpp x86_64 4.4.6-4.el6 ol6_latest 3.7 M

    gcc x86_64 4.4.6-4.el6 ol6_latest 10 M

    gcc-c++ x86_64 4.4.6-4.el6 ol6_latest 4.7 M

    glibc-devel x86_64 2.12-1.80.el6_3.4 ol6_latest 970 k

    glibc-headers x86_64 2.12-1.80.el6_3.4 ol6_latest 600 k

    kernel-uek-headers x86_64 2.6.32-300.32.1.el6uek ol6_latest 713 k

    ksh x86_64 20100621-16.el6 ol6_latest 684 k

    libaio-devel x86_64 0.3.107-10.el6 ol6_latest 13 k

    libstdc++-devel x86_64 4.4.6-4.el6 ol6_latest 1.5 M

    mpfr x86_64 2.4.1-6.el6 ol6_latest 156 k

    ppl x86_64 0.10.2-11.el6 ol6_latest 1.3 M

    Transaction Summary

    ================================================================================

    Install 15 Package(s)

    Total download size: 25 M

    Installed size: 61 M

    Is this ok [y/N]: Downloading Packages:


    Total 710 kB/s | 25 MB 00:35

    Running rpm_check_debug

    Running Transaction Test

    Transaction Test Succeeded

    Running Transaction

    Installing : mpfr-2.4.1-6.el6.x86_64 1/15

    Installing : libstdc++-devel-4.4.6-4.el6.x86_64 2/15

    Installing : cpp-4.4.6-4.el6.x86_64 3/15

    Installing : ppl-0.10.2-11.el6.x86_64 4/15

    Installing : cloog-ppl-0.15.7-1.2.el6.x86_64 5/15

    Installing : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64 6/15

    Installing : glibc-headers-2.12-1.80.el6_3.4.x86_64 7/15

    Installing : glibc-devel-2.12-1.80.el6_3.4.x86_64 8/15

    Installing : gcc-4.4.6-4.el6.x86_64 9/15

    Installing : gcc-c++-4.4.6-4.el6.x86_64 10/15

    Installing : compat-libstdc++-33-3.2.3-69.el6.x86_64 11/15

    Installing : libaio-devel-0.3.107-10.el6.x86_64 12/15

    Installing : ksh-20100621-16.el6.x86_64 13/15

    Installing : compat-libcap1-1.10-1.x86_64 14/15

    Installing : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 15/15

    Verifying : gcc-4.4.6-4.el6.x86_64 1/15

    Verifying : compat-libcap1-1.10-1.x86_64 2/15

    Verifying : ksh-20100621-16.el6.x86_64 3/15

    Verifying : glibc-devel-2.12-1.80.el6_3.4.x86_64 4/15

    Verifying : libaio-devel-0.3.107-10.el6.x86_64 5/15

    Verifying : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64 6/15

    Verifying : gcc-c++-4.4.6-4.el6.x86_64 7/15

    Verifying : glibc-headers-2.12-1.80.el6_3.4.x86_64 8/15

    Verifying : libstdc++-devel-4.4.6-4.el6.x86_64 9/15

    Verifying : compat-libstdc++-33-3.2.3-69.el6.x86_64 10/15

    Verifying : mpfr-2.4.1-6.el6.x86_64 11/15

    Verifying : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64 12/15

    Verifying : cpp-4.4.6-4.el6.x86_64 13/15

    Verifying : ppl-0.10.2-11.el6.x86_64 14/15

    Verifying : cloog-ppl-0.15.7-1.2.el6.x86_64 15/15

    Installed:

    oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6

    Dependency Installed:

    cloog-ppl.x86_64 0:0.15.7-1.2.el6

    compat-libcap1.x86_64 0:1.10-1

    compat-libstdc++-33.x86_64 0:3.2.3-69.el6

    cpp.x86_64 0:4.4.6-4.el6

    gcc.x86_64 0:4.4.6-4.el6

    gcc-c++.x86_64 0:4.4.6-4.el6

    glibc-devel.x86_64 0:2.12-1.80.el6_3.4

    glibc-headers.x86_64 0:2.12-1.80.el6_3.4

    kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek

    ksh.x86_64 0:20100621-16.el6

    libaio-devel.x86_64 0:0.3.107-10.el6

    libstdc++-devel.x86_64 0:4.4.6-4.el6

    mpfr.x86_64 0:2.4.1-6.el6

    ppl.x86_64 0:0.10.2-11.el6

    Complete!

    Listing 1: Installing the oracle-rdbms-server-11gR2-preinstall RPM

    The yum installation logs messages about kernel changes in the file /var/log/oracle-rdbms-server-11gR2-preinstall/results/orakernel.log, and it makes backups of current system settings in the directory /var/log/oracle-rdbms-server-11gR2-preinstall/backup.

  4. At this point, the system is ready for the installation of Oracle Database. For example, to install Oracle Database 11_g_ Release 2, follow the directions in Chapter 4, "Installing Oracle Database," of the Database Installation Guide for Linux."  

    Here are the steps I followed while installing Oracle Database 11_g_ Release 2 in my test environment. Make sure you review all documentation and follow recommended best practices before installing into your production environment.

    1. As root, create a parent directory in a file system that has sufficient space to be the target location for the downloaded files:  

      # mkdir /home/OraDB11g

      cd /home/OraDB11g

       

      The amount of disk space needed in the file system varies according to the specific installation type, but roughly twice the size of the zip archives, or 5 GB, is enough to house the software and data files.

    2. Into this target directory, download the installation media files from the Oracle Database Software Downloads page on Oracle Technology Network.

    3. Extract the files:  

      # unzip linux.x64_11gR2_database_1of2.zip

      unzip linux.x64_11gR2_database_2of2.zip

    4. Log in as the user oracle. Change directory to the database directory and enter the following command to run the Oracle Universal Installer:  

      $ cd /home/OraDB11g/database

      $ ./runInstaller

    The Oracle Universal Installer performs a number of checks, verifying that the necessary OS packages and versions are installed. In addition, it checks kernel parameters set by the oracle-rdbms-server-11gR2-preinstall installation. During the kernel settings check, the installer might flag a few settings as "failed," and you should investigate these failures. In some cases, you still might be able to continue with the database installation. If you check kernel settings in /etc/sysctl.conf, you'll see that oracle-rdbms-server-11gR2-preinstall has modified and added the necessary settings to ensure the minimum requirements are met, as defined in section 2.10.1, "Displaying and Changing Kernel Parameter Values," in Chapter 2, "Oracle Database Preinstallation Requirements," of the Oracle Database Installation Guide 11g Release2 (11.2) for Linux. Below is the list of requirements:

    fs.aio-max-nr = 1048576

    fs.file-max = 6815744

    kernel.shmall = 2097152

    kernel.shmmax = 4294967295

    kernel.shmmni = 4096

    kernel.sem = 250 32000 100 128

    net.ipv4.ip_local_port_range = 9000 65500

    net.core.rmem_default = 262144

    net.core.rmem_max = 4194304

    net.core.wmem_default = 262144

    net.core.wmem_max = 1048576

     

    If necessary, you can (as root) edit the file /etc/sysctl.conf to specify a setting manually, for example:

    # vi /etc/sysctl.conf

    /sbin/sysctl -p

     

    The Oracle Universal Installer performs additional checks, such as verifying the glibc version, sufficient disk space, environmental variable and path settings, and sufficient physical memory and swap space. Generally, installing oracle-rdbms-server-11gR2-preinstall takes care of the prerequisites so that you can proceed directly with installing the database.

Final Thoughts

Installing the oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-preinstall RPMs can save time when installing Oracle Database 12_c_ and 11_g_ on Oracle Linux. These RPMs address most Oracle Database installation prerequisites and greatly simplify the installation process.

See Also

Here are the resources referenced earlier in this document:

And here are some additional resources from the Oracle Database Documentation Library (http://www.oracle.com/pls/db112/homepage). Relevant subsections from the _Oracle Database Installation Guide 11_g Release 2 (11.2) for Linux (http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/toc.htm) with currently valid URLs are as follows:

Also see the blog entry "Oracle RDBMS Server 11_g_R2 Pre-Install RPM for Oracle Linux 6 has been released": https://blogs.oracle.com/linux/entry/oracle_rdbms_server_11gr2_pre

About the Authors

Ginny Henningsen has worked for the last 15 years as a freelance writer developing technical collateral and documentation for high-tech companies. Prior to that, Ginny worked for Sun Microsystems, Inc. as a Systems Engineer in King of Prussia, PA and Milwaukee, WI. Ginny has a BA from Carnegie-Mellon University and a MSCS from Villanova University.

Michele Casey is the Director of Product Management for Oracle Linux. She has worked with commercial Linux distributions and open source projects as a product manager since 2006. She has also held positions as a system administrator, project manager, and technical support engineer.

Revision 1.1, 07/09/2013; added information about using the
oracle-rdbms-server-12cR1-preinstall package to install
Oracle Database 12_c_

Follow us:

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
Java获得今日零时零分零秒的时间(Date型)
publicDatezeroTime()throwsParseException{    DatetimenewDate();    SimpleDateFormatsimpnewSimpleDateFormat("yyyyMMdd00:00:00");    SimpleDateFormatsimp2newS
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这