分类: Oracle
2007-03-06 16:08:19
偶发现一篇去年的文档, 想起了当时和另一个工程师在两台SUN 440上 Solaris 9+Oracle9i+Legato 的"加班事迹",Legato的安装当时没有记下详细的步骤, 只留下了Oracle的, 今天就又在我的"肉鸡"上试了一把, 呵呵!
首先解释一下我的实验环境:一台Ultra 10, 系统是Solaris 8, 在XP上使用Xmanager操作.(我的机子内存是256M,当时用了一天一夜,所以大家要有强烈的心理准备!)
Solaris 的安装就不用细说了吧! 咱们直接进入正题吧!
一. 添加系统参数和相应的用户/组
1. 修改系统参数,编辑 /etc/system文件
# cp /etc/system system.bkp //修改前,最好先备份,行成好习惯
# vi /etc/system
forceload: sys/shmsys
set shmsys:shminfo_shmmax=67108864 //这些数值不是固定的,可自己指定,以下同
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=400
set shmsys:shminfo_shmseg=200
forceload: sys/semsys
set semsys:seminfo_semmns=400
set semsys:seminfo_semmni=100
set semsys:seminfo_semmsl=200
set ulimit=3000000
set shmsys:shminfo_shmmax=1542450944
set shmsys:shminfo_shmmin=1
*set shmsys:shminfo_shmmni=1200
*set shmsys:shminfo_shmseg=1200
set semsys:seminfo_semmns=4000
2.修改文件/etc/services
# vi /etc/services
orasrv 1600/tcp #oracle
listener 1700/tcp #oracle
3.创建用户/组
# groupadd dba //添加一个dba组
# useradd -c oracle -g dba -d /home/oracle -m -s /bin/bash oracle //添加一个oracle用户
# passwd oracle //修改用户的密码
# sync
# sync // 保存修改的文件后,重启系统使参数生效
# reboot
二. 修改用户的环境变量
su - oracle
$ vi .bash_profile
#bash profile
umask 022
ULIMIT=3000000
ORACLE_SID=ota //根据实际情况定
ORACLE_BASE=/home/oracle
ORACLE_HOME=$ORACLE_BASE/product/9.2
ORACLE_TERM=sun5
export ULIMIT ORACLE_SID ORACLE_BASH ORACLE_HOME ORACLE_TERM
PATH=$PATHORACLE_HOME/bin:.
export PATH
$ .bash_profile //保存文件后执行,使环境变量生效
$ mkdir product //oracle安装程序也会自己添加
$ cd product
$ mkdir 9.2
三. 安装oracle9i
1. 退出,以oracle用户身份登陆,检查磁盘空间.
2. 将 oracle9i 的第一张CD放入CD-ROM中,开始安装
$ cd /
$ /cdrom/disk1/runInstaller //在安装时关闭所有访问光驱的窗口,并不能进入CD目录下执行runInstaller程序;否则不能换盘.
3. oracle Universal Installer启动WELCOME界面,点击"NEXT"
4. 进入"Inventory"界面,使用缺省路径,点击OK
5. 进入"Unix Group Name"界面,组名输入"dba",点击NEXT,有对话框跳出,按提示用root用户执行/tmp/orainstRoot.sh脚本.在 /var/opt/oracle中生成oraInst.loc文件,以root用户运行/tmp/oraInstall/orainstRoot.sh脚本.在/home/oracle中创建oraInvertory目录.
6. 进入"File Locations"界面,其中"Destination..."为缺省ORACLE_HOME所指的路径.点击NEXT.
7. 进入"Available Products"界面,选择第一项"Oracle9i Database",点击右下角"roducts Languages",选择"Simplified Chinese",NEXT.
8. 进入"Installation Types"界面,如想最大化安装,选"Enterprise Edition",自由选择则"Custom",点击NEXT.
9. 进入"Datebase Configuration"界面.注意:应选择"Customized",可以对数据库进行个性化创建,如:数据文件大小,位置等,NEXT.
10.进入"Operating System Groups"界面,对于OSDBA和OSOPER框输入dba.
11.指定Global Database Name和SID,点NEXT. //在这要注意,Name和SID一定要和指定的相同,ota
12.如第8步选"Custom",则会有产品列表,选择完成后,点NEXT.
13."Summary"界面,总结要安装的内容,确认后,点NEXT.
14.开始安装,时间比较长,其中会提示换盘,在提示中要修改PATH为:/cdrom/disk2 & /cdrom/disk3.
15."Install Successful"后,会有对话框提示:以root身份运行/home/oracle/product/9.2/root.sh脚本,Enter the full pathname of the local bin directory : y . //在/usr/local/bin中生成一些命令,在/var/opt/oracle中生成oratab文件.
16.开始创建数据库. //这一步在我的256M的机器上特别的慢,实在是让人忍不可忍啊.哈哈!
17.弹出"Net Configuration Assistant"界面,选中"erform typical configuration"项,进行网络的典型配置.
18.安装完毕.
四. oracle的启动与关闭
Oracle9i与8i不同,去掉了SVRMGRL工具,数据库的启停只能用sqlplus.
$sqlplus /nolog
SQL>connect / as sysdba
已连接.
SQL>startup(或shutdown)
启动监听
$lsnrctl start
停止监听
$lsnrctl stop
五. Oracle 服务器在操作系统启动时自动开始
(这里说明一下,下面的办法只可参考,不一定试用每一个实例的!)
1. 修改文件/var/opt/oracle/oratab
su - oracle
$ cd /var/opt/oracle
$ vi oratab //将ota:/home/oracle/product/9.2:N中最后的N修改为Y
2. 编写启动脚本/etc/init.d/dbora
su - root
$ cd /etc/init.d
$ vi dbora
ORACLE_HOME=/home/oracle/product/9.2
ORACLE_OWNER=oracle
if [ ! "$1" ]; then echo "no parameter"; exit; fi
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart"
su - $ORACLE_OWNER -c "Isnrctl start listener"
;;
'stop')
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut &"
su - $ORACLE_OWNER -c "lsnrctl stop listener &"
sleep 30 #give datebase some time to shutdown
;;
esac
$ ln -s /etc/init.d/dbora /etc/rc0.d/K10dbora
$ ln -s /etc/init.d/dbora /etc/rc2.d/S99dbora
$ reboot // 重启系统检查
六. Oracle常用命令
dbca - 用于创建,删除,管理oracle实例
oemapp dbassist - Database Configuration Assistant 用于数据库的管理(创建,修改,删除)
netca - Net8 Configuration Assistant 用于数据库服务器网络服务的配置