Ubuntu x86_64安装oracle 11gR2 XE

Oracle 11gR2 XE(注意XE)是Oracle提供的精简版Oracle,拥有正式版的所有功能,对内存要求也不高。很遗憾的是,官方只提供了rpm安装包(适用于CentOS,Redhat,Fedora),并没有提供deb包。本文提供如何安装Oracle 11gR2 XE的步骤。

下载安装文件

http://www.oracle.com/technet…

rpm转deb

unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
sudo apt-get install alien libaio1 unixodbc vim
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm

准备工作

chkconfig

The Red Hat based installer of Oracle XE 11gR2 relies on /sbin/chkconfig, which is not used in Ubuntu. The chkconfig package available for the current version of Ubuntu produces errors and my not be safe to use. Below is a simple trick to get around the problem and install Oracle XE successfully:

sudo nano /sbin/chkconfig

把下面内容贴进去

#!/bin/bash
# Oracle 11gR2 XE installer chkconfig hack for Ubuntu
file=/etc/init.d/oracle-xe
if [[ ! `tail -n1 $file | grep INIT` ]]; then
echo >> $file
echo '### BEGIN INIT INFO' >> $file
echo '# Provides: OracleXE' >> $file
echo '# Required-Start: $remote_fs $syslog' >> $file
echo '# Required-Stop: $remote_fs $syslog' >> $file
echo '# Default-Start: 2 3 4 5' >> $file
echo '# Default-Stop: 0 1 6' >> $file
echo '# Short-Description: Oracle 11g Express Edition' >> $file
echo '### END INIT INFO' >> $file
fi
update-rc.d oracle-xe defaults 80 01

执行:

sudo chmod 755 /sbin/chkconfig

内核参数

执行:

sudo nano /etc/sysctl.d/60-oracle.conf

把以下内容粘帖进去:

# Oracle 11g XE kernel parameters  
fs.file-max=6815744  
net.ipv4.ip_local_port_range=9000 65000  
kernel.sem=250 32000 100 128
kernel.shmmax=4163487744
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
net.core.wmem_max=1048576
fs.aio-max-nr=1048576

内核参数的配置和这篇文章是一样的:CentOS 6.4 x86_64安装oracle 11gR2

加载内核参数:

sudo service procps start

执行以下语句看看内核参数是否修改成功

sudo sysctl -q fs.file-max

如果返回结果是fs.file-max = 6815744就说明修改成功了。

swap空间保证2g

杂项

执行下面语句

sudo ln -s /usr/bin/awk /bin/awk 
sudo mkdir /var/lock/subsys 
sudo touch /var/lock/subsys/listener

/dev/shm

sudo rm -rf /dev/shm
sudo mkdir /dev/shm
sudo mount -t tmpfs shmfs -o size=2048m /dev/shm

这里的内存大小就是你的物理内存的大小<wrap hi>free -m</wrap>可以看到

The reason of doing all this is that on a Ubuntu system /dev/shm is just a link to /run/shm but Oracle requires to have a seperate /dev/shm mount point.

新建以下文件:

sudo nano /etc/rc2.d/S01shm_load

把以下内容贴进去

#!/bin/sh
case "$1" in
start) mkdir /var/lock/subsys 2>/dev/null
       touch /var/lock/subsys/listener
       rm /dev/shm 2>/dev/null
       mkdir /dev/shm 2>/dev/null
       mount -t tmpfs shmfs -o size=2048m /dev/shm ;;
*) echo error
   exit 1 ;;
esac 

执行下面

sudo chmod 755 /etc/rc2.d/S01shm_load 

这样就可以make the change permanent

安装

sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
sudo /etc/init.d/oracle-xe configure

配置xe管理权限端口,sys密码等

环境变量

执行下面语句,添加文件

sudo nano /etc/profile.d/oracle-xe.sh

把以下内容贴进去

export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
export ORACLE_SID=XE
export NLS_LANG="`$ORACLE_HOME/bin/nls_lang.sh`"
export ORACLE_BASE=/u01/app/oracle
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH

执行下面,给予执行权限

sudo chmod 755 /etc/profile.d/oracle-xe.sh

启动

sudo service oracle-xe start

如何卸载

如果安装过程中遇到问题,或者就想卸载掉,执行下面语句

sudo -s
/etc/init.d/oracle-xe stop
ps -ef | grep oracle | grep -v grep | awk '{print $2}' | xargs kill
dpkg --purge oracle-xe
rm -r /u01
rm /etc/default/oracle-xe
update-rc.d -f oracle-xe remove

网页管理界面

Oracle XE和正式版一样提供了B/S管理端界面,访问地址是 http://localhost:PORT/apex/

第一次进入时,需要从管理员入口进去,新建一下workspace等才能正常使用,管理员入口是 http://localhost:PORT/apex/ap…

  • 用户名是admin

  • 密码就是前面输入的密码

进入后修改一下admin密码,然后慢慢探索吧

额外的配置

    原文作者:chanjarster
    原文地址: https://segmentfault.com/a/1190000006185762
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞