1. 参考资料:
HOWTO install Oracle 11g on Ubuntu Linux 12.04 (Precise Pangolin) 64bits
2. 准备工作
2.1 下载Oracle 11g 64 bits for Linux
在此例程中安装的版本是
Oracle Database 11g Release 2 Standard Edition, Standard Edition One, and Enterprise Edition V
11.2.0.1.0 Linux x86-64
要注意要下载两个文件,file1_2和file2_2,下载时需要注册,就按照步骤注册一下就好了
下载后解压,要解压到同一个目录,推荐使用unzip命令,在本例中我解压后的文件目录为~/Downloads/database
2.2 创建用户
具体命令如下
sudo groupadd oinstall
sudo groupadd dba
sudo mkdir -p /opt/oracle
sudo useradd -g oinstall -G dba -d /opt/oracle -s /bin/bash oracle
sudo passwd oracle
sudo chown -R oracle:oinstall /opt/oracle
2.3 修改配置文件
修改
/etc/sysctl.conf文件
sudo vim /etc/sysctl.conf
添加下面内容
#
# Oracle 11g
#
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmni = 4096
# Replace kernel.shmmax with the half of your memory in bytes
# if lower than 4Go minus 1
# 1073741824 is 1 GigaBytes
kernel.shmmax=1073741824
# Try sysctl -a | grep ip_local_port_range to get real values
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 = 1048576
# Max value allowed, should be set to avoid IO errors
fs.aio-max-nr = 1048576
# 512 * PROCESSES / what really means processes ?
fs.file-max = 6815744
# To allow dba to allocate hugetlbfs pages
# 1001 is your oinstall group, id. grep oinstall /etc/group will give this value
vm.hugetlb_shm_group = 1002
注意,最后一行要填写
自己机器上oinstall group的gid,本例程中是1002,查看gid的方法可以是切换到oracle用户,然后使用以下命令
id
然后使用以下命令来设置这些参数
sudo sysctl -p
再编辑/etc/security/limits.conf文件
sudo vim /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
检查/etc/pam.d/login文件中有下面一行
session required pam_limits.so
编辑/etc/profile文件
sudo vim /etc/profile
添加如下内容
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
2.4 安装软件包
先更新软件源
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install alien
sudo apt-get install autoconf
sudo apt-get install automake
sudo apt-get install autotools-dev
sudo apt-get install binutils
sudo apt-get install bzip2
sudo apt-get install doxygen
sudo apt-get install elfutils
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
# This will help preventing prevent from runInstaller terrific ./runInstaller: line 54: ./install/.oui: No such file or directory error message
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 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
sudo apt-get install alien autoconf automake autotools-dev binutils bzip2 doxygen elfutils expat gawk gcc gcc-multilib g++-multilib ia32-libs ksh less lesstif2 lesstif2-dev lib32z1 libaio1 libaio-dev libc6-dev libc6-dev-i386 libc6-i386 libelf-dev libltdl-dev libpth-dev libpthread-stubs0 libpthread-stubs0-dev lsb-cxx make openssh-server pdksh rlwrap rpm sysstat unixodbc unixodbc-dev unzip x11-utils zlibc
在参考文章中还有libmotif4和libodbcinstq4-1和
libodbcinstq4-1:i386三个包,在10.04中版本不同,先安装低版本进行测试,命令为
sudo apt-get install libmotif3
2.5 创建符号链接
运行以下命令sudo ln -s /usr/lib/x86_64-linux-gnu /usr/lib64
sudo ln -sf /bin/bash /bin/sh
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /usr/bin/rpm /bin/rpm
sudo ln -s /usr/bin/basename /bin/basename
cd /lib64
sudo ln -s /lib/libgcc_s.so.1 .
oracle11需要安装32位的
libstdc++5,安装过程如下
mkdir /tmp/libstdc++5
cd /tmp/libstdc++5
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.3/libstdc++5_3.3.6-17ubuntu1_amd64.deb
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.3/libstdc++5_3.3.6-17ubuntu1_i386.deb
sudo dpkg --force-architecture -i libstdc++5_3.3.6-17ubuntu1_i386.deb
sudo mv /usr/lib/libstdc++.so.5* /usr/lib32/
sudo dpkg -i libstdc++5_3.3.6-17ubuntu1_amd64.deb
然后重启系统使设置生效
2.6 创建.bashrc文件
在10.04中,创建的oracle用户的home目录下并没有.bashrc文件,需要我们自己创建,具体代码如下
sudo su oracle
cd
touch .bashrc
ln -s .bashrc .bash_profile
vim .bashrc
在.bashrc中加入如下代码
umask 022
执行.bashrc文件
source .bashrc
3. 安装oracle
执行下面命令
xhost +
su oracle
export DISPLAY=:0
cd */database
./runInstaller