zoukankan      html  css  js  c++  java
  • Ubuntu 12.04 安装 Oracle 11G

    经过N天的折腾。。终于算是让oracle11G在ubuntu12.04上跑起来了。
    下面是安装过程。。
    参考资料
    http://edin.no-ip.com/blog/hswong3i/oracle-database-11g-release-2-ubuntu-12-04-howto

    1.首先,将系统更新到最新

    代码:
    sudo apt-get update
    sudo apt-get dist-upgrade



    2.安装依赖包

    代码:
    sudo apt-get install alien binutils build-essential cpp-4.4 debhelper g++-4.4 gawk gcc-4.4 gcc-4.4-base gettext html2text ia32-libs intltool-debian ksh lesstif2 lib32bz2-dev lib32z1-dev libaio-dev libaio1 libbeecrypt7 libc6 libc6-dev libc6-dev-i386 libdb4.8 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 lsb-qt4 make odbcinst pax po-debconf rpm rpm-common sysstat unixodbc unixodbc-dev unzip



    3.创建用户(可选,我就是用自己的账户安装成功的)

    4.检查系统变量

    代码:
    /sbin/sysctl -a | grep sem
    /sbin/sysctl -a | grep shm
    /sbin/sysctl -a | grep file-max
    /sbin/sysctl -a | grep aio-max
    /sbin/sysctl -a | grep ip_local_port_range
    /sbin/sysctl -a | grep rmem_default
    /sbin/sysctl -a | grep rmem_max
    /sbin/sysctl -a | grep wmem_default
    /sbin/sysctl -a | grep wmem_max



    然后根据结果在/etc/sysctl.conf中增加对应数据

    代码:
    fs.aio-max-nr = 1048576
    fs.file-max = 6815744
    kernel.shmall = 2097152
    kernel.shmmax = 536870912
    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



    运行一下命令更新内核参数

    代码:
    sysctl -p



    5.添加对oracle用户的内核限制
    在 /etc/security/limits.conf 文件中增加以下数据

    代码:
    oracle              soft    nproc   2047
    oracle              hard    nproc   16384
    oracle              soft    nofile  1024
    oracle              hard    nofile  65536
    oracle              soft    stack   10240



    其中oracle是在第三步中创建的用户,跳过第三步的话就写当前用户

    查看/etc/pam.d/login,增加以下行(有了就不用增加了)

    代码:
    session required pam_limits.so



    同样检查/etc/pam.d/su,没有以下行就自己加上

    代码:
    session required pam_limits.so



    6.创建需要的文件夹(用于安装oracle)

    代码:
    mkdir ~/Oracle/oracle11g
    mkdir ~/Oracle/oradata



    然后用 chmod -R 命令将Oracle的所有者和用户组设置成自己的用户

    7.配置环境变量
    在~/.bashrc中增加以下环境变量(最好把~替换成绝对路径)

    代码:
    #这个写刚刚创建的文件夹
    export ORACLE_BASE=~/Oracle/oracle11g
    #这个后面(貌似)可以随便填写
    export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
    #数据库的sid
    export ORACLE_SID="orcl"
    #默认字符集
    export NLS_LANG=.AL32UTF8



    8.欺骗oracle的安装程序

    代码:
    mkdir /usr/lib64
    ln -s /etc /etc/rc.d
    ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/
    ln -s /usr/bin/awk /bin/awk
    ln -s /usr/bin/basename /bin/basename
    ln -s /usr/bin/rpm /bin/rpm
    ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/
    ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/

    echo 'Red Hat Linux release 5' > /etc/redhat-release



    9.重启电脑(可选,我没重启也安装成功~)

    10.运行安装程序

    代码:
    cd /XXX/XXX/XXX
    ./runInstaller



    11.然后直接下一步就可以了。只是有几个地方需要注意
    a)有路径设置的地方请多加注意,理论上我们前面已经配置了环境变量,不会有大问题,但是为了以防万一还请多加注意。
    b)字符集最好选择utf8
    c)在执行'链接二进制文件'时如果遇到错误请在不关闭安装程序的情况下打开一个新终端,输入以下命令

    代码:
    sed -i 's/^\(\s*\$(MK_EMAGENT_NMECTL)\)\s*$/\1 -lnnz11/g' $ORACLE_HOME/sysman/lib/ins_emagent.mk
    sed -i 's/^\(\$LD \$LD_RUNTIME\) \(\$LD_OPT\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/bin/genorasdksh
    sed -i 's/^\(\s*\)\(\$(OCRLIBS_DEFAULT)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/srvm/lib/ins_srvm.mk
    sed -i 's/^\(TNSLSNR_LINKLINE.*\$(TNSLSNR_OFILES)\) \(\$(LINKTTLIBS)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/network/lib/env_network.mk
    sed -i 's/^\(ORACLE_LINKLINE.*\$(ORACLE_LINKER)\) \(\$(PL_FLAGS)\)/\1 -Wl,--no-as-needed \2/g' $ORACLE_HOME/rdbms/lib/env_rdbms.mk



    然后再选择retry一般就可以过去了。
    d)最后一步需要让我们手动执行两个文件,第一个应该没啥问题。第二个会提示无法创建目录,根据提示手动创建就好了。
    e)安装过程中最好别点不需要的按钮。避免不必要的错误

  • 相关阅读:
    高性能 HTML5 地铁样式的应用程序中的内容
    微软披露更多ARM Win8细节
    下一代互联网搜索的前沿:意图、知识与云
    使用 Sphinx 更好地进行 MySQL 搜索使用 Sphinx 进行非全文本搜索
    如何加快数模计算以及如何解决数模计算的收敛性问题
    Google App Engine正式支持Python 2.7
    ASP.NET MVC模型绑定
    给 MySQL 增加 Sequence 管理功能
    使用 Rational Build Forge 自动化 IBM Cloud 上的构建和发布过程
    Windows Phone 8基于WinRT?
  • 原文地址:https://www.cnblogs.com/oracleblogs/p/3002569.html
Copyright © 2011-2022 走看看