手把手教你在命令行(静默)部署oracle 11gR2
文章目录
环境介绍
| version | CPU/内存 | 系统架构 |
|---|---|---|
| CentOS Linux release 7.7.1908 | X86_64 |
注意检查磁盘空间,安装目录可用空间不要低于20G [
df -h命令可以查看目录空间使用情况]注意检查系统架构,下载安装包的时候要对应自己的系统架构
注意检查/tmp目录大小,oracle要求/tmp目录不小于1G,如果没有单独挂载/tmp目录,注意查看根目录可用空间
注意检查内存大小,不要低于2G
oracle安装包
链接:https://pan.baidu.com/s/1vUQ9Slp5VVXyj9414kZ0UA
提取码:imkb
linux发行版
使用下面的命令,可以看到自己的发行版以及子版本号
cat /etc/centos-release
cpu、内存以及磁盘空间
cpu物理个数
grep 'physical id' /proc/cpuinfo | uniq | wc -l
cpu核心数量
grep 'core id' /proc/cpuinfo | uniq | wc -l
内存大小
free -h
系统架构
uname -a
敲黑板
关闭防火墙以及selinux
查看selinux状态,最好是disabled
sestatus
如果不是disabled,执行下面的命令,重启系统后才会生效
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
查看firewalld状态,确认已经关闭,并且开机不会自启
systemctl status firewalld.service | egrep -i 'active|load'
如果没有关闭,执行下面的命令
systemctl disable firewalld.service --now
操作系统配置
使用阿里的yum源提速
centos安装完成后,默认是官方的yum源,速度会比较慢,切换到国内yum源解决依赖更快[毕竟oracle的依赖很多]
cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak/
vim Centos-7.repo
最小化安装的centos是没有wget命令的,可以直接复制下面的内容
# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/centosplus/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
http://mirrors.aliyuncs.com/centos/$releasever/contrib/$basearch/
http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
清空yum缓存,生成元数据
yum clean all && yum makecache
安装依赖软件
yum -y install gcc gcc-c++ elfutils-libelf libaio libaio-devel ksh
设置用户最大进程数以及最大文件打开数
cat << EOF >> /etc/security/limits.conf
####### start for oracle #######
oracle soft nproc 2048
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
####### end for oracle #######
EOF
soft xxx代表警告的设定,可以超过这个设定值,但是超过后会有警告。
hard xxx代表严格的设定,不允许超过这个设定的值。
soft nproc单个用户可用的最大进程数量(超过会警告)hard nproc单个用户可用的最大进程数量(超过会报错)soft nofile可打开的文件描述符的最大数(超过会警告)hard nofile可打开的文件描述符的最大数(超过会报错)
内核参数优化
cat << EOF >> /etc/sysctl.conf
####### start for oracle #######
fs.aio-max-nr=1048576
fs.file-max=6815744
kernel.shmall=2097152
kernel.shmmax=536870912
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=1048586
####### end for oracle #######
EOF
fs.aio-max-nr同时可以拥有的的异步IO请求数量
fs.file-max最大句柄数
kernel.shmall可以使用的共享内存的总量
kernel.shmmax最大共享内存段大小
kernel.shmmni整个系统共享内存段的最大数目
kernel.sem每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数
net.ipv4.ip_local_port_range应用程序可使用的IPv4端口范围
net.core.rmem_default套接字接收缓冲区大小的缺省值(以字节为单位)
net.core.rmem_max套接字接收缓冲区大小的最大值(以字节为单位)
net.core.wmem_default套接字发送缓冲区大小的缺省值(以字节为单位)
net.core.wmem_max套接字发送缓冲区大小的最大值(以字节为单位)
执行下面的命令,使配置立即生效
sysctl -p
开启swap分区
oracle是需要开启swap分区的,可以通过
free -h命令查看swap分区的大小,如果没有开启swap分区,会有如下的报错:
Checking swap space: 0 MB available, 150 MB required. Failed <<<<
dd if=/dev/zero of=/swapfile bs=1024 count=512k
mkswap /swapfile
swapon /swapfile
echo '/swapfile swap swap defaults 0 0' >> /etc/fstab
创建用户及用户组
创建用户组
for i in oinstall dba oper;do groupadd $i;done
验证一下,是否创建成功
egrep 'oinstall|dba|oper' /etc/group
创建用户
-G参数:给用户指定附加组
-g参数:给用户指定基本组
useradd -g oinstall -G dba,oper oracle
echo 'oracle' | passwd --stdin oracle
验证一下,是否创建成功
id oracle
预期会有如下输出:
uid=1001(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba),1003(oper)
赋权及目录创建
chown oracle.oinstall linux.x64_11gR2_database_*
注意自的目录,不要直接复制黏贴,我的app目录是单独挂载的一个分区,有80G的空间
mkdir -p /app/oracle/{11gR2,backup,oraInventory} -m 775
chown oracle.oinstall /app/oracle -R
设置环境变量
切换到oracle用户
su - oracle
编辑用户的环境变量配置文件,当前所在目录:
/home/oracle
vim .bash_profile
注意修改ORACLE_BASE的路径,和自己创建的路径要一样
DISPLAY这里的ip为本机ip,注意修改
export ORACLE_BASE=/app/oracle
export DISPLAY=192.168.70.48:1.0
export ORACLE_HOME=${ORACLE_BASE}/11gR2
export ORACLE_SID=oracle11g
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:${ORACLE_HOME}/bin
export LD_LIBRARY_PATH=/usr/lib:${ORACLE_HOME}/lib
source .bash_profile
安装oracle
注意使用的用户是oracle用户
解压安装包
unzip linux.x64_11gR2_database_1of2.zip -d /app/oracle/
unzip linux.x64_11gR2_database_2of2.zip -d /app/oracle/
备份配置文件
cd /app/oracle
cp -r database/response{,.template}
cat <<EOF > database/response/db_install.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=bigdata06
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/app/oracle/11gR2
ORACLE_BASE=/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=false
oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE
oracle.install.db.config.starterdb.globalDBName=oracle11g
oracle.install.db.config.starterdb.SID=oracle11g
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=1500
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=oracle
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.storageType=FILE_SYSTEM_STORAGE
DECLINE_SECURITY_UPDATES=true
EOF
开始安装
cd database/
./runInstaller -silent -responseFile /app/oracle/database/response/db_install.rsp -ignorePrereq
执行成功后,会有下面的输出(这里给一个免费的建议,新开一个终端去查看日志情况)
You can find the log of this install session at:
/app/oracle/oraInventory/logs/installActions2021-09-26_02-23-09PM.log
出现如下的回显,表示安装已经完成了
这里需要新开一个终端,以root用户执行下面给出的两个脚本
两个脚本执行完成后,回到oracle用户安装的这个终端敲回车就可以了
The following configuration scripts need to be executed as the "root" user.
#!/bin/sh
#Root scripts to run
/app/oracle/oraInventory/orainstRoot.sh
/app/oracle/11gR2/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.
配置oracle监听文件
注意:后面的操作,都是使用
oracle用户
cd /app/oracle/database/response
netca /silent /responsefile /app/oracle/database/response/netca.rsp
执行完成后,在
/app/oracle/11gR2/network/admin目录下会生成两个文件
listener.ora
sqlnet.ora
ss -nltp | grep 1521
能过滤得到信息,说明监听器已经正常工作了
LISTEN 0 128 [::]:1521 [::]:* users:(("tnslsnr",pid=10836,fd=11))
如果监听器没有启动,则需要手动启动,启动方式如下
/app/oracle/11gR2/bin/lsnrctl start LISTENER
配置oracle数据库
修改建库配置文件
vim /app/oracle/database/response/dbca.rsp
78行(SID+主机域名):
GDBNAME = "oracle11g.myoracle"
149行(SID):# 与环境变量里面的设置的SID要一致
SID = "oracle11g"
190行:
SYSPASSWORD = "oracle"
200行:
SYSTEMPASSWORD = "oracle"
415行:
CHARACTERSET = "AL32UTF8"
425行:
NATIONALCHARACTERSET= "UTF8"
创建dbca数据库
$ORACLE_HOME/bin/dbca -silent -responseFile /app/oracle/database/response/dbca.rsp
启动oracle数据库
进入oracle
sqlplus / as sysdba
start
验证oracle
select * from tab;
手把手教你在命令行(静默)部署oracle 11gR2的更多相关文章
- WebLogic 12c Linux 命令行 静默安装
CentOS 6.3安装配置Weblogic 10 http://www.linuxidc.com/Linux/2014-02/96918.htm Oracle WebLogic 11g 安装部署文 ...
- 记一次使用命令行启动部署在tomcat上的应用
在Eclipes进行程序开发完成后,一般都会直接在Eclipse部署启动,其中的一些启动参数设置都会在其中进行,若用命令行启动,则需要手动配置. 程序开发完成后打成的war包,需要部署到Tomcat应 ...
- 手把手教你 在Pytorch框架上部署和测试 关键点人脸检测项目DBFace,成功实现人脸检测效果
这期教向大家介绍仅仅 1.3M 的轻量级高精度的关键点人脸检测模型DBFace,并手把手教你如何在自己的电脑端进行部署和测试运行,运行时bug解决. 01. 前言 前段时间DBFace人脸检测库横空出 ...
- 静默(命令行)安装oracle 11g
CentOS 6 静默安装oracle 11g 我参考的这个,他非常详细:https://blog.csdn.net/JIANG123456T/article/details/77745892 我只是 ...
- 教你用命令行激活win10系统
对于笔者这样爱自己动手的电脑爱好者来说,当然会选择自己组装一台性价比高的台式电脑,一切都准备就绪了,系统也装好了,就差最后一步了--激活系统. 笔者真的很幸运,在网上找到了一些可以使用的密钥,我装的是 ...
- SQL*Plus命令行工具连接Oracle数据库
1.在命令行中输入"sqlplus /nolog"即可启动该工具. 2.连接到Oracle服务器 conn 用户名/密码@服务器连接字符串 as 连接身份 客户端工具根据&quo ...
- CentOS静默安装Oracle 11gR2(x64)
环境 OS: CentOS 7.4; hosts: L134; IP: 192.168.1.134 DB: linux.x64_11gR2_database 安装依赖包 yum install -y ...
- 手把手教你用1行代码实现人脸识别 --Python Face_recognition
环境要求: Ubuntu17.10 Python 2.7.14 环境搭建: 1. 安装 Ubuntu17.10 > 安装步骤在这里 2. 安装 Python2.7.14 (Ubuntu17.10 ...
- K8S从入门到放弃系列-(4)kubernetes集群之kubectl命令行工具部署
摘要:随着版本的不断迭代,k8s为了集群安全,集群中趋向采用TLS+RBAC的安全配置方式,所以我们在部署过程中,所有组件都需要证书,并启用RBAC认证. 我们这里采用二进制安装,下载解压后,把对应组 ...
随机推荐
- Hadoop的Shuffle阶段
原文: https://www.toutiao.com/i6764683672772674062/ 在进入Map之前,首先会将数据从HDFS中读取,进行处理,按照字节偏移量这种之前说的形式处理为K,V ...
- 创建VS Code 扩展插件
VS Code提供了强大的扩展功能,我们可以通过开发插件实现自己的业务模型编辑器.这里我们快速介绍一下插件的创建.开发和发布过程. 创建插件开发模板 首先需要确认系统中安装了node.js,并且可以使 ...
- 生产环境上,哨兵模式集群Redis版本升级应用实战
背景: 由于生产环境上所使用的Redis版本并不一致,好久也没有更新,为了避免版本不同对Redis集群造成影响,从而升级为统一Redis版本! 1.集群架构 一主两从三哨兵: 2.升级方案 (1)升级 ...
- py3nvml实现GPU相关信息读取
技术背景 随着模型运算量的增长和硬件技术的发展,使用GPU来完成各种任务的计算已经渐渐成为算法实现的主流手段.而对于运行期间的一些GPU的占用,比如每一步的显存使用率等诸如此类的信息,就需要一些比较细 ...
- Keil MDK STM32系列(七) STM32F4基于HAL的PWM和定时器
Keil MDK STM32系列 Keil MDK STM32系列(一) 基于标准外设库SPL的STM32F103开发 Keil MDK STM32系列(二) 基于标准外设库SPL的STM32F401 ...
- 打印十字码 DataMatrix
nuget 安装 DataMatrix.net //示例 DmtxImageEncoder Die = new DmtxImageEncoder(); DataMatrix.net.DmtxImage ...
- c#操作符详解
操作符概览 操作符(Operator)也译为"运算符" 操作符是用来操作数据的,被操作符操作的数据称为操作数(Operand) 操作符的本质 操作符的本质是函数(即算法)的&quo ...
- java匿名内部类-应用
1 package face_09; 2 3 import sun.jvm.hotspot.ui.action.ShowAction; 4 5 interface Inter{ 6 void show ...
- 使用Termux并与ubuntu建立ssh连接
什么是Termux? Termux是一个Android终端仿真器和Linux环境应用程序,直接工作,无需根目录或设置.一个最小的基本系统被自动安装-额外的软件包可以使用APT软件包管理器来使用.不需要 ...
- jsp FN 标签库的使用方法
1. 在jsp 导入标签库 <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="f ...