首页 > tips > 在oracle enterprise linux 5(x86_64)上静默安装oracle 10Gr2并升级到10.2.0.5

在oracle enterprise linux 5(x86_64)上静默安装oracle 10Gr2并升级到10.2.0.5

2010年12月18日 发表评论 阅读评论

  首先,确认服务器上oracle需要的软件包都已安装完成。按照官方文档,oracle linux 5上需要安装的软件包有:

binutils, compat-libstdc++, compat-libstdc++(32 bit), elfutils-libelf, elfutils-libelf-devel, gcc, gcc-c++, glibc, glibc(32 bit), glibc-common, glibc-devel, glibc-devel(32 bit), libaio, libaio(32 bit), libaio-devel, libgcc, libgcc(32 bit), libstdc++, libstdc++(32 bit), libstdc++-devel, make, numactl-devel(x86_64), sysstat, unixODBC(32 bit), unixODBC-devel(x86_64), unixODBC(x86_64)

如果没有安装的,要先安装上。
  接着,添加需要的操作系统用户和组
# /usr/sbin/groupadd oinstall
# /usr/sbin/groupadd dba
# /usr/sbin/useradd -g oinstall -G dba oracle
  修改操作系统kernel参数
# vim /etc/sysctl.conf
以下各行,如果原来文件里有设置且设置的值比下面提到的还要大的话,跳过;否则,添加到文件最后。其实,也就是说这下面各行都是一些参考值,如果原来系统设置的就比这些值要大,就已原来的为准。

fs.file-max = 65536
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
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

编辑完成后,执行下面的命令使之生效:
# /sbin/sysctl -p
再接着,修改oracle用户的shell的限制
把下面四行的内容添加到文件/etc/security/limits.conf的最后:

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

  建立需要的目录
# mkdir -p /opt/oracle/
# chown -R oracle:oinstall /opt/oracle/
# chmod -R 775 /opt/oracle/
  配置用户所需的环境变量
把如下几行添加到文件/etc/profile.d/oracle.sh里

if [ $USER = “oracle” ]; then
if [ $SHELL = “/bin/ksh” ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi

并将以下几句添加到文件/home/oracle/.bash_profile的最后

ORACLE_BASE=/opt/oracle
ORACLE_HOME=/opt/oracle/10.2.0.1
ORACLE_SID=xxx
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$PATH
TNS_ADMIN=$ORACLE_HOME/network/admin
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
LANG=AMERICAN_AMERICA.ZHS16GBK
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:/lib:/usr/lib;
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export PATH ORACLE_BASE ORACLE_HOME ORACLE_SID TNS_ADMIN NLS_LANG LANG LD_LIBRARY_PATH CLASSPATH

  把oracle 10gr2的安装包放到服务器上,并解开,假设在目录/opt/backup/database下
# cp /opt/backup/database/response/enterprise.rsp /opt/backup/database/
并打开文件/opt/backup/database/enterprise.rsp,把如下的一些选项做相应调整:

UNIX_GROUP_NAME=”oinstall”
FROM_LOCATION=”/opt/backup/database/stage/products.xml”
ORACLE_HOME=”/opt/oracle/10.2.0.1″
ORACLE_HOME_NAME=”OraDbHome”
RESTART_SYSTEM=false
RESTART_REMOTE_SYSTEM=false
ORACLE_HOSTNAME=”oracle”
COMPONENT_LANGUAGES={“zh_CN”}
s_nameForDBAGrp=”dba”
s_nameForOPERGrp=”dba”
n_configurationOption=3

  接着,执行下面命令开始静默安装oracle:
# su – oracle
$ cd /opt/backup/database
$ ./runInstaller -ignoreSysPrereqs -silent -responseFile /opt/backup/database/enterprise.rsp
这里用参数-ignoreSysPrereqs主要是因为oracle 10gr2还不支持oracle linux 5这个他们自家的操作系统,所以需要跳过操作系统检查。

  再接着,要新建数据库了
$ exit
# cp /opt/backup/database/response/dbca.rsp /opt/backup/database/
并打开文件/opt/backup/database/dbca.rsp,把如下的一些选项做相应调整:

GDBNAME = “xxxdb01”
SID = “xxx”
TEMPLATENAME = “New Database”
SYSPASSWORD = “password”
SYSTEMPASSWORD = “password”
EMCONFIGURATION = “LOCAL”
SYSMANPASSWORD = “password”
DBSNMPPASSWORD = “password”
CHARACTERSET = “ZHS16GBK”
MEMORYPERCENTAGE = “40”

再用下面命令新建数据库xxxdb01:
# su – oracle
$ dbca -silent -responseFile /opt/tools/oracle_linux/database/dbca.rsp

  安装netca
$ exit
# cp /opt/backup/database/response/netca.rsp /opt/backup/database/
# su – oracle
$ netca /silent /responsefile /opt/backup/database/netca.rsp

  都装完了,就要开始升级系统到10.2.0.5了
把升级包放到服务器上,假设在目录/opt/backup/Disk1下
$ lsnrctl stop
$ dbshut
$ exit
# cp /opt/backup/Disk1/response/patchset.rsp /opt/backup/Disk1/
打开文件/opt/backup/Disk1/patchset.rsp,并修改如下几行:

UNIX_GROUP_NAME=oinstall
FROM_LOCATION=”/opt/backup/Disk1/stage/products.xml”
ORACLE_HOME=”/opt/oracle/10.2.0.1″
ORACLE_HOME_NAME=”OraDbHome”
COMPONENT_LANGUAGES={“zh.CN”}
MYORACLESUPPORT_USERNAME=””
MYORACLESUPPORT_PASSWORD=””
DECLINE_SECURITY_UPDATES=true

执行命令,开始升级oracle软件:
# su – oracle
$ cd /opt/backup/Disk1
$ ./runInstaller -silent -responseFile /opt/backup/Disk1/patchset.rsp
升级数据库xxxdb01:
$ dbua -silent -sid xxx -oracleHome /opt/oracle/10.2.0.1 -sysDBAUserName sys -sysDBAPassword password -recompile_invalid_objects truestart & stop scripts for oracle

  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.