折腾两天.经过2次系统重装.oracle 重装无数次.查阅资料无数
之前在 10.4 之前的版本成功安装过...费话不多说.
0.转到ROOT用户
sudo su -
1.首先,将系统更新到最新
apt-get update
apt-get dist-upgrade
2.安装依赖包
apt-get install gnome-core
apt-get install openssh-server
apt-get install alien libaio1 unixodbc
apt-get install vim
apt-get install elfutils libaio1 libaio-dev libstdc++6-4.4-dev numactl pdksh sysstat unixODBC-dev unixODBC build-essential libaio1 gawk ksh libmotif4 alien libtool lsb
3.创建用户和目录(可选,我就是用自己的账户安装成功的)
groupadd oinstall
groupadd dba
groupadd nobody
usermod -g nobody nobody
useradd -s /bin/bash -m -g oinstall -G dba oracle
passwd oracle
mkdir -p /opt/oracle
chown -R oracle:oinstall /opt/oracle
chmod -R a+rw /opt/oracle
mkdir -p /opt/oraInventory
chown -R oracle:oinstall /opt/oraInventory
chmod -R a+rw /opt/oraInventory
4.配置系统环境变量
vim /etc/profile.d/oracle.sh
#添加如下
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2/db_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/usr/local/lib:/usr/lib:/lib
export PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG=AMERICAN_AMERICA.UTF8
export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
export EDITOR=vi
export ORACLE_SID=orcl
运行一下命令更新
source /etc/profile.d/oracle.sh
在/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
查看/etc/pam.d/login,增加以下行(有了就不用增加了)
session required pam_limits.so
同样检查/etc/pam.d/su,没有以下行就自己加上
session required pam_limits.so
6.删除自带的GCC 不错就是这步.最坑爹了.
apt-get remove gcc-4.6
apt-get remove g++-4.6
apt-get autoremove
mkdir /tmp/deb
cd /tmp/deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/cpp-4.1_4.1.2-27ubuntu1_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/g++-4.1_4.1.2-27ubuntu1_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/gcc-4.1_4.1.2-27ubuntu1_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/gcc-4.1-base_4.1.2-27ubuntu1_i386.deb
wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gcc-4.1/libstdc++6-4.1-dev_4.1.2-27ubuntu1_i386.deb
dpkg -i *.deb
7.链接 相关的程序
ln -s /usr/lib/i386-linux-gnu/libpthread_nonshared.a /usr/lib/
ln -s /usr/lib/i386-linux-gnu/libc_nonshared.a /usr/lib/
ln -s /lib/i386-linux-gnu/libgcc_s.so.1 /lib/
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/i386-linux-gnu/libc_nonshared.a /usr/lib/
ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6 /lib/
ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib/
ln -s /usr/lib/i386-linux-gnu/crti.o /usr/lib/
ln -s /usr/lib/i386-linux-gnu/crt1.o /usr/lib/
ln -s /usr/lib/i386-linux-gnu/crtn.o /usr/lib/
ln -s /usr/lib/i386-linux-gnu/libgcc_s.so.1 /lib/libgcc_s.so.1
ln -s /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib/libstdc++.so.6
ln -s /usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so.5
echo ‘Red Hat Linux release 5′ > /etc/redhat-release
9.重启电脑(可选,我没重启也安装成功~)
10.运行安装程序
root 执行
init5
xhost+
su - oracle
/soft/database/runInstaller
11.然后直接下一步就可以了。只是有几个地方需要注意
如果有编译错误以下提供几个修改方案,请核查对应的文件
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一般就可以过去了。
最后一步需要让我们手动执行两个文件,第一个应该没啥问题。第二个会提示无法创建目录,根据提示手动创建就好了。