日期:2014-05-16  浏览次数:20529 次

命令行安装oracle
参考并经本人整理:http://www.sosdb.com/tech/oracle_install/118bbs2.htm

    有的时候不方便登陆Linux/Unix的图形界面安装数据库,且GUI方式安装让我们无法知道具体是做了什么操作,我们完全可以采用命令模式安装和删除oracle软件(代替OUI)、建立和删除数据库库(代替dbca)。

平台:RHEL5.6,oracle10.2.0.1

(以下假设安装了中文环境)

1、使用root上传并解压oracle软件,假如放在/mnt/soft/目录下

#  cd /mnt/soft/
#  unzip 10201_database_linux32.zip


2、设置安装oracle软件必须的操作系统信息,如组、用户、系统内核参数、目录、用户初始化参数等

--增加组和用户
#  groupadd oinstall
#  groupadd dba
#  useradd -g oinstall -G dba oracle
#  passwd oracle


--修改系统内核参数
#  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
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
#  /sbin/sysctl -p   (修改以后让参数生效)


--为了提升性能增加oracle用户的shell限制
#  vi /etc/security/limits.conf
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile 1024
oracle              hard    nofile 65536

#  vi /etc/pam.d/login
session    required     /lib/security/pam_limits.so
session    required     pam_limits.so

#  vi /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

# vi /etc/selinux/config   (使安全linux标志失效)
SELINUX=disabled


--建立ORACLE_BASE目录
#  mkdir -p /u01/app/oracle
#  chown -R oracle:oinstall /u01/app/oracle
#  chmod -R 775 /u01/app/oracle

(如果安装时提示权限不足,执行:#  chown –R oracle:oinstall /u01)

--oracle用户的.bash_profile文件设置
# su - oracle
$  vi ~/.bash_profile
umask 022
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
$ . ~/.bash_profile


3、建立oraInst.loc文件
#  vi /etc/oraInst.loc        (加入或修改以下内容,其中/u01/app/oracle是ORACLE_BASE)
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall
#  chmod 664 /etc/oraInst.loc


4、建立response文件(在解压后oracle软件的response目录里有各种响应文件的模版)

$  cd /mnt/soft/database/response
$  cp enterprise.rsp enterprise_temp.rsp 
$  vi enterprise_temp.rsp   (以下参数必需设置)
UNIX_GROUP_NAME="oinstall"
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1"
ORACLE_HOME_NAME="OraDb10g_home1"
s_nameForDBAGrp="dba"
s_nameForOPERGrp="dba"
n_configurationOption=3


5、通过response文件运行OUI(-noconfig表示不运行配置助手只装软件)
修改oraparame.ini以使oracle可以在RHEL5.x上安装:
$  vi /mnt/soft/database/install/oraparam.ini
   在含有redhat-4,的地方加上redhat-5


$  cd /mnt/soft/database
$  ./runInstaller -silent -noconfig -responseFile /mnt/soft/database/response/enterprise_temp.rsp

安装结束后,以root用户执行$ORACLE_HOME下的root.sh:
#  /u01/app/oracle/product/10.2.0/db_1/root.sh


6、通过response文件运行netca

$  cd /mnt/soft/database/response
$  cp netca.rsp netca_temp.rsp
$  vi netca_temp.rsp   (如果要修改监听名或端口在此编辑,一般什么都不用修改)
$  $ORACLE_HOME/bin/netca /silent /responsefile /mnt/soft/database/response/netca_temp.rsp

执行完后,监听就已经启动了。如果无法启动,报“Exception in thread "main" java.lang.UnsatisfiedLinkError: /u01/app/oracle/product/10.2.0/db_1/jdk/jre/lib/i386/libawt.so”错误,说明缺少必要的库libXp,按以下方法安装,然后再执行netca:
(安装li