RedHat Enterprise Linux 7下安装 Oracle 12C

    

    说明:本安装虚拟机下操作完成的,为了保证安装成功,请下载oracle 12.1.0.2.0版。

    对于12.1.0.1.0版,笔者对它多次测试后,发现安装过程有很多错误提示,如 "error in invoking target install of makefile ",

"[ins-13001]环境不满足最低要求"等错误,通过反复操作笔者未能全部解决相关错误,尽管安装时可以通过放弃等方式完成安装。所以笔者认为,这一版本可能还是存在一些Bug.所以强列建议下载12.1.0.2.0进行安装测试。

有兴趣研究这一版本,可以参考

    http://blog.itpub.net/27099995/viewspace-1258842/

    http://www.fairtec.at/de/it-blog-mainmenu-16/169

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



一、安装准备

1、帮助文档

http://docs.oracle.com/database/121/LTDQI/toc.htm#CEGHFFGG

2、软件下载

Oracle 12C (12.1.0.2.0) - Enterprise Edition

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html?ssSourceSiteId=ocomen

3、将下载的软件通过WinSCP上传到/tmp目录下

RedHat Enterprise Linux 7下安装 Oracle 12C

Oracle 12C数据库文件:

linuxamd64_12102_database_1of2.zip 

linuxamd64_12102_database_2of2.zip 

安装脚本文件:

RootSetup.sh:完成安装前root用户进行的相关设置,文件内容如下图:

脚本下载:http://ycrsjxy.blog.51cto.com/618627/1598938

RedHat Enterprise Linux 7下安装 Oracle 12C


OracleSetup.sh:完成安装前oracle用户进行的相关设置,文件内容如下图:

RedHat Enterprise Linux 7下安装 Oracle 12C


注意如果以上两个文件是在Windows下进行编辑完成的,上传到linux后,须用

dos2unix进行转换。运行dos2unix必须安装dos2unix程序包。


二、安装过程

以下操作root用户环境下完成

1、挂载Redhat 7光盘,建立Yum源,为添加oracle12c程序包作准备。

    1、mkdir /media/cdom

    2、mount -t iso9660 /dev/sr0 /media/cdrom

    3、vim /etc/yum.repos.d/rhel-deguginfo.repo


[rhel-debuginfo]

name=Red Hat Enterprise Linux $releasever - $basearch - Debug

baseurl=file:///media/cdrom

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


2、修改/tmp下脚本文件的权限

    cd /tmp

    chmod 755 /tmp/RootSetup.sh /tmp/OracleSetup.sh

    如下图

RedHat Enterprise Linux 7下安装 Oracle 12C


3、解压Oracle程序文件,文件将解压到/tmp/database文件夹下

    unzip linuxamd64_12102_database_1of2.zip && unzip linuxamd64_12102_database_2of2.zip 


4、检查所需安装包的安装情况

    rpm -q binutils compat-libcap1 compat-libstdc++  gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel

    如果出现包未安装的提示,请用yum install 包名进行安装。

    yum install compat-libstdc++*


5、运行脚本RootSetup.sh完成相关设置

   ./RootSetup.sh


6、修改 /etc/hosts,增加主机名为“redhat7”

127.0.0.1   localhost localhost.localdomain localhost4 redhat7

::1         localhost localhost.localdomain localhost6 redhat7

192.168.0.248 redhat7

  此时,root用户下的相关设置已经完成,可以通过查看/etc/sysctl.conf /etc/security/limits.conf, /etc/pam.d/login的文件内容是否修改,查看/etc/passwd内容检查

用户否建立,以及/u01/app目录是否建立。

 


以下操作是oracle用户下进行

7、切换到oracle

    su - oracle(注意-和oracle之间要有空格)


8、运行/tmp/OracleSetup.sh脚本,完成相关操作

    cd /tmp

    ./OracleSetup.sh

此时Oracle安装前的相关操作已经完成,可以通过cat ~/.bash_profile查看文件内容是否变化,可以运行env查看环境变量的情况,以及运行 source ~/.bash_profile让环境变量发生作用。

RedHat Enterprise Linux 7下安装 Oracle 12C


9、重启计算机,以oracle用户登录,相关语言设置选择英语。


Oracle 12C安装过程

10、切换到终端方式下,运行Oracle 12c安装程序

    cd /tmp/database

    ./runInstaller

11、相关截图如下

RedHat Enterprise Linux 7下安装 Oracle 12C

不选择“I Wish”


RedHat Enterprise Linux 7下安装 Oracle 12C



RedHat Enterprise Linux 7下安装 Oracle 12C


RedHat Enterprise Linux 7下安装 Oracle 12C

在下图中,注意查看相关设置,是否和.bash_profile文件一致。同时,输入Global database name,设置administrative password密码。

RedHat Enterprise Linux 7下安装 Oracle 12C


RedHat Enterprise Linux 7下安装 Oracle 12C

如果在下图检测出来错误,注意分析错误原因。大部分错误原因是所需安装包没有安装,或是环境变量错误,以及相关参数错。可以通过查相看/etc/sysctl.conf和oracle用户的.bash_profile的内容,以及通过rpm -q来查看包的安装情况,用yum install 完成包的安装。


RedHat Enterprise Linux 7下安装 Oracle 12C

出现下图时:

RedHat Enterprise Linux 7下安装 Oracle 12C



在终端方式下,切换到root用户,运行如下命令:

    su - root

    /u01/app/oraInventory/orainstRoot.sh 

   /u01/app/oracle/product/12c/root.sh 相关提示,直接回车完成设置。

RedHat Enterprise Linux 7下安装 Oracle 12C


RedHat Enterprise Linux 7下安装 Oracle 12C

选择Password management设置用户口令:

RedHat Enterprise Linux 7下安装 Oracle 12C

 完成安装。

三、测试Oracle安装

1、运行lnsrctl start启动监听程序

RedHat Enterprise Linux 7下安装 Oracle 12C

2、运行 sqlplus sys as sysdba 连接oracle

RedHat Enterprise Linux 7下安装 Oracle 12C

3、在linux终端下,运行ps aux 可以查看到很多oracle相关进程。


















本文转自ycrsjxy51CTO博客,原文链接:http://blog.51cto.com/ycrsjxy/1598712,如需转载请自行联系原作者


上一篇:Linux_Bash脚本基础


下一篇:nginx如何使用预编译变量