[原创]6.10 server 安装Oracle10g全步骤

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
nmvr2600
帖子: 215
注册时间: 2005-11-01 18:23

[原创]6.10 server 安装Oracle10g全步骤

#1

帖子 nmvr2600 » 2007-01-05 17:36

修改记录
1月8号修改xinitrc部分,为了使用输入法方便,如果你需要输入法的话。

版本说明
ubuntu server 6.10
Oracle 10.2.0.1

我是在虚拟机里装的,反复做了几遍。linux下装个Oracle真是不容易。wiki里的那个指南反正让我看得有点郁闷,所以自己把自己的步骤写下来,算是多给大家一个参考。所有的命令都是凭记忆写上的,如果出现了低级错误,提醒我一下。先贴上,有空再修改修改。

1 安装server版ubuntu
注意划分swap,最好1G(1024M)想装Oracle XE的需要注意。
2 安装必须的软件包。
(改成使用cn99的源,速度比较快,基本上是3M/s)

代码: 全选

wajig install gcc make binutils libmotif3 lesstif2 rpm libaio libdb3 libc-dev
不知道wajig是什么东西的就换成sudo apt-get,下同。
注意libc-dev,装到62%就除了一个link错误的多数因为少这个包。
安装的时候需要X,所以图形桌面还是需要装的。因为用虚拟机所以还装了VMware tools,并配置了X。

代码: 全选

wajig install x-window-system-core fluxbox

代码: 全选

ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename
ln -s /etc /etc/rc.d    
创建/etc/redhat-release

代码: 全选

Red Hat Linux release 4.1
3 创建oracle用户和安装路径

代码: 全选

sudo groupadd oinstall
sudo groupadd dba
sudo groupadd nobody
sudo useradd -g oinstall -G dba -p passwd -d /home/oracle oracle
sudo useradd -g nobody nobody
使用useradd创建oracle用户的那个语句不会给你创建home目录的,不想手动创建的用下面这个语句

代码: 全选

sudo useradd -g oinstall -G dba -s /bin/bash -k /etc/skel -m oracle
创建oracle用户密码

代码: 全选

sudo passwd oracle

代码: 全选

mkdir -pv /opt/oracle
mkdir -pv /opt/oradata
chown -R oracle:oinstall /opt/ora*
chmod -R 775 /opt/ora*
系统调整

代码: 全选

sudo vi /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
这里的参数数值你需要根据自己的系统内存做些调整,oracle安装文档里详细解释了各数值的含义及计算方法,
请自己查看。
使修改生效:

代码: 全选

sudo /sbin/sysctl -p
在/etc/security/limits.conf 加入

代码: 全选

*               soft    nproc   2047
*               hard    nproc   16384
*               soft    nofile  1024
*               hard    nofile  65536
将/etc/pam.d/su这句的注释去掉

代码: 全选

session    required     pam_limits.so
在/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

4 安装

说明:全部使用英文,想用中文的人自己去wiki看那个指南,不过我没测试过。
切换用户

代码: 全选

su oracle
修改.bash_profile

代码: 全选

umask 022
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle
export ORACLE_SID=test
最好加上,防止安装程序乱码

代码: 全选

export LANG="en_US.UTF-8"
export LANGUAGE="en_US:en"

代码: 全选

source .bash_profile
创建.xinitrc

代码: 全选

exec /usr/bin/fluxbox
最好先把/etc/X11/xinitrc里的内容拷贝过来,默认里面有一句执行Xsession的,没有它im-switch就没有作用了。如果你使用别的桌面环境就不用这个了。

启动X

代码: 全选

startx

使用fluxbox
解压缩后进入安装文件夹database。
没有unzip的,这里需要安装下。
执行安装

代码: 全选

./runInstaller
稍等便出现了安装窗口。
这里安装路径应该是前面设置的ORACLE_BASE,还是在home下的自己改一下。
想创建数据库的在orcl下面输入初始密码,next
比较慢,慢慢等。中间会有两个编译错误,据说因为libaio版本的问题,可以忽略,所以直接continue。
最后会跳出让你执行root.sh的窗口,除了root.sh,有是可能还会有另一个脚本,开个terminal,用root都执行
了之后,回这个窗口点ok。然后就可以退出安装程序了。

5 测试一下
最后的安装画面会给你企业管理器,isqlplus的网址。

6 创建启动服务

代码: 全选

sudo vi oracle

代码: 全选

#!/bin/bash
#
# Run-level Startup script for the Oracle Instance and Listener
#
# chkconfig: 345 91 19
# description: Startup/Shutdown Oracle listener and instance

ORA_HOME="/opt/oracle/"
ORA_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_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 "$ORA_HOME/bin/lsnrctl start"
        su - $ORA_OWNR -c $ORA_HOME/bin/dbstart
        touch /var/lock/oracle
        su - $ORA_OWNR -c "$ORA_HOME/bin/emctl start dbconsole"
        echo "OK"
        ;;
    stop)
        # Oracle listener and instance shutdown
        echo -n "Shutdown Oracle: "
        su - $ORA_OWNR -c "$ORA_HOME/bin/lsnrctl stop"
        su - $ORA_OWNR -c $ORA_HOME/bin/dbshut
        rm -f /var/lock/oracle
        su - $ORA_OWNR -c "$ORA_HOME/bin/emctl stop dbconsole"
        echo "OK"
        ;;
    reload|restart)
        $0 stop
        $0 start
        ;;
    *)
        echo "Usage: $0 start|stop|restart|reload"
        exit 1
esac
exit 0
这里如果你不想一起启动企业管理器的话就把

代码: 全选

su - $ORA_OWNR -c "$ORA_HOME/bin/emctl start dbconsole"
su - $ORA_OWNR -c "$ORA_HOME/bin/emctl stop dbconsole"
这两句去掉,一起启动是很慢的。反正可以手动启动的。

如果现在你还是在oracle用户下的话,这里su成root。或者你把oracle加到sudoers里面。

代码: 全选

chmod 755 oracle
update-rc.d oracle defaults 99
注意这里还是需要改下oracle/bin/dbstart这个文件,把你里面ORACLE_HOME_LISTNER的值改成oracle的安装路径
我这里是/opt/oracle
将/etc/oratab文件里最后那个N改成Y,这样才能用dbstart启动

然后就可以用启动和停止oracle了。

代码: 全选

wajig start oracle
wajig stop  oracle
7 关于手动启动

为了使用方便,可以把下面的一行加入.bash_profile

代码: 全选

export PATH=$ORACLE_HOME/bin:$PATH
启动和挺起监听

代码: 全选

lsnctl start
lsnctl stop
启动和停止数据库

代码: 全选

dbstart
dbshut
其实这两个是给rc脚本用的
正常的方法

代码: 全选

sqlplus /nolog
connect "sys/你设的密码 as sysdba"
startup
启动和关闭企业管理器

代码: 全选

emctl start dbconsole
emctl stop  dbconsole
如果没有设置ORACLE_SID的话这里会出出错的!
附件
62%的安装错误
62%的安装错误
可以忽略的错误1
可以忽略的错误1
可以忽略的错误2
可以忽略的错误2
isqlplus查询Oracle版本
isqlplus查询Oracle版本
上次由 nmvr2600 在 2007-01-08 10:24,总共编辑 1 次。
We are both God and devil.
----------------------------------
Oracle 11G SG PPT下载
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#2

帖子 zhuqin_83 » 2007-01-05 18:06

先加精,希望不断改进。
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
passtwo
帖子: 5
注册时间: 2007-01-06 18:20

#3

帖子 passtwo » 2007-01-06 18:32

不是server版的行不?
头像
nmvr2600
帖子: 215
注册时间: 2005-11-01 18:23

#4

帖子 nmvr2600 » 2007-01-06 22:25

当然可以啦。如果你有WM,就不用装fluxbox。
We are both God and devil.
----------------------------------
Oracle 11G SG PPT下载
java8964
帖子: 6
注册时间: 2006-05-05 2:17

#5

帖子 java8964 » 2007-01-13 4:15

I am not sure about the first linking error. I never saw it before and I need the install log to give you more information. Most likely it only depends on your environment.

But for the second one, it is a known issue since ubuntu is not configured as real Enterprise Linux, there is some assumption from Oracle about your linux.

When you faced this linking error, or better before you start installnation, you should do the following as 'oracle' user:

export LD_LIBRARY_PATH=$ORACLE_HOME/lib
ln ­-s /usr/bin/basename /bin/basename
ln ­-s $ORACLE_HOME/lib/libclient10.a $ORACLE_HOME/lib/libagtsh.a

/* Run the following shell command */
$ORACLE_HOME/bin/genagtsh $ORACLE_HOME/lib/libagtsh.so 1.0

That linking error will gone.
a.ron
帖子: 28
注册时间: 2007-01-23 17:20
来自: 成都

#6

帖子 a.ron » 2007-03-08 17:51

TKX, IT'S JUST FOR ME!
Acer Aspire 5502ZWXCi

Ubuntu 8.10/Windows XP SP3
回复