安装oracle 10g RAC执行的几个脚本说明
1,/u01/app/oracle/oraInventory/orainstRoot.sh 脚本
#!/bin/sh
if [ -d "/etc" ]; then
chmod 755 /etc;
fi
if [ -f "/u01/app/oracle/oraInventory/oraInst.loc" ]; then
cp /u01/app/oracle/oraInventory/oraInst.loc /etc/oraInst.loc;
else
INVPTR=/etc/oraInst.loc
INVLOC=/u01/app/oracle/oraInventory
GRP=oinstall
PTRDIR="`dirname $INVPTR`";
# Create the software inventory location pointer file
if [ ! -d "$PTRDIR" ]; then
mkdir -p $PTRDIR;
fi
echo "Creating the Oracle inventory pointer file ($INVPTR)";
echo inventory_loc=$INVLOC > $INVPTR
echo inst_group=$GRP >> $INVPTR
chmod 644 $INVPTR
# Create the inventory directory if it doesn't exist
if [ ! -d "$INVLOC" ];then
echo "Creating the Oracle inventory directory ($INVLOC)";
mkdir -p $INVLOC;
fi
fi
echo "Changing permissions of /u01/app/oracle/oraInventory to 770.";
chmod -R 770 /u01/app/oracle/oraInventory;
if [ $? != 0 ]; then
echo "OUI-35086:WARNING: chmod of /u01/app/oracle/oraInventory to 770 failed!";
fi
echo "Changing groupname of /u01/app/oracle/oraInventory to oinstall.";
chgrp oinstall /u01/app/oracle/oraInventory;
if [ $? != 0 ]; then
echo "OUI-10057:WARNING: chgrp of /u01/app/oracle/oraInventory to oinstall failed!";
fi
echo "The execution of the script is complete"
从上面的脚步中可以看出,这个脚本的作用是/etc/oraInst.loc文件,并修改/etc和/u01/app/oracle/oraInventory 的权限
2./u01/crs1020/root.sh 脚步
脚本如下:
#!/bin/sh
/u01/crs1020/install/rootinstall
/u01/crs1020/install/rootconfig
调用上面的两个脚本
/u01/crs1020/install/rootinstall 如下
#!/bin/sh
#
# rootinstall.sbs for CRS installs
#
# This is run once per CRS_HOME during the install. This install specific
# root script sets file ownerships, groups, and permissions on
# the files or directories that are to be owned by root user.
#
SILENT=false
CRS_ORACLE_HOME=/u01/crs1020
CRS_ORACLE_OWNER=oracle
CRS_DBA_GROUP=oinstall if [ -z "$CHOWN" ]; then CHOWN=/bin/chown; fi
if [ -z "$CHGRP" ]; then CHGRP=/bin/chgrp; fi
if [ -z "$CHMOD" ]; then CHMOD=/bin/chmod; fi
if [ -z "$ECHO" ]; then ECHO=/bin/echo; fi
if [ -z "$AWK" ]; then AWK=/bin/awk; fi
if [ -z "$LS" ]; then LS=/bin/ls; fi
if [ -z "$ID" ]; then ID=/usr/bin/id; fi
if [ -z "$MKDIRP" ]; then MKDIRP="/bin/mkdir -p"; fi usage()
{
printf "Usage:"
printf "$0 [-silent]\n"
printf " [-crshome <Oracle CRS home path>]\n"
printf " [-crsuser <Name of the user installing Oracle CRS>]\n"
printf " [-crsgroup <Name of the user-group installing Oracle CRS>]\n"
} validateInput()
{
##validates if any value is assigned to the script variables
valid=`$ECHO $1 | $AWK '/^%/ { print "false"; }'`
if [ "$valid" = "false" ];
then
$ECHO "No value set for the CRS parameter $2. Use parameter file to set values";
usage;
return 1;
fi return 0;
} # This script is intended to be run by root. RUID=`$ID|$AWK -F\( '{print $2}'|$AWK -F\) '{print $1}'`
if [ ${RUID} != "root" ];then
$ECHO "You must be logged in as root to run $0."
$ECHO "Log in as root and restart $0 execution."
exit 1
fi UNAME=/bin/uname
PLATFORM=`$UNAME` case $PLATFORM in
Linux) DIRNAME=/usr/bin/dirname
;;
HP-UX) DIRNAME=/bin/dirname
;;
SunOS) DIRNAME=/bin/dirname
;;
AIX) DIRNAME=/bin/dirname
;;
OSF1) DIRNAME=/usr/bin/dirname
;;
*) DIRNAME=/bin/dirname
;;
esac USER_ARGS=$* while [ $# -gt 0 ];
do
if [ $1 = "-silent" ]; then
SILENT=1;
elif [ $1 = "-crshome" ]; then
if [ $# -ge 2 ]; then
CRS_ORACLE_HOME=$2;
shift;
else
usage;
exit 2
fi
elif [ $1 = "-crsuser" ]; then
if [ $# -ge 2 ]; then
CRS_ORACLE_OWNER=$2;
shift;
else
usage;
exit 2
fi
elif [ $1 = "-crsgroup" ]; then
if [ $# -ge 2 ]; then
CRS_DBA_GROUP=$2;
shift;
else
usage;
exit 2
fi
else
usage;
exit 2
fi
shift;
done validateInput $CRS_ORACLE_HOME "CRS_ORACLE_HOME" || { $ECHO $?; exit 1; }
validateInput $CRS_ORACLE_OWNER "CRS_ORACLE_OWNER" || { $ECHO $?; exit 1; }
validateInput $CRS_DBA_GROUP "CRS_DBA_GROUP" || { $ECHO $?; exit 1; } ORA_CRS_HOME=$CRS_ORACLE_HOME
export ORA_CRS_HOME
CH=$ORA_CRS_HOME export CRS_ORACLE_HOME # set ownership to root, but give execute permissions to all $CHOWN root $CH/bin/crs*
$CHMOD 555 $CH/bin/crs* # only owner(root) should ever invoke crsd $CHMOD 744 $CH/bin/crsd if [ ! -d $CH/crs/init ]; then
$MKDIRP $CH/crs/init
fi $CHOWN root $CH
$CHMOD 755 $CH for d in bin crs crs/init crs/profile crs/script crs/template crs/auth
do
$CHOWN root $CH/$d
$CHMOD 755 $CH/$d
done # These are writeable by all
for d in crs/public
do
$CHOWN $CRS_ORACLE_OWNER $CH/$d
$CHMOD 777 $CH/$d
done for d in evm evm/init
do
$CHMOD 750 $CH/$d
done for d in css css/init css/log css/auth
do
$CHMOD 711 $CH/$d
done # check directories above $CH are owned by root d=$CH
while [ "$d" != "/" ]
do
d=`$DIRNAME $d`
set -$- `$LS -ld $d`
case $3 in
root) ;; # ok
*) $ECHO "WARNING: directory '$d' is not owned by root";;
esac
done主要是对CRS需要的一些目录权限进行配置
/u01/crs1020/install/rootconfig这个脚本主要是对CRS进行配置,使CRS服务在服务器重启时自动启动,加入/etc/inittab ,格式化Voting disk等
安装oracle 10g RAC执行的几个脚本说明的更多相关文章
- 安装Oracle 10g RAC是否需要安装HACMP
实际上无论在哪个操作系统(AIX,HP-UX,Solaris,Linux)上安装Oracle10g RAC都不再需要Vendor Clusterware(IBM的HACMP,HP的Service Gu ...
- CentOS 6.3(x86_64)下安装Oracle 10g R2
目 录 一.硬件要求二.软件三.系统安装注意四.安装Oracle前的系统准备工作五.安装Oracle,并进行相关设置六.升级Oracle到patchset 10.2.0.4七.使用rlwrap调用sq ...
- 【转】CentOS 6.3(x86_64)下安装Oracle 10g R2
目 录 一.硬件要求二.软件三.系统安装注意四.安装Oracle前的系统准备工作五.安装Oracle,并进行相关设置六.升级Oracle到patchset 10.2.0.4七.使用rlwrap调用sq ...
- 【转】CentOS 6.3(x86_32)下安装Oracle 10g R2
一.硬件要求 1.内存 & swap Minimum: 1 GB of RAMRecommended: 2 GB of RAM or more 检查内存情况 # grep MemTotal / ...
- CentOS 6.3(x86_32)下安装Oracle 10g R2
一.硬件要求 1.内存 & swap Minimum: 1 GB of RAMRecommended: 2 GB of RAM or more 检查内存情况 # grep MemTotal / ...
- linux安装oracle 11g rac
安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...
- 【转】Oracle 10g RAC TAF
本人转自:http://www.cnblogs.com/future2012lg/archive/2013/10/12/3365978.html Oracle RAC 同一时候具备HA(High Av ...
- Oracle 10g RAC启动与关闭命令
一. 检查共享设备 一般情况下, 存放OCR 和 Voting Disk 的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了的. 1.1 如果使用ocfs2的,检查o ...
- Oracle安装部署之linux(redhat/centos)快速安装oracle 11g rac
安装oracle 11gR2 RAC 一.网络规划及安装虚拟主机 主机名 主机版本 Ip rac1.localdomain Redhat 6.5 RAC节点1 192.168.100.11 rac2. ...
随机推荐
- 12 哈希表相关类——Live555源码阅读(一)基本组件类
12 哈希表相关类--Live555源码阅读(一)基本组件类 这是Live555源码阅读的第一部分,包括了时间类,延时队列类,处理程序描述类,哈希表类这四个大类. 本文由乌合之众 lym瞎编,欢迎转载 ...
- JavaWeb出现404一个很隐蔽的原因
- 工作之余,花2个月时间系统学习前端和PHP
http://www.jikexueyuan.com/path/web/ http://www.jikexueyuan.com/path/php/
- HTML——meta标签
<meta> 元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词. <meta> 标签位于文档的头部,不包含任何内容.&l ...
- SQL Server 中几种常见的约束关系
1.创建唯一约束 当表中已创建主键,但又要保证其他数据列的值唯一时,可以使用唯一约束,并且唯一约束允许NULL值(只有一个) (1)展开指定的数据库: (2)右击要创建唯一约束的表,在弹出的快捷菜单中 ...
- mysql中表名是order的CRUD的错误
org.springframework.jdbc.BadSqlGrammarException: ### Error querying database. Cause: com.mysql.jdbc. ...
- 深入理解 Win32 PE 文件格式
深入理解 Win32 PE 文件格式 Matt Pietrek 这篇文章假定你熟悉C++和Win32. 概述 理解可移植可执行文件格式(PE)可以更好地了解操作系统.如果你知道DLL和EXE中都有些什 ...
- Android 程序中得到root activity的引用
今天写anroid时,想获得一个root activity的引用. ios中这个很简单, [UIApplication sharedApplication].keyWindow 得到window对象, ...
- C#在类中用调用Form的方法
class 你的类 { private Form1 frm; //构造函数 public 你的类( Form1 form) { frm = form; } //调用form方法 private voi ...
- 前端easyui的简化调用
easyui近期一直都比较流行,虽然它在效果上被extjs爆了,它的使用难度低,在IE6下表现不错,的确受到了广泛企业程序员的好评. 但是他的API说明还是比较简陋的,刚上手可能还需要摸索一下,为什么 ...