首页 > 代码库 > ubuntu 12.04 (64位)下安装oracle 11g过程及问题总结

ubuntu 12.04 (64位)下安装oracle 11g过程及问题总结

最近公司用到oracle,在ubuntu64位安装了一下,碰到了一些问题,在网上搜索到了一些答案,在此作为笔记记录下来。

1.首先下载oracle并解压不再赘述。

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.配置系统内核等参数

在/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

修改oracle的内核限制

在 /etc/security/limits.conf 文件中增加以下数据(oracle为你所在的用户名,应该做适当的更改)

 oracle              soft    nproc  2047
 oracle              hard    nproc  16384
 oracle              soft    nofile  1024
 oracle              hard    nofile  65536
 oracle              soft    stack  10240

5.添加环境变量

export ORACLE_BASE="/home/lenovo/oracle"
export ORACLE_HOME="$ORACLE_BASE/server"
export ORACLE_SID="orcl"
export ORACLE_UNQNAME=orcl
export ORACLE_OWNER="lenovo"
export NLS_LANG=.AL32UTF8
export PATH=$PATH:$ORACLE_HOME/bin

6.给一些库添加软链接

 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

7.开始安装

  在安装目录下运行 ./runInstaller, 按照提示一步步的安装:

    第一步邮件可以不勾选,直接跳过,

    第二步选择安装数据库并创建实例。

    第八步可以直接选择忽略。

 

注意事项:

  1.操作系统swap分区要够大,否则会安装失败

  2.安装阶段选择用户一类的,全都用当前用户,统一一下。

  3.安装到69%可能会提示失败,不要关闭,重新开一个终端,运行如下:

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

4.最后一步别忘了执行两个脚本。