非图形化静默安装oracle 11g

用response文件silent模式安装和配置oracle11g

1.硬件需求:
内存:    grep -i memtotal /proc/meminfo     官方要求至少1G内存
swap 交换分区 grep -i swaptotal /proc/meminfo     
如果你的内存小于2G,那么交换分区为内存的 1.5倍
如果内存介于2G - 8G 之间,那么交换分区应该等于内存的大小
如果内存大于8G,那么交换分区应该为内存的 0.75 倍    
注:以上交换分区只是建议的大小,实际安装时不强制要求这样设置
硬盘:df -k    企业版4.5G,那么安装的话,硬盘空间至少应该5G以上
2.安装前准备
创建oracle账号和用户组,并创建安装目录
编辑/etc/sysctl.conf和/etc/security/limits.conf修改系统参数
编辑/etc/profile,/home/oracle/.bash_profile,/home/oracle/.bashrc修改oracle用户配置文件
创建/etc/oraInst.loc文件设置oracle inventory
可以用以下脚本自动设置(OS:RHEL6.2)
#!/bin/bash
 
yum -y install binutils compat-libcap1 compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++-devel libaio sysstat libaio-devel elfutils-libelf-devel unixODBC unixODBC-devel
 
#unzip linux.x64_11gR2_database_1of2.zip
#unzip linux.x64_11gR2_database_2of2.zip
#find database/ -name "db_install.rsp" | xargs -i cp {} .
 
ORACLE_BASE=/DataBase/oracle
 
ORACLE_PASSWORD="oracle_admin"
groupadd oinstall
groupadd dba
useradd -m -g oinstall -G dba oracle
echo "oracle:$ORACLE_PASSWORD" | chpasswd
mkdir -p $ORACLE_BASE
chown -R oracle:oinstall $ORACLE_BASE
chmod -R 775 $ORACLE_BASE
cat >> /etc/sysctl.conf <<EOF
 
fs.aio-max-nr = 3145728
 
fs.file-max = 6815744
 
kernel.shmall = 1073741824
 
kernel.shmmax = 4398046511104
 
kernel.shmmni = 4096
 
kernel.sem = 250 32000 100 142
 
net.ipv4.ip_local_port_range = 9000 65500
 
net.core.rmem_default = 262144
 
net.core.rmem_max = 4194304
 
net.core.wmem_default = 262144
 
net.core.wmem_max = 1048576
 
EOF
 
 
 
 
 
cat >> /etc/security/limits.conf <<EOF
 
oracle soft nproc 2048
 
oracle hard nproc 16384
 
oracle soft nofile 1024
 
oracle hard nofile 65536
 
EOF
 
 cat >> /etc/profile <<EOF
 
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
 ulimit -p 16384
 ulimit -n 65536
else
 ulimit -u 16384 -n 65536
fi
 
fi
 
 
EOF
 
cat >> /home/oracle/.bash_profile <<EOF
 
export TMP=/tmp
 
export TMPDIR=$TMP
 
export ORACLE_HOSTNAME=$(hostname)
 
export ORACLE_BASE=/DataBase/oracle
 
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome
 
export ORACLE_SID=orcl
 
export ORACLE_TERM=xterm
 
export PATH=$ORACLE_HOME/bin:$PATH
 
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib64:/usr/lib:/usr/lib64:/usr/local/lib64
 
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
 
export LD_ASSUME_KERNEL=2.6.18
 
export NLS_LANG="american_america.UTF8"
 
export NLS_LANG="AMERICAN_AMERICA.US7ASCII"
 
EOF
 
 
 
cat >> /home/oracle/.bashrc <<EOF
 
alias sysdba='sqlplus "/ as sysdba"'
 
EOF
 
 
 
cat >> /etc/oraInst.loc <<EOF
 
inventory_loc=$ORACLE_BASE/oraInventory
 
inst_group=oinstall
 
EOF
 
chmod 664 /etc/oraInst.loc
 
 
 
sysctl -p
 
3. 准备oracle软件应答文件
根据rsp模板创建
su - oracle
cp /tmp/database/response/db_install.rsp ./          //假定oracle安装文件解压到/tmp目录下
vi db_install.rsp                  //参考文件内说明修改,也可以参考http://loofeer.blog.51cto.com/707932/1119713
chmod 640 db_install.rsp            //避免文件被非授权访问
 
4.准备创建数据库应答文件
cp /tmp/database/response/dbca.rsp ./          //假定oracle安装文件解压到/tmp目录下
vi dbca.rsp 修改以下内容
GDBNAME = "ora11g"
SID = "ora11g"
SYSPASSWORD = "oracle11"
SYSTEMPASSWORD = "oracle11"
如果需要使用Oracle Enterprise Manager,则还需要修改以下参数如下:
EMCONFIGURATION="LOCAL"
SYSMANPASSWORD = "oracle11"
DBSNMPPASSWORD = "oracle11"
 
5.准备监听应答文件
cp /tmp/database/response/netca.rsp ./        //假定oracle安装文件解压到/tmp目录下
vi netca.rsp修改以下内容
INSTALL_TYPE=""custom""
6.安装oracle11g
cd /tmp/database
./runInstaller -silent -responseFile /home/oracle/db_install.rsp
安装说明:
a. 选项-silent表示静默安装,免安装交互,大部分安装信息也不输出
b. 选项-responseFile指定应答文件,要求用绝对路径
c. 执行./runInstaller -help可以查看安装帮助
d. 若忽略-silent选项,将会允许交互,对于应答文件中未设置的项可以再手工指定
e. 若添加-noconfig选项,可以忽略应答文件中的安装类型,而仅安装数据库软件
安装后运行
/DataBase/oracle/product/11.2.0/dbhome/root.sh
7.创建数据库
cd
dbca -silent -cloneTemplate -responseFile ./dbca.rsp
8.创建监听
netca /silent /responseFile /home/oracle/netca.rsp
9.开启oracle监听
lsnrctl start
dbstart $ORACLE_HOME
10.创建oracle服务脚本(可以看情况修改)
vi /etc/init.d/oracle
#!/bin/bash
#### 2013.1.18 by larry ####
# chkconfig: 35 90 10
# description: Oracle Database Service Daemon.
ORCL_BASE="/DataBase/oracle"
ORACLE_HOME=/DataBase/oracle/product/11.2.0/dbhome
ORACLE_OWNER=oracle
case "$1" in
 start)
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"             #//.....
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"      #//.......
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"     #//..OEM...
    ;;
 stop)
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"      #//..OEM...
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"       #//.......
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop"              #//.....
    ;;
 status)
    if(pgrep "tnslsnr" && netstat -anpt | grep ":1521") &> /dev/null
    then
        echo "Oracle 11g Net Listener is running."
    else
        echo "Oracle 11g Net Listener is not running."
    fi
    if(netstat -anpt | grep ":1158" && netstat -anpt | grep ":5520") &> /dev/null
    then
        echo "Oracle 11g Enterprise Manager is running."
    else
        echo "Oracle 11g Enterprise Manager is not running."
    fi
    ;;
 restart)
    $0 stop
    $0 start
    ;;
 *)
    echo "Usage: $0 {start|stop|restart|status}"
    exit 1
    ;;
esac
exit 0
 
11.为系统添加服务
chkconfig --add oracle
 
12. 通过脚本控制Oracle服务
service oracle status/stop/start/restart

 

 

 

 

你可能感兴趣的:(非图形化安装oracle,命令行安装oracle,静默安装oracle)