ubuntu安装oracle

安装依赖包

在16的环境下,通过本身自带的源,获取如下依赖
http://blog.csdn.net/whbing1471/article/details/52087130(不按照这个改变源)

sudo apt-get install bzip2 sudo apt-get install elfutils sudo apt-get install automake sudo apt-get install autotools-dev sudo apt-get install binutils sudo apt-get install expat sudo apt-get install gawk sudo apt-get install gcc sudo apt-get install gcc-multilib sudo apt-get install g++-multilib sudo apt-get install ia32-libs sudo apt-get install ksh sudo apt-get install less sudo apt-get install lesstif2 sudo apt-get install lesstif2-dev sudo apt-get install lib32z1 sudo apt-get install libaio1 sudo apt-get install libaio-dev sudo apt-get install libc6-dev sudo apt-get install libc6-dev-i386 sudo apt-get install libc6-i386 sudo apt-get install libelf-dev sudo apt-get install libltdl-dev sudo apt-get install libmotif4 sudo apt-get install libodbcinstq4-1 libodbcinstq4-1:i386 sudo apt-get install libpth-dev sudo apt-get install libpthread-stubs0 sudo apt-get install libpthread-stubs0-dev sudo apt-get install libstdc++5 sudo apt-get install lsb-cxx sudo apt-get install make sudo apt-get install openssh-server sudo apt-get install pdksh sudo apt-get install rlwrap sudo apt-get install rpm sudo apt-get install sysstat sudo apt-get install unixodbc sudo apt-get install unixodbc-dev sudo apt-get install unzip sudo apt-get install x11-utils sudo apt-get install zlibc​

发现有一些包安装不了


解决无法安装ia32-libs的问题(以及以上很多安装包无法安装的32位之类的问题)
http://www.infocool.net/kb/Other/201701/270619.html

检查系统变量

添加oracle用户的内核限制

添加对当前用户的内核限制在 /etc/security/limits.conf 文件中增加以下数据(XXX为你当前用户名)


检查/etc/pam.d/login 和 /etc/pam.d/su,增加以下行

没有以下行就自己加上: (有了就不用增加了)
session required pam_limits.so

欺骗oracle,让它以为是redhat


之后

echo “Red Hat Linux release 4″ > /etc/redhat-release

如果不行就直接

vim /etc/redhat-release

添加用户和组

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

问题一:添加完成之后,su - oracle (一定要是这样su,这样相当于重新登录,并且更换shell),结果只有



说明oracle的shell有问题

有两个途径解决:
1、用root用户登录,直接vim /etc/passwd,改成如下/bin/bash



2.用root用户登录,执行以下


为了以防万一
vim /etc/profile,然后添加以下内容

if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/bash" ]; then
ulimit -p 16384              #此处有问题,见下
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

问题二:ulimit -p 16384 会报错误如下

-bash: ulimit: pipe size: cannot modify limit: Invalid argument

说明ulimit -p 16384这句话有问题,在网上找了一圈说是格式问题,但不是,自己检查了一下root用户和oracle用户下的ulimit状态,用ulimit -a命令检查
root的



oracle的



-p即pipesize是一样的,考虑是不是应该写8而不是16384,避免不必要的麻烦,直接在/etc/profile里把ulimit -p 16384这句话删掉,就好了。

在/etc/profile里设置环境变量

umask 022
TMP=/tmp;
export TMP
TMPDIR=$TMP;
export TMPDIR

export JAVA_HOME=/usr/local/java/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
export ORACLE_BASE=/home/oracle/app/oracle
export ORACLE_HOME=${ORACLE_BASE}/product/11.2.0/dbhome_1 
export ORACLE_SID=orcl 
export ORACLE_UNQNAME=orcl
export PATH=$PATH:${ORACLE_HOME}/bin/;

关于执行bash和profile的问题,参考以下
https://my.oschina.net/xinxingegeya/blog/213971
如果路径有~,代表这个配置文件的执行是依赖于当前用户的,所以如果是想设置一个对于所有用户都通用的变量,就在/etc/profile里面设置,包括jdk的环境

静默安装(太复杂了,待更)

你可能感兴趣的:(ubuntu安装oracle)