ubuntu 安装 oracle 10g

目录
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 </dev/null

改成
h1:23:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1 </dev/null

然后, 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) 来测试
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值