Oracle 11.2.0.1 for RHEL5 RHEL6 Server(包括x86和x86_64平台)的静默安装与配置是本文我们主要要介绍的内容,接下来我们就介绍这一过程。过程中的所有操作无需使用图形界面,静默安装能减少安装出错的可能性,也能大大加快安装速度。
# 后跟命令表示以操作系统下root用户操作;
$ 后跟命令表示以操作系统下Oracle用户操作;
禁用selinux:
setenforce 0
vi /etc/sysconfig/seliunx
SELINUX=disabled
- 1.
- 2.
- 3.
关闭防火墙:service iptables stop
禁用以下非必要的系统服务:
chkconfig --level 2345 iptables off
chkconfig --level 2345 rhnsd off
chkconfig --level 2345 isdn off
chkconfig --level 2345 avahi-daemon off
chkconfig --level 2345 avahi-dnsconfd off
chkconfig --level 2345 bluetooth off
chkconfig --level 2345 cpuspeed off
chkconfig --level 2345 hidd off
chkconfig --level 2345 ip6tables off
chkconfig --level 2345 mcstrans off
chkconfig --level 2345 pcscd off
chkconfig --level 2345 gpm off
chkconfig --level 2345 xinetd off
chkconfig --level 2345 portmap off
chkconfig --level 2345 yum-updatesd off
chkconfig --level 2345 restorecond off
chkconfig --level 2345 setroubleshoot off
chkconfig --level 2345 yum-updatesd off
chkconfig --level 2345 libvirtd off
chkconfig --level 2345 xendomains off
chkconfig --level 2345 xend off
chkconfig --level 2345 iptables off
chkconfig --level 2345 sendmail off
chkconfig --level 2345 cups off
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
将/dev/shm的大小增加到总内存的100%(要大于给oracle分配的total mem:缺省值:40%),修改/etc/fstab的这行:默认的: none /dev/shm tmpfs defaults 0 0改成: none /dev/shm tmpfs defaults,size=16G 0 0,重新mount /dev/shm使之生效:# mount -o remount /dev/shm,马上可以用"df -h"命令检查变化。
Package安装检查
# rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++
glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++
libstdc++-devel make sysstat unixODBC unixODBC-devel | grep "not installed"
libaio-devel sysstat unixODBC unixODBC-devel
- 1.
- 2.
- 3.
- 4.
几个rpm包可以在RHEL5.3的安装光盘里找到。注意:除了sysstat包,其他同样名字的32位的rpm包在64位系统中也要安装。
增加数据库组和用户
# id oracle (确认oracle用户是否存在,确保oracle原不存在)(建立产品清单管理组) (建立数据库安装组) (建立ASM管理组) (建立Grid管理组)
/usr/sbin/groupadd -g 1001 oinstall
/usr/sbin/groupadd -g 1002 dba
/usr/sbin/groupadd -g 1003 asmadmin
/usr/sbin/groupadd -g 1004 asmdba
- 1.
- 2.
- 3.
- 4.
(oinstall主要组,确保/home/oracle原不存在),配置oracle密码:georacle
/usr/sbin/useradd -g oinstall -G dba,asmdba oracle -d /home/oracle
passwd oracle
id oracle
uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba),1004(asmdba)
- 1.
- 2.
- 3.
- 4.
调整OS内核参数
设置原则:
kernel.shmmax设为物理内存大小(如果系统已设置了足够大就无需再设置了,参考值为最小需求)
# vi /etc/sysctl.conf
#------------------------------------------
kernel.shmall = 2097152
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.aio-max-nr = 1048576
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 1048586
#------------------------------------------
# /sbin/sysctl -p (设置参数立即生效)
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
[redhat6]:如果有如下提示错误,忽略,因为即使未修改参数也提示有这个错误。
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
- 1.
- 2.
- 3.
vi /etc/redhat-release,修改为如下值,成功安装数据库后在修改回来:
Red Hat Enterprise Linux Server release 5.0 (Tikanga)
[redhat6]
- 1.
- 2.
增加shell限制
为了提升性能增加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 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
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
建立必需目录和文件
more /etc/oratab (确认原来不存在Oracle主目录)
more /etc/oraInst.loc (确认原来不存在Oracle产品清单目录)
建立(Oracle_base目录)
mkdir -p /opt/oracle/11.2.0 /home/oracle/inventory/
chown -R oracle:oinstall /opt/oracle /home/oracle
- 1.
- 2.
- 3.
- 4.
- 5.
设置oracle用户环境变量
如果服务器有多网卡, 注意设置ORACLE_HOSTNAME为某网卡IP对应的主机名, 参照/etc/hosts文件.
$ vi /home/oracle/.bash_profile
umask 022
ORACLE_HOSTNAME=localhost.localdomain
ORACLE_BASE=/opt/oracle
ORACLE_HOME=$ORACLE_BASE/11.2.0
ORACLE_SID=ge01
PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
LC_ALL="en_US"
LANG="en_US"
NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
LD_LIBRARY_PATH=$ORACLE_HOME/lib
NLS_LANG NLS_DATE_FORMAT
export ORACLE_HOSTNAME ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LC_ALL LANG LD_LIBRARY_PATH NLS_LANG
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
上传软件到/home/oracle/ 解压Oracle安装文件
# cd /home/oracle/
# unzip linux*_11gR2_database_1of2.zip -d /home/oracle
# unzip linux*_11gR2_database_2of2.zip -d /home/oracle
# chown -R oracle:oinstall /opt/oracle /home/oracle
- 1.
- 2.
- 3.
- 4.
在解压后oracle软件的response目录里有各种响应文件的模版.
生成响应文件模板。
$ vi /home/oracle/database/response/db_install.rsp
#--------------------------------------------------------------------
# 注意!不要更改以下参数,否则安装会报错!
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
DECLINE_SECURITY_UPDATES=true
#以下参数根据实际情况更改,ORACLE_HOSTNAME的值由hostname命令获得
ORACLE_HOSTNAME=localhost.localdomain
INVENTORY_LOCATION=/home/oracle/inventory
UNIX_GROUP_NAME=oinstall
SELECTED_LANGUAGES=en,zh_CN
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
#--------------------------------------------------------------------
各参数含义如下:
-silent 表示以静默方式安装,不会有任何提示
-force 允许安装到一个非空目录
-noconfig 表示不运行配置助手netca
-responseFile 表示使用哪个响应文件,必需使用绝对路径
oracle.install.responseFileVersion 响应文件模板的版本,该参数不要更改
oracle.install.option 安装选项,本例只安装oracle软件,
DECLINE_SECURITY_UPDATES 是否需要在线安全更新,该参数不要更改
ORACLE_HOSTNAME 安装主机名
UNIX_GROUP_NAME oracle用户用于安装软件的组名
INVENTORY_LOCATION oracle产品清单目录
SELECTED_LANGUAGES oracle运行语言环境,一般选en,zh_CN
ORACLE_HOME Oracle安装目录
ORACLE_BASE oracle基础目录
oracle.install.db.InstallEdition 安装版本类型,一般是企业版
oracle.install.db.isCustomInstall 是否定制安装,默认Partitioning,OLAP,RAT都选上了
oracle.install.db.customComponents 定制安装组件列表:除了以上默认的,可加上Label Security和Database Vault
oracle.install.db.DBA_GROUP oracle用户用于授予OSDBA权限的组名
oracle.install.db.OPER_GROUP oracle用户用于授予OSOPER权限的组名
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
开始安装oracle软件
1) 通过response文件静默安装, 大概2-3分钟:
$ ./runInstaller -silent -force -noconfig -responseFile /home/oracle/db_install.rsp
控制台直到出现以下提示则表示安装完成:
#-------------------------------------------------------------------
...
/opt/oracle/oraInventory/orainstRoot.sh
/opt/oracle/product/11.2.0/dbhome_1/root.sh
To execute the configuration scripts:
1. Open a terminal window
2. Log in as "root"
3. Run the scripts
4. Return to this window and hit "Enter" key to continue
Successfully Setup Software.
#-------------------------------------------------------------------
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
2) 安装期间查看安装日志信息了解安装进度:
$ cd $ORACLE_BASE/oraInventory/logs
$ tail -100f installActions*.log
- 1.
- 2.
3) 安装的软件信息会写入inventory.xml文件, 如果需重运行则把该文件的对应安装条目信息删除即可:$ vi $ORACLE_BASE/oraInventory/ContentsXML/inventory.xml
运行orainstRoot.sh和root.sh
若本机***次安装oracle软件, 则执行orainstRoot.sh来建立oraInst.loc文件和修改权限:
$ su -
# /opt/oracle/oraInventory/orainstRoot.sh
# more /etc/oraInst.loc
- 1.
- 2.
- 3.
执行$ORACLE_HOME下的root.sh来建立oratab,dbhome,oraenv,coraenv文件, 如果提示则一直回车:
# /opt/oracle/11.2.0/root.sh
# more /etc/oratab
- 1.
- 2.
静默配置监听
通过response文件运行netca, 生成sqlnet.ora和listener.ora文件, 位于$ORACLE_HOME/network/admin目录下:
# su - oracle
$ $ORACLE_HOME/bin/netca /silent /responsefile /home/oracle/netca.rsp
$ ll $ORACLE_HOME/network/admin/*.ora
$ lsnrctl status
- 1.
- 2.
- 3.
- 4.
执行完后, 监听就已经启动了, 默认端口是1521, 默认是动态监听, 只要实例启动了就会监听到。
静默建库
1) 生成响应文件模板:$ vi /home/oracle/dbca.rsp
#以下参数不要更改
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
TEMPLATENAME = "General_Purpose.dbc"
- 1.
- 2.
- 3.
- 4.
- 5.
#以下参数必须设置
[CREATEDATABASE]
GDBNAME = "ge01"
SID = "ge01"
SYSPASSWORD = "georacle"
SYSTEMPASSWORD = "georacle"
EMCONFIGURATION = "LOCAL"
DBSNMPPASSWORD = "georacle"
CHARACTERSET = " ZHS16GBK"
MEMORYPERCENTAGE = "40"
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
安装数据库的命令:dbca -silent -responseFile /home/oracle/dbca.rsp
修改其他配置文件:vi /etc/oratab 修改文件中第三列N为Y
修改$ORACLE_HOME/bin/dbstart文件中ORACLE_HOME_LITENER=${ORACLE_HOME}
(同样,也需要修改 dbshut )后,可以手动运行dbstart文件,来测试是否可以正确启动oracle11g
首先以root身份在/etc/init.d/目录下创建Oracle11g的服务文件。vi /etc/init.d/oracle11g,然后修改这个文件内容如下:
# !/bin/bash
# chkconfig: 345 51 49
# description: starts the oracle dabase deamons
#
ORACLE_HOME=/opt/oracle/11.2.0
ORACLE_OWNER=oracle
ORACLE_DESC="Oracle 11g"
ORACLE_LOCK=/opt/oracle/oracle.lock
case "$1" in
'start')
echo -n \"Starting ${ORACLE_DESC}:\"
runuser - $ORACLE_OWNER -c '$ORACLE_HOME/bin/dbstart'
touch ${ORACLE_LOCK}
echo
;;
'stop')
echo -n "shutting down ${ORACLE_DESC}: "
runuser - $ORACLE_OWNER -c '$ORACLE_HOME/bin/dbshut'
rm -f ${ORACLE_LOCK}
echo
;;
'restart')
echo -n "restarting ${ORACLE_DESC}:"
$0 stop
$0 start
echo
;;
*)
echo "usage: $0 { start | stop | restart }"
exit 1
esac
exit 0
chmod 744 /etc/init.d/oracle11g
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
配置自动启动oracle服务:chkconfig --level 35 oracle11g on
按照平台使用要求设置oracle:$sqlplus / as sysdba
将密码有效期由默认的180天修改成“无限制”:增加users表空间文件,调整参数。
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
alter database add logfile '/opt/oracle/oradata/ge01/redo04.log' size 150M;
alter database add logfile '/opt/oracle/oradata/ge01/redo05.log' size 150M;
alter database add logfile '/opt/oracle/oradata/ge01/redo06.log' size 150M;
alter tablespace users add datafile '/opt/oracle/oradata/ge01/users02.dbf' size 100M autoextend on next 10M;
alter tablespace users add datafile '/opt/oracle/oradata/ge01/users03.dbf' size 100M autoextend on next 10M;
alter system set open_cursors = 500 scope=spfile;
alter system set processes=350 scope=spfile;
alter system set sessions=350 scope=spfile;
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
重启oracle生效
shutdown immediate
startup
- 1.
- 2.
以上就是Oracle 11.2.0.1 for RHEL5-6 x86和x64静默安装的全部过程,希望本次的介绍能够对您有所收获!
【编辑推荐】