CentOS下命令行安装Oracle10G
服务器IP:202.97.141.102
安装文件解压目录:/oracle/install
 
 
1 安装和更新相关软件
 
yum install openmotif
yum install compat-db
yum install compat-libc*
yum install compat-gcc*
yum install glibc-devel*
yum install libaio*
yum install libc-*
 
 
2 创建oracle用户和组
 
以root用户执行如下命令:
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
passwd oracle
 
 
3 创建安装目录
 
mkdir -p /oracle/10.2
chown -R oracle:oinstall /oracle
chmod -R 775 /oracle
 
 
4 配置内核参数
 
编辑文件/etc/sysctl.conf,添加以下项:
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
设置完之后,再运行使用sysctl -p来使相应的设置生效。
 
 
5 修改gennttab(此文件存在错误,会导致安装过程中断)
 
执行如下命令:
cd /oracle/install/database/stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles
unzip filegroup6.jar bin/gennttab
 
编辑解压出来的bin/gennttab,将以下内容
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\\
/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
改为:
LIB=`$ECHO ${TtoLIB} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
INI=`$ECHO ${TtoINI} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
BAS=`$ECHO ${TtoBAS} | $SED 's/ /\n/g' | $GREP "^${T}:" | $AWK -F: '{print $2}'`
 
保存后再将gennttab更新到filegroup6.jar里面,执行如下命令:
cd /oracle/install/database/stage/Components/oracle.network.rsf/10.2.0.1.0/1/DataFiles 
zip -vu filegroup6.jar bin/gennttab
 
 
6 设置可以使用的进程数和打开的文件数
 
在文件/etc/security/limits.conf中加入
oracle  soft   nofile  65536
oracle  hand  nofile  65536
oracle  soft   nproc  16384
oracle  hand  nproc  16384
 
在文件/etc/pam.d/login中增加
session required /lib/security/pam_limits.so
 
 
7 修改环境变量
 
在/etc/profile中加入:
export LANG=zh_CN.GBK
export ORACLE_BASE=/oracle
export ORACLE_HOME=/oracle/10.2
export PATH=$PATH:$ORACLE_HOME/bin
再执行命令:
source /etc/profile
使配置生效
 
 
8 修改操作系统发行版本
 
需要修改发行版本,以便通过oracle的安装检查
修改文件/etc/redhat-release内容为Red Hat Enterprise Linux AS release 3 (Taroon)
 
  
9 修改enterprise.rsp文件
 
在oracle安装目录下可以找到/oracle/install/database/response/enterprise.rsp,修改以下项目:
ORACLE_HOME="/oracle/10.2"
ORACLE_HOME_NAME="Oracle10g"
s_nameForDBAGrp="dba"
s_nameForOPERGrp="dba"
n_configurationOption=3
 
 
10 开始安装
 
su -l oracle
/oracle/install/database/runInstaller -ignoreSysPrereqs -force -silent -responseFile /oracle/install/database/response/enterprise.rsp
 
 
11 Oracle系统初始化
 
使用root用户运行$ORACLE_HOME/root.sh进行Oracle的系统初始化工作,一路按回车用默认值即可。
 
 
12 安装网络监听器
 
编辑/oracle/install/database/response/netca.rsp,将INSTALL_TYPE修改为:
INSTALL_TYPE=""custom"" 
 
然后运行命令:
su -l oracle
/oracle/10.2/bin/netca /silent /responseFile /oracle/install/database/response/netca.rsp
 
 
13 修改dbstart
 
编辑 $ORACLE_HOME/bin/dbstart,将:
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
改为:
ORACLE_HOME_LISTNER=$ORACLE_HOME
否则网络监听器可能无法自动启动。
 
14 安装数据库实例
 
编辑/oracle/install/database/response/dbca.rsp,修改以下项目:
GDBNAME  = "orcl10g"
SID = "orcl"
SYSPASSWORD = "sys"
SYSTEMPASSWORD = "sys"
CHARACTERSET = "UTF8"
NATIONALCHARACTERSET = "UTF8"
然后运行命令:
su -l oracle
/oracle/10.2/bin//dbca -silent -responseFile /oracle/install/database/response/dbca.rsp -cloneTemplate
 
15 初始化
 
以root执行命令:
/oracle/oraInventory/orainstRoot.sh
修改/etc/oratab文件中的
orcl:/oracle/10.2:N
orcl:/oracle/10.2:Y
使数据库实例能够自动启动
 
16 安装Oracle服务
 
创建文件 /etc/init.d/oracle,输入下列内容
 
#!/bin/bash
#
 
export ORACLE_HOME=/oracle/10.2
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export ORACLE=oracle
 
. /etc/rc.d/init.d/functions
 
RETVAL=0
 
start()
{
daemon --user $ORACLE $ORACLE_HOME/bin/dbstart
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl start"
}
 
stop()
{
daemon --user $ORACLE "$ORACLE_HOME_LISTNER/bin/lsnrctl stop"
daemon --user $ORACLE $ORACLE_HOME/bin/dbshut
}
 
case "$1" in
start)
start
RETVAL=$?
;;
stop)
stop
RETVAL=$?
;;
restart)
stop
start
RETVAL=$?
;;
*)
echo "usage: $0 {start|stop|restart}"
exit
;;
esac
exit $RETVAL
 
 
然后将这个文件赋予可执行的权限,执行如下命令:
chmod a+x /etc/init.d/oracle
 
让Oracle的服务在Linux启动时自动运行,执行如下命令:
ln -s /etc/init.d/oracle /etc/rc.d/rc3.d/S99oracle
ln -s /etc/init.d/oracle /etc/rc.d/rc5.d/S99oracle
 
 
17 修改操作系统发行版本
 
将/etc/redhat-release的内容改为:CentOS release 5 (Final)
  
18 启动
 
service oracle start
 
19 创建ZCMS表空间及用户
 
执行命令:
su -l oracle
sqlplus / as sysdba
create tablespace zcms datafile '/oracle/oradata/zcms.dbf' size 2000m autoextend on next 100m maxsize unlimited extent management local;
create user ZCMS identified by "10301" default tablespace ZCMS temporary tablespace TEMP;
grant CONNECT to ZCMS with admin option;
grant DBA to ZCMS with admin option;
grant UNLIMITED TABLESPACE to ZCMS with admin option;
hackIE