0

0

在Red Hat Enterprise Linux 7.0 x86_64下安装Oracle 12c R1数据库

php中文网

php中文网

发布时间:2016-06-07 16:40:39

|

2336人浏览过

|

来源于php中文网

原创

Oracle12c数据库去年发布,RHEL7今年也出来了,作为技术人员,总是需要了解的,以下是安装过程,记录下来以备后续使用。

oracle12c数据库去年发布,rhel7今年也出来了,作为技术人员,总是需要了解的,以下是安装过程,记录下来以备后续使用。   
    要想顺利的安装oracle,最好当然是参考oracle公司的用户指南,用户指南可以在oracle公司的官方网站下载:
   
    也可以阅读在线文档:
   
    目前oracle12c数据库官方是不支持rhel7的,所以只能参考下rhel6的了.
    oracle12c数据库下载地址:
   


    安装oracle有以下步骤:
    1>.安装linux作业系统.
    2>.配置linux系统下oracle的安装环境.
    3>.安装oracle软件与数据库.
    4>.测试运行安装的oracle系统.


    一.安装linux.
    1.系统环境需求
    内存:最小1gb,推荐2gb或以上
    交换空间: 内存大小是1-2gb时,交换空间是内存的1.5倍,内存大小2-16gb时,交换空间等于内存大小,内存大小16g以上时,交换空间为16gb.
    需要选择以下组件:gnome桌面、编辑器、开发工具、开发库等。
    2.安装linux
    使用安装光盘安装redhat enterprise linux 7.0 x86_64,为方便测试,可以使用vmware workstation虚拟一台机器,,在虚拟机上安装。
    3.设置主机域名解析
    安装linux后需使用静态ip地址,并在/etc/hosts文件中设置主机域名解析(ip地址 主机名称)
    # vi /etc/hosts
    192.168.1.66 hostname


    二.配置linux系统下oracle的安装环境.
    1.检查和更新所需软件包.
    安装好linux系统后需要配置一下系统。因oracle在linux下与windows下有些不同,在linux下安装时有部分程序需要与linux的程序包重新编译和链接,所以需要有编译器等软件包。需要用到的软件包在oracle的用户指南中有说明.以root身份登录linux后执行以下命令检查软件包是否都已安装:
    # rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel
    # rpm -q libaio libaio-devel libxext libxtst libx11 libxau libxcb libxi make sysstat
    如果系统有软件包没有安装,可以在redhat enterprise linux 7.0的光盘packages目录中找到,安装这些包。
    例如安装软件包:
    # rpm -ivh compat-libstdc++-33-3.2.3-69.el6.i686.rpm


    oracle官方文档中确定要安装的包如下:
    binutils-2.20.51.0.2-5.11.el6 (x86_64)
    compat-libcap1-1.10-1 (x86_64)
    compat-libstdc++-33-3.2.3-69.el6 (x86_64)
    compat-libstdc++-33-3.2.3-69.el6 (i686)
    gcc-4.4.4-13.el6 (x86_64)
    gcc-c++-4.4.4-13.el6 (x86_64)
    glibc-2.12-1.7.el6 (i686)
    glibc-2.12-1.7.el6 (x86_64)
    glibc-devel-2.12-1.7.el6 (x86_64)
    glibc-devel-2.12-1.7.el6 (i686)
    ksh
    libgcc-4.4.4-13.el6 (i686)
    libgcc-4.4.4-13.el6 (x86_64)
    libstdc++-4.4.4-13.el6 (x86_64)
    libstdc++-4.4.4-13.el6 (i686)
    libstdc++-devel-4.4.4-13.el6 (x86_64)
    libstdc++-devel-4.4.4-13.el6 (i686)
    libaio-0.3.107-10.el6 (x86_64)
    libaio-0.3.107-10.el6 (i686)
    libaio-devel-0.3.107-10.el6 (x86_64)
    libaio-devel-0.3.107-10.el6 (i686)
    libxext-1.1 (x86_64)
    libxext-1.1 (i686)
    libxtst-1.0.99.2 (x86_64)
    libxtst-1.0.99.2 (i686)
    libx11-1.3 (x86_64)
    libx11-1.3 (i686)
    libxau-1.0.5 (x86_64)
    libxau-1.0.5 (i686)
    libxcb-1.5 (x86_64)
    libxcb-1.5 (i686)
    libxi-1.3 (x86_64)
    libxi-1.3 (i686)
    make-3.81-19.el6
    sysstat-9.0.4-11.el6 (x86_64)
    注:(1)安装glibc-2.17-55.el7.i686.rpm时,因为依赖包相互依赖,需要与依赖包同时安装:
    rpm -ivh glibc-2.17-55.el7.i686.rpm nss-softokn-freebl-3.15.4-2.el7.i686.rpm
    (2)rhel7中缺少包compat-libstdc++-33,可以在rhel6中找到.
    (3)在oracle数据库软件安装时,ksh实际是用的pdksh,但ksh也是可以使用的,只是安装时会有警告,pdksh是一个早期的软件包,可以在以下网站找到.
   
    (4)建议安装zlib-devel,不然后续可能会出错。推荐安装unixodbc


    2.验证系统要求
    查看内存大小
    # grep memtotal /proc/meminfo
    查看交换空间
    # grep swaptotal /proc/meminfo
    查看磁盘空间,oracle 12c r1 x64企业版的磁盘空间要求6.4gb以上。
    # df -h


    3.创建oracle组和用户帐户
    需要创建以下组和用户:
    the oracle inventory group (typically, oinstall)
    the osdba group (typically, dba)
    the oracle software owner (typically, oracle)
    the osoper group (optional. typically, oper)


    # groupadd oinstall
    # groupadd dba
    # groupadd oper
    # useradd -g oinstall -g dba,oper oracle
    # passwd oracle


    4.配置内核参数
    以root身份登录系统,根据用户指南配置以下参数:
    修改文件/usr/lib/sysctl.conf,添加以下内容:
    # vi /usr/lib/sysctl.conf
    # for oracle
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 2147483648
    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 = 1048586

    执行以下命令时参数生效:
    # /sbin/sysctl -p


    注: 内核参数设置可以在安装oracle时产生的脚本修复。


    登录oracle帐号检查资源限制.
    $ ulimit -sn
    $ ulimit -hn
    $ ulimit -su
    $ ulimit -hu
    $ ulimit -ss
    $ ulimit -hs


    修改文件/etc/security/limits.conf,更改资源限制,添加以下内容:
    # vi /etc/security/limits.conf
    # for oracle
    oracle              soft    nproc   2047
    oracle              hard    nproc   16384
    oracle              soft    nofile  1024
    oracle              hard    nofile  65536
    oracle              soft    stack   10240
    oracle              hard    stack   32768


    5.创建oracle base目录:
    # mkdir -p /u01/app/
    # chown -r oracle:oinstall /u01/app/
    # chmod -r 775 /u01/app/


    6.编辑oracle用户环境,编辑.bash_profile文件
    # su - oracle
    $ vi .bash_profile
    编辑.bash_profile文件,添加以下内容
    # for oracle
    export display=:0.0
    export tmp=/tmp;
    export tmpdir=$tmp;
    export oracle_base=/u01/app/oracle;
    export oracle_home=$oracle_base/product/12.1.0/db_1;
    export oracle_sid=sales;
    export oracle_term=xterm;
    export path=/usr/sbin:$path;
    export path=$oracle_home/bin:$path;
    export ld_library_path=$oracle_home/lib:/lib:/usr/lib;
    export classpath=$oracle_home/jre:$oracle_home/jlib:$oracle_home/rdbms/jlib;
   
    配置生效
    $ source .bash_profile


    三.安装oracle软件与数据库
    1.安装oracle软件(12.1.0.1版本)
    将oracle的安装文件linuxamd64_12c_database_1of2.zip与linuxamd64_12c_database_2of2.zip解压缩.
    # unzip linuxamd64_12c_database_1of2.zip
    # unzip linuxamd64_12c_database_2of2.zip


    以oracle用户身份登录系统安装oracle,为避免出现中文乱码,安装前可以执行export lang="",显示英文,
    $ export lang=""
    $ cd database
    $ ./runinstaller
    在安装时选择只安装oracle软件。


    在安装时,会出现以下错误:
    [ins-13001]environment does not meet minimum requirements.
    日志文件显示
    severe: cvu do not support target environment..
    refer associated stacktrace #oracle.install.ivw.common.validator.supportedosvalidator:451
    info: completed verification of target environment.
    warning: verification of target environment returned with errors.
    warning: [warning] [ins-13001] environment does not meet minimum requirements.
       cause: minimum requirements were not met for this environment
       action: either check the logs for more information or check the supported configurations for this product..
    refer associated stacktrace #oracle.install.commons.util.exception.defaulterroradvisor:454


    应该集群环境验证不通过,可能需要补丁,目前oracle12c刚出,应该还没有补丁,当然直接跳过也可以继续执行安装.
    这里直接继续执行安装.


    安装时出现的错误:
    错误(1):
    error in invoking target 'links proc gen_pcscfg procob' of makefile '/u01/app/oracle/product/12.1.0/db_1/precomp/lib/ins_precomp.mk'.
    由于oracle12c官方还不支持rhel7系统,在新版系统下会表现出此错误.
    解决方案参考网上的方法:
   
    保留安装进程,另外开启一个终端窗口,修改文件env_rdbms.mk内容.
    # rm -rf /u01/app/oracle/product/12.1.0/db_1/lib/stubs/*
    # cp /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk.orig
    # vi /u01/app/oracle/product/12.1.0/db_1/rdbms/lib/env_rdbms.mk
    # line 176
    # from:
    linkttlibs=$(llibclntsh) $(oraclettlibs) $(linkldlibs)
    # to  :
    linkttlibs=$(llibclntsh) $(oraclettlibs) $(linkldlibs) -lons
    # line 279-280
    # from:
    link=$(fort_cmd) $(purecmds) $(orald) $(ldflags) $(compsobjs)
    link32=$(fort_cmd) $(purecmds) $(orald) $(ldflags32) $(compsobjs)
    # to  :
    link=$(fort_cmd) $(purecmds) $(orald) $(ldflags) $(compsobjs) -wl,--no-as-needed
    link32=$(fort_cmd) $(purecmds) $(orald) $(ldflags32) $(compsobjs) -wl,--no-as-needed
    # line 3041-3042
    # from:
    tg4pwd_linkline= $(link) $(opt) $(tg4pwdmai) \
            $(llibthread) $(llibclntsh) $(linkldlibs)
    # to  :
    tg4pwd_linkline= $(link) $(opt) $(tg4pwdmai) \
            $(llibthread) $(llibclntsh) $(linkldlibs) -lnnz12
    然后在安装进程中点击retry即可。


    错误(2):
    error in invoking target 'install' of makefile '/u01/app/oracle/product/12.1.0/db_1/ctx/lib/ins_ctx.mk'.
    解决方案参考:
   
    保留安装进程,另外开启一个终端窗口,修改文件env_ctx.mk内容.
    # rm -rf /u01/app/oracle/product/12.1.0/db_1/lib/stubs/*
    # cp /u01/app/oracle/product/12.1.0/db_1/ctx/lib/env_ctx.mk /u01/app/oracle/product/12.1.0/db_1/ctx/lib/env_ctx.mk.orig
    # vi /u01/app/oracle/product/12.1.0/db_1/ctx/lib/env_ctx.mk
    # line 154
    # from:
    link=$(ldccom)
    # to  :
    link=$(ldccom) -wl,--no-as-needed
    然后在安装进程中点击retry即可。
    但似乎还是不行,查看日志文件的错误信息:
    info: /usr/bin/ld: cannot find -lz
    collect2: error: ld returned 1 exit status
    info: make: *** [ctxhx] eccvror 1
    似乎是zlib的问题,保留安装进程,另外开启一个终端窗口,查看已安装zlib,未安装zlib-devel,安装zlib-devel试试。
    # rpm -ivh zlib-devel-1.2.7-13.el7.x86_64.rpm
    然后在安装进程中点击retry通过。


    安装最后步骤按提示在root用户下执行脚本.
    # /u01/app/orainventory/orainstroot.sh
    # /u01/app/oracle/product/12.1.0/db_1/root.sh


    2.安装数据库
    oracle软件安装完后,需要执行命令netca配置监听器.
    $ netca
    在图形界面中按提示配置监听器.
    然后执行命令dbca安装数据库.
    $ dbca
    在图形界面中按提示安装数据库就可以了。


    四.测试运行安装的oracle系统
    数据库安装完后监听器与数据库实例就已启动。执行以下测试监听器与实例.
    $ lsnrctl stop
    $ lsnrctl start
    $ sqlplus /nolog
    sql> connect / as sysdba;
    sql> shutdown
    sql> startup
    执行其它sql语句测试数据库.

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

Sesame AI
Sesame AI

一款开创性的语音AI伴侣,具备先进的自然对话能力和独特个性。

下载

Oracle性能优化 之 共享池

本文永久更新链接地址:

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
go语言 注释编码
go语言 注释编码

本专题整合了go语言注释、注释规范等等内容,阅读专题下面的文章了解更多详细内容。

2

2026.01.31

go语言 math包
go语言 math包

本专题整合了go语言math包相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

go语言输入函数
go语言输入函数

本专题整合了go语言输入相关教程内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

golang 循环遍历
golang 循环遍历

本专题整合了golang循环遍历相关教程,阅读专题下面的文章了解更多详细内容。

0

2026.01.31

Golang人工智能合集
Golang人工智能合集

本专题整合了Golang人工智能相关内容,阅读专题下面的文章了解更多详细内容。

1

2026.01.31

2026赚钱平台入口大全
2026赚钱平台入口大全

2026年最新赚钱平台入口汇总,涵盖任务众包、内容创作、电商运营、技能变现等多类正规渠道,助你轻松开启副业增收之路。阅读专题下面的文章了解更多详细内容。

76

2026.01.31

高干文在线阅读网站大全
高干文在线阅读网站大全

汇集热门1v1高干文免费阅读资源,涵盖都市言情、京味大院、军旅高干等经典题材,情节紧凑、人物鲜明。阅读专题下面的文章了解更多详细内容。

73

2026.01.31

无需付费的漫画app大全
无需付费的漫画app大全

想找真正免费又无套路的漫画App?本合集精选多款永久免费、资源丰富、无广告干扰的优质漫画应用,涵盖国漫、日漫、韩漫及经典老番,满足各类阅读需求。阅读专题下面的文章了解更多详细内容。

67

2026.01.31

漫画免费在线观看地址大全
漫画免费在线观看地址大全

想找免费又资源丰富的漫画网站?本合集精选2025-2026年热门平台,涵盖国漫、日漫、韩漫等多类型作品,支持高清流畅阅读与离线缓存。阅读专题下面的文章了解更多详细内容。

19

2026.01.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
誉天教育RHCE视频教程
誉天教育RHCE视频教程

共9课时 | 1.4万人学习

尚观Linux RHCE视频教程(二)
尚观Linux RHCE视频教程(二)

共34课时 | 5.8万人学习

尚观RHCE视频教程(一)
尚观RHCE视频教程(一)

共28课时 | 4.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号