Ubuntu 12.04下安装Oracle Express 11gR2


我新安装的Linux Mint 13 “Maya” Xfce RC,但因为是基于XUbuntu 12.04,所以对于XUbuntu与Ubuntu的12.04都应该可以适用

1、点击这里下载Oracle express的安装介质

Oracle Database Express Edition 11g Release 2 for Linux x64

2、转换为deb包
由于下载的是rpm包ubuntu无法直接使用所以需要alien来转换

sudo apt-get install alien
sudo alien -d --scripts oracle-xe-11.2.0-1.0.x86_64.rpm

成功转换后得到oracle-xe_11.2.0-2_amd64.deb安装文件

3、安装deb
双击deb安装这个包,这时包安装成功但是我们会得到一个错误说/sbin/chkconfig不存在。

我们要修改/var/lib/dpkg/info/oracle-xe.postinst脚本

if [ -f /etc/SUSE-release ]
then
    cp -f /u01/app/oracle/product/11.2.0/xe/config/scripts/oracle-xe.sles /etc/init.d/oracle-xe
    /usr/lib/lsb/install_initd /etc/init.d/oracle-xe > /dev/null 2>&1
    /sbin/insserv /etc/init.d/oracle-xe > /dev/null 2>&1
    /sbin/SuSEconfig > /dev/null 2>&1
#else
#        /sbin/chkconfig --add oracle-xe
fi

把else与/sbin/chkconfig --add oracle-xe注释掉,然后再执行

sudo /var/lib/dpkg/info/oracle-xe.postinst

会提示你运行/etc/init.d/oracle-xe configure进行配置。但别急,我们还需要一些步骤再执行。

4、安装依赖包
sudo apt-get install libaio1

5、解决ORA-00845: MEMORY_TARGET问题
由于oracle查找的是/dev/shm,而Ubuntu已经换为/run/shm(虽然有链接还是有问题),在初始化时会出现ORA-00845问题,解决方法如下:

用root登录


sudo su -

粘贴下载的代码到命令行,来创建oracle-shm

cat &gt; /etc/init.d/oracle-shm <&lt;-EOF
#! /bin/sh
# /etc/init.d/oracle-shm
#
#
case "\$1" in
  start)
    echo "Starting script /etc/init.d/oracle-shm"
    # Run only once at system startup
    if [ -e /dev/shm/.oracle-shm ]; then
      echo "/dev/shm is already mounted, nothing to do"
    else
      rm -f /dev/shm
      mkdir /dev/shm
      #mount -B /run/shm /dev/shm
      mount -t tmpfs shmfs -o size=2048m /dev/shm
      touch /dev/shm/.oracle-shm
    fi
    ;;
  stop)
    echo "Stopping script /etc/init.d/oracle-shm"
    echo "Nothing to do"
    ;;
  *)
    echo "Usage: /etc/init.d/oracle-shm {start|stop}"
    exit 1
    ;;
esac
#
### BEGIN INIT INFO
# Provides:          oracle-shm
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Bind /run/shm to /dev/shm at system startup.
# Description:       Fix to allow Oracle 11g use AMM.
### END INIT INFO
EOF

安装oracle-shm

chmod 755 /etc/init.d/oracle-shm
update-rc.d oracle-shm defaults 01 99

重启 reboot

6、配置oracle xe

sudo /etc/init.d/oracle-xe configure

选择web管理端口默认8080

选择监听端口默认1521

输入管理员密码与确认密码(sys密码)

最后询问你是否自动启动默认y

7、进行web管理台
从菜单中选择Other->Get Started with Oracle Database 11g Express Edition

相关内容