Oracle9i for SUN Solaris installation.

来源:互联网 发布:数据库select语句大全 编辑:程序博客网 时间:2024/05/18 21:42
    偶发现一篇去年的文档, 想起了当时和另一个工程师在两台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   
    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=$PATH:$ORACLE_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",点击右下角"Products 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"界面,选中"Perform 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               用于数据库服务器网络服务的配置(也就知道这些了,哈哈) 
原创粉丝点击