Oracle Database 11.2.0.1 for RHEL5 Server(

来源:互联网 发布:mysql查询语句面试题 编辑:程序博客网 时间:2024/05/30 23:31

本文档是Oracle Database 11.2.0.1for RHEL5 Server(包括x86x86_64平台)的静默安装指南. 所有操作无需使用图形界面. 静默安装能减少安装出错的可能性, 也能大大加快安装速度. 
#
后跟命令表示以操作系统下root用户操作; 
$
后跟命令表示以操作系统下oracle用户操作; 
禁用selinux
setenforce 0
vi /etc/sysconfig/seliunx
SELINUX=disabled
关闭防火墙:
service iptables stop
chkconfig --level 2345 iptables off 
/dev/shm的大小增加到总内存的50%(要大于给oracle分配的total mem:缺省值:40%)
修改/etc/fstab的这行:
默认的: 
none    /dev/shm       tmpfs  defaults        0 0
改成: 
none     /dev/shm        tmpfs  defaults,size=1G   0 0
重新mount /dev/shm使之生效:
# mount -o remount /dev/shm 

马上可以用"df -h"命令检查变化。
1.2 Package
安装检查
# rpm -q binutils compat-libstdc++-33elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-commonglibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-develmake pdksh sysstat unixODBC unixODBC-devel | grep "not installed" 
sysstat unixODBC unixODBC-devel
三个rpm包可以在RHEL5.3的安装光盘里找到
 
1.3
增加数据库组和用户
# id oracle (
确认oracle用户是否存在,确保oracle原不存在)(建立产品清单管理组) (建立数据库安装组) (建立ASM管理组) (建立Grid管理组) 
/usr/sbin/groupadd oinstall 
/usr/sbin/groupadd dba 
/usr/sbin/groupadd asmadmin
/usr/sbin/groupadd  asmdba 
(oinstall
主要组,确保/home/oracle原不存在)
# /usr/sbin/useradd -g oinstall -G dba,asmdbaoracle -d /home/oracle -p georacle 
# id oracle 
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),504(asmdba) 

1.4
调整OS内核参数 

设置原则: 
kernel.shmmax
4GB-1byte或一半的物理内存, 哪个值更低用哪个;最小500M.建议2G以上. 
fs.file-max
512 * PROCESSES.
# vi /etc/sysctl.conf (
增加或修改以下参数, 参考值为最小需求,kernel.shmmax默认即可无需设置 ) 
#------------------------------------------ 
fs.aio-max-nr = 1048576 
fs.file-max = 6815744 
kernel.shmall = 2097152 
#kernel.shmmax = 536870912 
kernel.shmmni = 4096 
kernel.sem = 250 32000 100 128 
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.5
增加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.6
建立必需目录和文件 
 more /etc/oratab (
确认原来不存在Oracle主目录) 
 more /etc/oraInst.loc (
确认原来不存在Oracle产品清单目录)
建立(Oracle_base目录) 
mkdir -p /opt/oracle/ 
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle 

1.7
设置oracle用户环境变量 

如果服务器有多网卡, 注意设置ORACLE_HOSTNAME为某网卡IP对应的主机名, 参照/etc/hosts文件. 
# su - oracle 
$ vi ~/.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"
export ORACLE_HOSTNAME ORACLE_BASE ORACLE_HOMEORACLE_SID PATH LC_ALL LANG NLS_LANG NLS_DATE_FORMAT 
运行生效
$ . ~/.bash_profile 
  

1.8
上传软件到/home/oracle/解压Oracle安装文件 

$ cd /home/oracle/ 
$ unzip linux*_11gR2_database_1of2.zip -d 
$ unzip linux*_11gR2_database_2of2.zip -d 
$ cd /home/oracle/database 

在解压后oracle软件的response目录里有各种响应文件的模版. 
1.9
生成响应文件模板 

1)
方法一(推荐) 
$ 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 
UNIX_GROUP_NAME=oinstall 
SELECTED_LANGUAGES=en 
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
运行语言环境,一般选enzh_CN 
ORACLE_HOME Oracle
安装目录 
ORACLE_BASE oracle
基础目录 
oracle.install.db.InstallEdition
安装版本类型,一般是企业版 
oracle.install.db.isCustomInstall
是否定制安装,默认Partitioning,OLAP,RAT都选上了 
oracle.install.db.customComponents
定制安装组件列表:除了以上默认的,可加上Label SecurityDatabase Vault 
oracle.install.db.DBA_GROUP oracle
用户用于授予OSDBA权限的组名 
oracle.install.db.OPER_GROUP oracle
用户用于授予OSOPER权限的组名 

1.10
开始安装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. 
#------------------------------------------------------------------- 
2)
安装期间查看安装日志信息了解安装进度: 
$ cd $ORACLE_BASE/oraInventory/logs 
$ tail -100f installActions*.log 
3)
安装的软件信息会写入inventory.xml文件, 如果需重运行则把该文件的对应安装条目信息删除即可:
$ vi$ORACLE_BASE/oraInventory/ContentsXML/inventory.xml 
1.11
运行orainstRoot.shroot.sh 
若本机第一次安装oracle软件, 则执行orainstRoot.sh来建立oraInst.loc文件和修改权限: 
$ su - 
# /opt/oracle/oraInventory/orainstRoot.sh 
# more /etc/oraInst.loc 
执行$ORACLE_HOME下的root.sh来建立oratab,dbhome,oraenv,coraenv文件, 如果提示则一直回车: 
# /opt/oracle/11.2.0/root.sh 
# more /etc/oratab 
2.1
静默配置监听 
通过response文件运行netca, 生成sqlnet.oralistener.ora文件, 位于$ORACLE_HOME/network/admin目录下: 
# su - oracle 
$ $ORACLE_HOME/bin/netca /silent /responsefile/home/oracle/netca.rsp 
$ ll $ORACLE_HOME/network/admin/*.ora 
$ lsnrctl statusR>
执行完后, 监听就已经启动了, 默认端口是1521, 默认是动态监听, 只要实例启动了就会监听到. 
3.1
静默建库 
1)
生成响应文件模板:
$ vi /home/oracle/dbca.rsp 
#
以下参数不要更改 
[GENERAL] 
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase" 
[CREATEDATABASE]
TEMPLATENAME = "General_Purpose.dbc" 
#
以下参数必须设置 
[CREATEDATABASE]
GDBNAME = "ge01"
SID = "ge01"
SYSPASSWORD = "georacle"
SYSTEMPASSWORD = "georacle"
EMCONFIGURATION = "LOCAL"
DBSNMPPASSWORD = "georacle"
CHARACTERSET = " ZHS16GBK"
MEMORYPERCENTAGE = "40" 
dbca -silent -responseFile /home/oracle/dbca.rsp 
vi /etc/oratab 
修改文件中第三列NY
修改了$ORACLE_HOME/bin/dbstart文件中ORACLE_HOME_LITENER=${ORACLE_HOME},可以手动运行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"
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 
配置自动启动oracle服务
chkconfig --level 35 oracle11g on 
-----------------------------------------------------------------------
删除oracle 安装
 
静默删除数据库文件
vi /home/oracle/dbca.rsp
#
以下参数必须设置
[GENERAL]
OPERATION_TYPE = "deleteDatabase" 
[DELETEDATABASE]
SOURCEDB = "ge01" 
 dbca -silent -deleteDatabase -responseFile/home/oracle/dbca.rsp 
使用oracle deinstall工具删除数据库程序文件: 
 deinstall -home /opt/oracle/11.2.0 
-----------------END---------------------

原创粉丝点击