`
jackchen0227
  • 浏览: 146800 次
  • 性别: Icon_minigender_1
  • 来自: 帝都
社区版块
存档分类
最新评论

centos5 下用脚本安装oracle10g

阅读更多
下面是本人写的一个安装oracle10g的安装脚本,已经在CentOS5的各个版本上运行过,没
有问题
使用方法是:
1、把下面的脚本考到一个文件里面,在root用户下运行这个脚本
2、脚本的运行过程中会给出运行提示。如果内存及临时空间检测不满足条件,也没有大的
问题。如果提示需要的软件包没有安装则要手动安装啦(一般相应的系统盘里面就有)

3、脚本运行成功会会给出提示“Oracle install pre-setting finish,please run orac
le installer as user oracle”。本脚本会添加一个oracle的用户,名称是oracle,密码
:000000
4、注销root,登录oracle,然后终端输入:export LANG=en_US.UTF-8
5、运行oracle的安装文件./runInstaller
6、再往下就是GUI界面啦,基本没有大的问题
ps:
不足:
1、没有解决中文乱码的问题,oracle用户是英文界面。
2、依赖的软件包到底有哪些没有搞明白,下面给出来的是个极大集合(没有时间仔细研究
啊,希望高手指点啦)。
3、还有些小的问题.例如 export DISPLAY变量是否必要等。本脚本没有执行,但是我的使用中没有发现问题。

仅供参考。有什么bug,希望高手赐教。

 

#!/bin/bash
#Memory infomation Check
echo Begin Meminfo Check... 
Meminfo=`awk  /MemTotal/{printf("%d",$2)}  /proc/meminfo`
if (( $Meminfo <  524288 ))
then
 echo "Memory Small!"
 #exit 1
else
 echo "Memory Check Succeed!"
fi
SwapMem=`awk  /SwapTotal/{printf("%d",$2)}  /proc/meminfo`
if [[ $SwapMem <  384420 ]]
then
 echo "Swap Memory Small!"
 #exit 1
else
 echo "Swap Memory Check Succeed!"
fi
Tempinfo=`df -h |awk  /tmpfs/{temp=$2;printf("%d",substr(temp,1,length(temp)-1
))} `
if (( $Tempinfo < 400 ))
then
  echo "Temp Memory Small"
  #exit 1
else
  echo "Temp Memory Check Succed!";
fi
echo "Meminfo Check Succed!"


#Soft Dependency Check
echo "Begin Soft Dependency Check..."
for package in gcc libgomp make binutils openmotif setarch compat-db compat-gc
c  compat-gcc-c++ compat-libstdc++ pdksh sysstat xscreensaver libaio 
do
  rpm -q $package >/dev/null
     if (( $? != 0 ))
       then
         echo $package is not installed!
         exit
		 #rpm -ivh "$package*" >/dev/null  
     fi
done
echo "Soft Dependency Check Succed!"
#disable Selinux
setenforce 0

#modify kernel parameters 
echo "Begin modify  kernel parameters..."
cp -r /etc/sysctl.conf /etc/sysctl.conf.save

#save original kernel paramters
sed -i  s/kernel.shmall/#kernel.shall/  /etc/sysctl.conf 
sed -i  s/kernel.shmmax/#kernel.shmmax/  /etc/sysctl.conf 
sed -i  s/kernel.shmmni/#kernel.shmmni/  /etc/sysctl.conf
sed -i  s/kernel.sem/#kernel.sem/  /etc/sysctl.conf
sed -i  s/fs.file-max/#fs.file.max/  /etc/sysctl.conf
sed -i  s/net.ipv4.ip_local/#net.ipv4.ip_local/  /etc/sysctl.conf
sed -i  s/net.core./#net.core./ /etc/sysctl.conf
#add new parameters
echo "kernel.shmall = 2097152  
     kernel.shmmax = 2147483648 
     kernel.shmmni = 4096  
     kernel.sem = 250 32000 100 128 
     fs.file-max = 65536  
     net.ipv4.ip_local_port_range = 1024 65000 
     net.core.rmem_default=262144 
     net.core.rmem_max=262144 
     net.core.wmem_default=262144 
     net.core.wmem_max=262144">>/etc/sysctl.conf  
/sbin/sysctl -p
echo Modified kernel parameter succed!

#Set user shell limit
cp -r /etc/security/limits.conf /etc/security/limits.conf.save
echo Set User Shell Limit
echo oracle soft nproc 2047  >>/etc/security/limits.conf
echo oracle hard nproc 16384 >>/etc/security/limits.conf
echo oracle soft nofile 1024 >>/etc/security/limits.conf  
echo oracle hard nofile 65536 >>/etc/security/limits.conf   

cp -r /etc/pam.d/login /etc/pam.d/login.save
echo session required /lib/security/pam_limits.so >>/etc/pam.d/login

cp -r /etc/profile /etc/profile.save
echo "if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
export ORACLE_BASE=/u01/app/oracle
export ORACLE_SID=orcl" >>/etc/profile
source /etc/profile

#modify os version parameter
cp -r /etc/redhat-release /etc/redhat-release.save
echo redhat-3 >/etc/redhat-release

#add user oracle
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/useradd -m -g oinstall -G dba oracle
#set password for user oracle
echo "000000" |passwd oracle --stdin > /dev/null 2>&1

#make directory for oracle database
mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01/app/oracle
chmod -R 755 /u01/app/oracle

cp -r /home/oracle/.bash_profile /home/oracle/.bash_profile.save
echo  export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
export NLS_LANG= AMERICAN _america.ZHS16GBK
export LANG=en_US.UTF-8
export EDITOR=vi
export LD_LIBRARY_PATH=$ORACLE_HOME/lib >>/home/oracle/.bash_profile

echo "Oracle install pre-setting finish,
      please run oracle installer as user oracle"
 

 

分享到:
评论

相关推荐

    oracle11g一键安装脚本

    oracle11g centos7一键安装脚本,脚本里面有完整安装提示说明。大概步骤如下 1、关闭防火墙 2、设置服务器名称并增加映射 3、安装Oracle所需的依赖 4、解压oracle安装包 5、创建用户和组 6、修改内核参数 7、修改用户...

    CentOS7离线安装oracle 11g_r2所有离线依赖包,并附详细安装说明

    这里我们将详细讲解如何在没有网络连接的情况下,完成Oracle 11g R2在CentOS 7上的安装。 首先,你需要准备一个包含所有离线依赖包的压缩文件,如"CentOS7离线安装oracle 11g_r2所有依赖包,并附详细安装说明,亲测...

    CentOS 6.5下安装Oracle 10g

    在CentOS 6.5环境下安装Oracle 10g是一项技术性强且需要精心准备的任务。Oracle 10g是一款广泛使用的数据库管理系统,它提供了高性能、高可用性和安全性。在CentOS 6.5上部署Oracle 10g需要满足一定的硬件和软件要求...

    Linux、CentOS 64位系统安装Oracle11g依赖包及一键安装脚本

    Linux、CentOS 64位系统安装Oracle11g依赖包及一键安装脚本,内含compat-libstdc++-33-3.2.3-61、libaio-0.3.105、libaio-devel-0.3.105、libstdc++、pdksh-5.2.14-36、unixODBC-2.2.11-10.el5.i386、unixODBC-devel...

    CentOS下Oracle10gR2之静默安装

    在CentOS环境下进行Oracle 10g R2的静默安装和手工建库的过程中,涉及到诸多知识点和操作步骤。以下是对这些知识点的详细说明: 1. 安装前的准备工作 在开始安装Oracle 10g R2之前,需要做好一系列的准备工作,以...

    centos6.2-64下安装oracle11G

    在CentOS 6.2 64位操作系统中安装Oracle 11g涉及多个关键步骤,包括系统和配置要求、软件环境准备、用户环境设置以及后续的安装过程。以下是详细的知识点说明: 1. **系统及配置要求**: - 操作系统版本:CentOS ...

    CentOS7离线安装Oracle11g_R2_x64所需的所有依赖包.zip

    本压缩包“CentOS7离线安装Oracle11g_R2_x64所需的所有依赖包.zip”提供了一整套在CentOS 7系统上离线安装64位Oracle 11g R2所需的所有依赖软件包,这有助于避免因在线安装过程中可能遇到的网络问题。 Oracle数据库...

    CentOS下命令行安装Oracle10G

    ### CentOS下命令行安装Oracle10G #### 安装前准备 在开始安装Oracle 10G之前,确保CentOS系统已经更新到最新状态,并且安装了必要的依赖包。根据给定的内容,这里将详细介绍如何通过命令行完成Oracle 10G在CentOS...

    CentOS5.3下安装oracle10G超详细教程

    ### CentOS 5.3 下安装 Oracle 10G 超详细教程 #### 一、前期准备 在开始安装过程之前,确保以下准备工作已完成: - **操作系统**: CentOS 5.3 i386 版本。 - **Oracle 10G 完整版**:下载并准备好安装文件。 - **...

    在CentOS 7.1下安装Oracle 11gR2

    在安装Oracle 11gR2数据库之前,你需要确保你的CentOS 7.1系统满足必要的硬件和软件要求。首先,内存至少需要1GB,但推荐至少2GB以确保顺畅运行。如果你的系统内存小于2GB,建议设置swap分区大小为内存的1.5倍;若...

    CentOS7一键静默安装oracle11G

    CentOS7一键静默安装oracle11G

    centos6.5下自动安装oracle11的shell脚本

    5. **下载Oracle软件**:脚本会从官方或私有存储库下载Oracle 11g的安装文件,通常是`.bin`格式的ISO镜像。如果已下载,脚本会检查文件的完整性。 6. **挂载和解压ISO**:脚本会挂载ISO文件,然后解压到指定目录,...

    Centos7离线安装oracle11g所需要的rpm包下载 ,亲测可用

    在Linux系统中,CentOS 7是常见的服务器操作系统,而Oracle 11g是一款广泛使用的数据库管理系统。在没有网络连接的环境下,离线安装Oracle 11g是一项挑战,因为通常需要通过网络下载大量的依赖包。然而,通过提前...

    CentOS6.0安装Oracle10g详细文档

    本文档详细介绍了如何在CentOS6.0操作系统上安装Oracle10g,这是一个非常实用的技术教程,尤其适合那些希望在最新版本的Linux发行版上部署旧版本Oracle数据库的用户。 首先,让我们深入了解CentOS6.0。这是一个基于...

    Centos6.4 64位系统安装oracle 11g R2

    在没有显示器的情况下安装Oracle数据库非常有用。在CentOS中,可以通过以下命令安装VNC Server: ```bash sudo yum install tigervnc-server -y ``` 然后设置VNC密码,并启动VNC服务: ```bash vncpasswd sudo ...

    CentOS下无界面静默安装oracle 11g

    以上就是在CentOS无界面环境下静默安装Oracle 11g的详细步骤。这个过程需要仔细规划和精确执行,以确保所有组件正确配置并顺利工作。记住,安装完成后,还需要进行安全配置和维护,如限制网络访问、更新安全补丁、...

Global site tag (gtag.js) - Google Analytics