现在的位置: 首页 > 综合 > 正文

Ubuntu安装Oracle 10G

2013年10月29日 ⁄ 综合 ⁄ 共 3974字 ⁄ 字号 评论关闭

目录
1. 安装准备
1.1. 设置用户
1.2. 创建目录和设置权限
1.3. 更改配置
1.4. 安装
1.5. 启动/停止Oracle
1. 安装准备
安装开始前,确认你的系统符合Oracle的最小安装要求:

  • 500 MB 内存
  • 1 GB 交换分区
  • 确认你已经安装了gcc, make, binutils, lesstif2, libc6, 和 rpm

*最好确认 dns 和/或 你的 /etc/hosts 文件已经正确配置了,以保证你的IP地址和hostname能正确解析.
1.1. 设置用户
我们需要为安装程序创建一个oracle 用户和两个组. 首先检查它们是否已经存在:
$grep oinstall /etc/group
$grep dba /etc/group
$grep nobody /etc/group
如果它们还不在系统中,那么创建它们。
#addgroup oinstall
#addgroup dba
#addgroup nobody
#useradd -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
#usermod -g nobody nobody
1.2. 创建目录和设置权限
注意: oracle缺省目录是 /u01 和 /u02. 我们为了和FHS有更好的兼容性,更改为 /opt/oracle 和 /opt/oradata:
#mkdir -p /opt/oracle
#mkdir -p /opt/oradata
#chown -R oracle:oinstall /opt/ora*
#chmod -R 775 /opt/ora*
1.3. 更改配置
添加以下行到 /etc/sysctl.conf 文件中:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
更新系统, 运行:
#sysctl -p
添加以下行到 /etc/security/limits.conf 文件中:
*    soft    nproc    2407
*    hard    nproc    16384
*    soft    nofile   1024
*    hard    nofile   65536
建立软连接:
#ln -s /usr/bin/awk /bin/awk
#ln -s /usr/bin/rpm /bin/rpm
#ln -s /usr/bin/basename /bin/basename                  
通过创建一个新文件/etc/redhat-release并添加以下行,欺骗安装程序让它以为我们的系统是RedHat:
Red Hat Linux release 2.1 (drupal)
1.4. 安装
用oracle用户登录,将安装文件拷贝到一个临时目录.
#su oracle
$cp -r /installer/files/here/ `mktemp -d`
启动安装程序。注意:如果系统说显示变量错误,试一试重启gdm(gnome显示管理器),然后用oracle用户登录.
$./runInstaller
当正确运行时,你将看到一个GUI窗口界面。安装过程中,安装程序将两次提醒你用root权限停止和运行脚本。当它第一次提醒你时,让它过,它只是设置相应的权限,第二次时,它要求运行root.sh脚本,你需要先做下面的事情:
#mkdir /etc/rc.d
#ln -s /etc/rc0.d /etc/rc.d/rc0.d
#ln -s /etc/rc2.d /etc/rc.d/rc2.d
#ln -s /etc/rc3.d /etc/rc.d/rc3.d
#ln -s /etc/rc4.d /etc/rc.d/rc4.d
#ln -s /etc/rc5.d /etc/rc.d/rc5.d
#ln -s /etc/rc6.d /etc/rc.d/rc6.d
#ln -s /etc/init.d /etc/rc.d/init.d
#/path/to/root.sh
Oracle在系统中安装一个init.cssd服务. root.sh脚本将等待 600 秒 (10 分钟) 让这个服务启动,当它在等待时,你需要做一些设置。控制台消息会显示: Expecting the CRS daemons to be up within 600 seconds. 需要做三件事情,首先, 修改 /etc/inittab 文件,将运行级从35(RedHat和Suse缺省值)改到23 (Debian缺省值) :
 
将 :
h1:35:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1
改成
h1:23:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1
然后, inittab 将运行 /etc/rc.d/init.d/init.cssd. 退出这个脚本, 修改第 83 行, 替换:
SU="/bin/su -l"

SU="/bin/su"
最后,重启服务:
#init q
root.sh 将继续运行直至成功,图形安装界面会显示结束.
1.5. 启动/停止服务
这里我们需要添加另外一个init脚本来使得Oracle在重启系统后自动启动,首先,删除安装程序创建的一些损坏的连接.
#rm /etc/rc2.d/[SK]96*
#rm /etc/rc3.d/[SK]96*
#rm /etc/rc5.d/[SK]96*
#update-rc.d init.cssd defaults 96
下面这个init脚本内,我为我们的需求定制了启动/停止Oracle实例、监听器方式和企业管理器web界面.
#!/bin/bash
#
# /etc/init.d/oracledb
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_HOME=/your/oracle/home/goes/here
export ORACLE_SID=oraclesidgoeshere
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracleownergoeshere"
# if the executables do not exist -- display error
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
        echo "Oracle startup: cannot start"
        exit 1
fi
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
    start)
        # Oracle listener and instance startup
        echo -n "Starting Oracle: "
        su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
        su $ORA_OWNR -c $ORACLE_HOME/bin/dbstart
        touch /var/lock/oracle
        su $ORA_OWNR -c $ORACLE_HOME/bin/emctl start dbconsole
        echo "OK"
        ;;
    stop)
        # Oracle listener and instance shutdown
        echo -n "Shutdown Oracle: "
        su $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
        su $ORA_OWNR -c $ORACLE_HOME/bin/dbshut
        rm -f /var/lock/oracle
        su $ORA_OWNR -c $ORACLE_HOME/bin/emctl stop dbconsole
        echo "OK"
        ;;
    reload|restart)
        $0 stop
        $0 start
        ;;
    *)
        echo "Usage: `basename $0` start|stop|restart|reload"
        exit 1
esac
exit 0
将这个文件放到指定的位置并让它可执行, 将它连接到所有的运行级:
#chmod 755 /etc/init.d/oracledb
#update-rc.d oracledb defaults 99
在我们运行这个配置文件前哦我们还需要做一些相关的定制工作. 下面这些文件需要为我们的安装程序更改它们的环境变量:
/usr/local/bin/dbhome -- 更改 ORAHOME, ORASID, 和 ORATAB (/etc/oratab)
$ORACLE_HOME/bin/dbhome -- 同上
$ORACLE_HOME/bin/dbstart -- 更改 ORATAB
$ORACLE_HOME/bin/dbshut -- 同上
如果你希望在系统启动时启动你创建的所有数据库实例,那么需要修改 /etc/oratab 文件. 下面是一个例子:
oracle:/opt/oracle/:N
修改为
oracle:/opt/oracle:Y
现在你可以开始运行了。重启你的系统,先通过命令行设置ORACLE_HOME, ORACLE_SID, 和 PATH 变量variables(或者用户配置文件,如 .bashrc); 可以试一试运行sqlplus或者通过web登录管理界面(http://urlhere.com:5500/em) 来测试

抱歉!评论已关闭.