以下脚本的手动安装连接:  https://www.cnblogs.com/leihongnu/p/12698593.html

#/bin/bash
#安装日志
touch /root/message.txt
message=/root/message.txt
#安装依赖
yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
#检查依赖安装是否完成
if [ `rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel | grep "not installed" | wc -l` -ge 1 ]
then
echo "依赖未全部安装,请检查" >> $message
exit 0
fi
#关闭selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
#创建用户、密码和组
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
echo "Aa123456" | passwd --stdin oracle &> /dev/null
#配置内核参数和资源限制,修改 /etc/sysctl.conf 文件,添加以下内容
echo "##oracle" >> /etc/sysctl.conf
echo "fs.aio-max-nr = 1048576" >> /etc/sysctl.conf
echo "fs.file-max = 6815744" >> /etc/sysctl.conf
echo "kernel.shmall = 2097152" >> /etc/sysctl.conf
echo "kernel.shmmax = 536870912" >> /etc/sysctl.conf
echo "kernel.shmmni = 4096" >> /etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 9000 65500" >> /etc/sysctl.conf
echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.rmem_max = 4194304" >> /etc/sysctl.conf
echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_max = 1048576" >> /etc/sysctl.conf
sysctl -p
#在 /etc/security/limits.conf 文件,添加以下内容
echo "##oracle" >> /etc/security/limits.conf
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
#在 /etc/pam.d/login 文件,添加以下内容
echo "##oracle" >> /etc/pam.d/login
echo "session required /lib64/security/pam_limits.so" >> /etc/pam.d/login
echo "session required pam_limits.so" >> /etc/pam.d/login
#在 /etc/profile 文件,添加以下内容
echo "##oracle" >> /etc/profile
echo "if [ $USER = "oracle" ]; then" >> /etc/profile
echo "if [ $SHELL = "/bin/ksh" ]; then" >> /etc/profile
echo "ulimit -p 16384" >> /etc/profile
echo "ulimit -n 65536" >> /etc/profile
echo "else" >> /etc/profile
echo "ulimit -u 16384 -n 65536" >> /etc/profile
echo "fi" >> /etc/profile
echo "fi" >> /etc/profile
source /etc/profile
#禁用使用Transparent HugePages,在 /etc/grub.conf 文件,添加以下内容
echo never > /sys/kernel/mm/transparent_hugepage/enabled
#创建oracle安装目录
mkdir -p /data/app/
chown -R oracle:oinstall /data/app/
chmod -R 775 /data/app/
#配置 oracle 用户的环境变量,在 /home/oracle/.bash_profile 文件中,添加以下内容
echo "##oracle" >> /home/oracle/.bash_profile
echo "umask 022" >> /home/oracle/.bash_profile
echo "export ORACLE_HOSTNAME=$HOSTNAME" >> /home/oracle/.bash_profile
echo "export ORACLE_BASE=/data/app/oracle" >> /home/oracle/.bash_profile
echo "export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/" >> /home/oracle/.bash_profile
echo "export ORACLE_SID=orcl" >> /home/oracle/.bash_profile
echo "export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH" >> /home/oracle/.bash_profile
echo "export LC_ALL="en_US"" >> /home/oracle/.bash_profile
echo "export LANG="en_US"" >> /home/oracle/.bash_profile
echo "export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"" >> /home/oracle/.bash_profile
echo "export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"" >> /home/oracle/.bash_profile
source /home/oracle/.bash_profile
#解压下载好的两个文件
cd /root
unzip -q linux.x64_11gR2_database_1of2.zip -d /data
unzip -q linux.x64_11gR2_database_2of2.zip -d /data
mkdir -p /data/etc
cp /data/database/response/* /data/etc/
#在 /data/etc/db_install.rsp 文件中,添加以下内容
echo "##oracle" >> /data/etc/db_install.rsp
sed -i "s/^.*oracle.install.option.*$/oracle.install.option=INSTALL_DB_SWONLY/" /data/etc/db_install.rsp
sed -i "s/^.*DECLINE_SECURITY_UPDATES.*$/DECLINE_SECURITY_UPDATES=true/" /data/etc/db_install.rsp
sed -i "s/^.*UNIX_GROUP_NAME.*$/UNIX_GROUP_NAME=oinstall/" /data/etc/db_install.rsp
sed -i "s/^.*INVENTORY_LOCATION.*$/INVENTORY_LOCATION=\/data\/app\/oracle\/inventory/" /data/etc/db_install.rsp
sed -i "s/^.*SELECTED_LANGUAGES.*$/SELECTED_LANGUAGES=en,zh_CN/" /data/etc/db_install.rsp
sed -i "s/^.*ORACLE_HOSTNAME.*$/ORACLE_HOSTNAME=$HOSTNAME/" /data/etc/db_install.rsp
sed -i "s/^.*ORACLE_HOME.*$/ORACLE_HOME=\/data\/app\/oracle\/product\/11.2.0/" /data/etc/db_install.rsp
sed -i "s/^.*ORACLE_BASE.*$/ORACLE_BASE=\/data\/app\/oracle/" /data/etc/db_install.rsp
sed -i "s/^.*oracle.install.db.InstallEdition.*$/oracle.install.db.InstallEdition=EE/" /data/etc/db_install.rsp
sed -i "s/^.*oracle.install.db.isCustomInstall.*$/oracle.install.db.isCustomInstall=true/" /data/etc/db_install.rsp
sed -i "s/^.*oracle.install.db.DBA_GROUP.*$/oracle.install.db.DBA_GROUP=dba/" /data/etc/db_install.rsp
sed -i "s/^.*oracle.install.db.OPER_GROUP.*$/oracle.install.db.OPER_GROUP=dba/" /data/etc/db_install.rsp
#将 /data/* 文件更改所有者所属组
chown -R oracle:oinstall /data/*
#切换用户为 oracle(一般的,有关 oracle 数据库的操作,要使用oracle 为当前用户)
su - oracle
#安装
cd /data/database
./runInstaller -silent -responseFile /data/etc/db_install.rsp -ignorePrereq
#根据上图的提示,需要在 root 账号下执行两个脚本
su - root
/data/app/oracle/inventory/orainstRoot.sh sh
/data/app/oracle/product/11.2.0/root.sh
#配置监听
su - oracle
netca /silent /responsefile /data/etc/netca.rsp
#静默创建数据库,在 /data/etc/dbca.rsp 文件中,添加以下内容
echo "##oracle" >> /data/etc/dbca.rsp
sed -i "s/^.*RESPONSEFILE_VERSION.*$/RESPONSEFILE_VERSION = "11.2.0"/" /data/etc/dbca.rsp
sed -i "s/^.*OPERATION_TYPE.*$/OPERATION_TYPE = "createDatabase"/" /data/etc/dbca.rsp
sed -i "s/^.*GDBNAME.*$/GDBNAME = "orcl"/" /data/etc/dbca.rsp
sed -i "s/^.*SID.*$/SID = "orcl"/" /data/etc/dbca.rsp
sed -i "s/^.*SYSPASSWORD.*$/SYSPASSWORD = "oracle"/" /data/etc/dbca.rsp
sed -i "s/^.*SYSTEMPASSWORD.*$/SYSTEMPASSWORD = "oracle"/" /data/etc/dbca.rsp
sed -i "s/^.*SYSMANPASSWORD.*$/SYSMANPASSWORD = "oracle"/" /data/etc/dbca.rsp
sed -i "s/^.*DBSNMPPASSWORD.*$/DBSNMPPASSWORD = "oracle"/" /data/etc/dbca.rsp
sed -i "s/^.*DATAFILEDESTINATION.*$/DATAFILEDESTINATION =\/data\/app\/oracle\/oradata/" /data/etc/dbca.rsp
sed -i "s/^.*RECOVERYAREADESTINATION.*$/RECOVERYAREADESTINATION=\/data\/app\/oracle\/fast_recovery_area/" /data/etc/dbca.rsp
sed -i "s/^.*CHARACTERSET.*$/CHARACTERSET = "AL32UTF8"/" /data/etc/dbca.rsp
sed -i "s/^.*TOTALMEMORY.*$/TOTALMEMORY = "1638"/" /data/etc/dbca.rsp
#执行配置好的静默数据库(需要在oracle用户下执行)
su - oracle
dbca -silent -responseFile /data/etc/dbca.rsp
#执行完成后,查看 oracle 进程
if [ `ps -ef | grep ora_ | grep -v grep | wc -l` -gt 20 ]
then
echo "oracle 进程启动!" >> $message
fi

笔记本太low了,测试中发热至自动关机!!!麻烦成功的同学吱一声,不成功的话也吱一声,谢谢。

shell 脚本静默安装oracle11g的更多相关文章

  1. Linux CentOS 6.5 64位 静默安装Oracle11g 云主机

    本例: 通过SSH远程连接云主机,上传oracle11g安装包,在centos6.5上无图形化界面静默安装oracle11g. 涉及工具及环境: 1.本地环境windows7+ssh远程连接工具xSh ...

  2. Centos 6.4上面用Shell脚本一键安装vsftpd

    Centos 6.4上面用Shell脚本一键安装vsftpd install.sh #!/bin/bash if [ `uname -m` == "x86_64" ];then m ...

  3. Centos 6.4上面用Shell脚本一键安装mysql 5.6.15

    Centos 6.4上面用Shell脚本一键安装mysql 5.6.15  #!/bin/bash if [ `uname -m` == "x86_64" ];then machi ...

  4. 安装完Ubuntu后通过shell脚本一键安装软件

    安装完Ubuntu后通过shell脚本一键安装软件 以下代码中#是单行注释 :<<! ! 是多行注释. 运行的时候需要把多行注释去掉. 比如把以下代码保存为install.sh, 那么在终 ...

  5. CentOS7静默安装oracle11g

    操作系统: [root@docker ~]# uname -m x86_64 [root@docker ~]# cat /etc/redhat-release CentOS Linux release ...

  6. Linux7静默安装Oracle11g教程,亲测实用有效!

    1.查看swap大小,若小于150M,需添加增加虚拟空间 dd if=/dev/zero of=/swapadd bs=1024 count=2006424 mkswap /swapadd swapo ...

  7. 【通过ssh oracle11g安装】centos6静默安装oracle11g

    转载链接:https://blog.csdn.net/u011391839/article/details/76566316 根据实际情况略作调整~ 博主参考了以上链接成功进行安装,列一下自己遇到的坑 ...

  8. 静默安装oracle11G

    1.操作系统及Oracle版本 Linux版本:CentOS release 5.5 (Final) Oracle版本:Oracle Database 11g Release 2 (11.2.0.1. ...

  9. Shell脚本一键安装LNMP环境

    https://sourceforge.net/projects/opensourcefile/files/ Nginx是一款高性能的HTTP和反向代理服务器.Nginx在反向代理,Rewrite规则 ...

随机推荐

  1. Linux系列(12) - find

    简述 find搜索文件,搜索方式丰富,遍历给定范围的所有目录下的文件(避免大范围的搜索,会非常浪费系统资源,建议不在直接在"/"目录下搜索) 命令格式 基本使用 格式:find [ ...

  2. Shell系列(14)- declare声明变量

    declare声明变量类型 格式 declare [+/-] [选项] [变量名] 选项 -:给变量设定类型属性 +:取消变量的类型属性 -a :将变量声明为数组型 -i :将变量声明为整数型(int ...

  3. javascript 中介者模式 mediator

    * player.js /** * 中介者模式 * @param {*} name 角色名称 * @param {*} teamColor 队伍颜色 */ function Player(name, ...

  4. requests接口测试-requests的安装

    requests接口测试-requests的安装 安装常见问题 提示连接不上,443问题 一般是因为浏览器设置了代理,关闭代理. 网络加载慢,设置国内镜像地址 1.pip安装 2.pycharm安装 ...

  5. redis被360禁止,设置启动

    https://blog.csdn.net/blick__winkel/article/details/77986481 一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下 ...

  6. [转载]linux下配置mariadb支持中文

    转载网址:http://www.cnblogs.com/vingi/articles/4302330.html 修改/etc/mysql/my.cnfOn MySQL 5.5 I have in my ...

  7. 【大咖直播】Elastic 企业搜索实战工作坊(第一期)

    借助 App Search 提供的内置功能,您可轻松打造卓越的搜索体验.直观的相关度调整以及开箱即用的搜索分析,不仅可以优化所提供的内容,其提供的 API 还可帮助您将位于各处的所有内容源关联在一起. ...

  8. CF1446F-Line Distance【计算几何,树状数组,二分】

    正题 题目链接:https://www.luogu.com.cn/problem/CF1446F 题目大意 给出\(n\)个点,求所有点对构成的直线中与原点距离第\(k\)小的距离 \(2\leq n ...

  9. Golang使用swaggo自动生成Restful API文档

    #关于Swaggo 相信很多程序猿和我一样不喜欢写API文档.写代码多舒服,写文档不仅要花费大量的时间,有时候还不能做到面面具全.但API文档是必不可少的,相信其重要性就不用我说了,一份含糊的文档甚至 ...

  10. TypeScript 条件类型精读与实践

    在大多数程序中,我们必须根据输入做出决策.TypeScript 也不例外,使用条件类型可以描述输入类型与输出类型之间的关系. 本文同步首发在个人博客中,欢迎订阅.交流. 用于条件判断时的 extend ...