ORACLE学习笔记-CentOS 7.5 Oracle 11gR2安装部署


本文描述了在CENTOS 7.5操作系统环境上使用图形化安装部署ORACLE 11g R2 11.2.0.4版本单实例数据库。
注:本文中,#开头命令表示在root用户下执行,$开头命令表示在oracle用户下执行。

一、环境检查

1、操作系统检查

查看操作系统版本信息。

[root@oracle11g opt]#  cat /etc/redhat-release
[root@oracle11g opt]# uname -r

在这里插入图片描述

内存检查

Oracle对服务器内存是有一定要求的,安装内存Oracle 11g R2的内存需求:
最小内存:1GB of RAM
推荐内存:大于等于2GB RAM

[root@oracle11g opt]# grep MemTotal /proc/meminfo

在这里插入图片描述

3、SWAP检查

合理的设置SWAP空间能够有效的提高Oracle性能,ORACLE公司给出的SWAP的设置与RAM有这如下关系如下:
RAM 1GB~2GB,SWAP 大小为1.5RAM
RAM 2GB~16GB,SWAP 大小为与RAM大小一致
RAM 大于16GB,SWAP 大小为16GB

[root@oracle11g opt]#  grep SwapTotal /proc/meminfo

在这里插入图片描述

4、共享内存检查

为了保证数据库运行稳定,要对操作系统进行共享内存的设置,设置大小一般是RAM内存的80%。
用df -h /dev/shm命令查看,不满足进行调整。

[root@oracle11g opt]# df -h /dev/shm

在这里插入图片描述共享内存调整步骤:
a、卸载“/dev/shm”

[root@oracle11g opt]# umount /dev/shm

如果资源忙,用fuser -m -v /dev/shm/查看使用进程,然后kill在用进程

[root@oracle11g opt]# fuser -m -v /dev/shm/
[root@oracle11g opt]# kill -9 1876

b、调整“/dev/shm”

[root@oracle11g opt]# mount -t tmpfs shmfs -o size=2g /dev/shm

在这里插入图片描述

c、修改文件“/etc/fstab”

[root@oracle11g opt]# vi /etc/fstab

在这里插入图片描述

5、磁盘空间检查

Oracle安装对磁盘空间有一定的要求,磁盘空间至少要达到Oracle的最低要求才能顺利的完成Oracle的安装。

[root@oracle11g opt]# df -h

在这里插入图片描述

二、YUM配置及RPM依赖包安装

1、 本地YUM源搭建

参考
https://blog.csdn.net/mgxiaomage/article/details/122464867?spm=1001.2014.3001.5501
https://blog.csdn.net/mgxiaomage/article/details/122465183?spm=1001.2014.3001.5501
https://blog.csdn.net/mgxiaomage/article/details/122477698?spm=1001.2014.3001.5501

2、 RPM依赖包安装

binutils-2.23.52.0.1-12.el7.x86_64
compat-libcap1-1.10-3.el7.x86_64
compat-libstdc+±33-3.2.3-71.el7.i686
compat-libstdc+±33-3.2.3-71.el7.x86_64
gcc-4.8.2-3.el7.x86_64
gcc-c+±4.8.2-3.el7.x86_64
glibc-2.17-36.el7.i686
glibc-2.17-36.el7.x86_64
glibc-devel-2.17-36.el7.i686
glibc-devel-2.17-36.el7.x86_64
ksh
libaio-0.3.109-9.el7.i686
libaio-0.3.109-9.el7.x86_64
libaio-devel-0.3.109-9.el7.i686
libaio-devel-0.3.109-9.el7.x86_64
libgcc-4.8.2-3.el7.i686
libgcc-4.8.2-3.el7.x86_64
libstdc+±4.8.2-3.el7.i686
libstdc+±4.8.2-3.el7.x86_64
libstdc+±devel-4.8.2-3.el7.i686
libstdc+±devel-4.8.2-3.el7.x86_64
libXi-1.7.2-1.el7.i686
libXi-1.7.2-1.el7.x86_64
libXtst-1.2.2-1.el7.i686
libXtst-1.2.2-1.el7.x86_64
make-3.82-19.el7.x86_64
sysstat-10.1.5-1.el7.x86_64

yum install -y binutils.x86_64
yum install -y compat-libcap1.x86_64
yum install -y compat-libstdc++-33.i686 compat-libstdc++-33.x86_64
yum install -y gcc.x86_64 gcc-c++.x86_64
yum install -y glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64
yum install -y ksh.x86_64
yum install -y libgcc.i686 libgcc.x86_64
yum install -y libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64
yum install -y libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64
yum install -y make.x86_64
yum install -y sysstat.x86_64
yum install -y unixODBC.i686 unixODBC.x86_64 unixODBC-devel.i686 unixODBC-devel.x86_64
yum install -y elfutils-libelf-devel.i686 elfutils-libelf-devel.x86_64

三、创建组、用户、目录

1、创建组、用户

[root@oracle11g yum.repos.d]# groupadd oinstall
[root@oracle11g yum.repos.d]# groupadd dba
[root@oracle11g yum.repos.d]# groupadd oper
[root@oracle11g yum.repos.d]# useradd -g oinstall -G dba,oper oracle
[root@oracle11g yum.repos.d]# passwd oracle

在这里插入图片描述groupadd oinstall --创建 oinstall组 安装数据库软件用
groupadd dba --创建 dba组 管理数据库软件用
groupadd oper --创建 oper组 操作数据库软件用–但是基本用不到。因为官方文档要求,所以我们最好还是给他建立上
useradd -g oinstall -G dba,oper oracle -g代表的是主组 -G代表的属组 oracle代表的是建立的用户名
这个命令的意思是建立一个oracle用户 让他的主组属于oinstall组 让他属组属于dba 、oper组

2、创建目录

[root@oracle11g yum.repos.d]# mkdir -p /u01/app/oracle
[root@oracle11g yum.repos.d]# mkdir -p /u01/oraInventory
[root@oracle11g yum.repos.d]# chown -R oracle.oinstall /u01
[root@oracle11g yum.repos.d]# chown -R oracle:oinstall /u01/app/oracle
[root@oracle11g yum.repos.d]# chmod -R 775 /u01/app/oracle

在这里插入图片描述

四、系统参数配置

1、关闭防火墙

systemctl status firewalld.service–检查防火墙状态
systemctl stop firewalld.service–暂时关闭防火墙,下次启动时防火墙仍随系统启动而启动
systemctl disable firewalld.service–彻底永久关闭防火墙

[root@oracle11g u01]# systemctl status firewalld.service
[root@oracle11g u01]# systemctl stop firewalld.service
[root@oracle11g u01]# systemctl disable firewalld.service

在这里插入图片描述

2、配置/etc/hosts文件

查看主机名和IP地址

[root@oracle11g u01]# hostname
[root@oracle11g u01]# ip a

在这里插入图片描述

将查询到的主机名 IP地址添加到/etc/hosts文件

[root@oracle11g u01]# vim /etc/host

在这里插入图片描述

3、关闭SELINUX

将内容SELINUX=enforcing更改为SELINUX=disabled

[root@oracle11g u01]# vi /etc/selinux/config

在这里插入图片描述

4、配置内核参数

将以下内容追加到/etc/sysctl.conf文件结尾。

[root@oracle11g u01]# vim /etc/sysctl.conf
# oracle
fs.aio-max-nr = 1048576
#异步IO请求数目 推荐值是:1048576 其实它等于 10241024 也就是 1024K 个
fs.file-max = 6815744
#文件句柄数 一次可以打开文件的个数
kernel.shmall = 2097152
# 内存大小*1024*1024*1024/4*1024
kernel.shmmax = 536870912
#表示最大共享内存大小,一般为物理内存的3/4左右,比如64G=64*1024*1024*1024*0.75
kernel.shmmni = 4096
#表示最小共享内存固定4096KB 一般是固定值
kernel.sem = 250 32000 100 128
#4个参数依次是SEMMSL:每个用户拥有信号量最大数,SEMMNS:系统信号量最大数,SEMOPM:每次semopm系统调用操作数,SEMMNI:系统辛苦量集数最大数。这4个参数为固定内容大小
net.ipv4.ip_local_port_range = 9000 65500
#ip_local_port_range表示端口的范围,为指定的内容 一般是固定值
net.core.rmem_default = 262144
#表示套接字接收缓冲区大小的缺省值
net.core.rmem_max = 4194304
#表示套接字接收缓冲区大小的最大值。
net.core.wmem_default = 262144
#表示套接字发送缓冲区大小的缺省值。
net.core.wmem_max = 1048576
#表示套接字发送缓冲区大小的最大值。

在这里插入图片描述sysctl -p 系统参数生效

[root@oracle11g u01]# /sbin/sysctl -p

在这里插入图片描述

5、配置/etc/security/limits.conf

将以下内容追加到/etc/security/limits.conf文件结尾。

[root@oracle11g u01]# vi /etc/security/limits.conf
#oracle
oracle   soft   nofile    1024
oracle   hard   nofile    65536
oracle   soft   nproc    16384
oracle   hard   nproc    16384
oracle   soft   stack    10240
oracle   hard   stack    32768
oracle   hard   memlock    134217728
oracle   soft   memlock    134217728

在这里插入图片描述

6、配置/etc/pam.d/login

将以下内容追加到/etc/pam.d/login文件结尾。

[root@oracle11g u01]# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so

在这里插入图片描述

7、配置/etc/profile

[root@oracle11g u01]# vi /etc/profile
if [ $USER = "oracle" ]; then
   if [ $SHELL = "/bin/ksh" ]; then
      ulimit -p 16384
      ulimit -n 65536
   else
      ulimit -u 16384 -n 65536
   fi
fi

在这里插入图片描述

8、配置ORACLE用户的环境变量

[oracle@oracle11g ~]$  vi /home/oracle/.bash_profile
#oracle
export EDITOR=vi
export TMP=/tmp  
export TMPDIR=$TMP
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1/
export INVENTORY_LOCATION=/u01/oraInventory
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG="Simplified Chinese_China.UTF8"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH:$HOME/bin
umask 022

在这里插入图片描述生成参数

[oracle@oracle11g ~]$ source /home/oracle/.bash_profile

参数说明
export EDITOR=vi 默认的编辑器是vi
export TMP=/tmp ORACLE默认的临时目录是/tmp
export TMPDIR= T M P
临 时 目 录 生 成 e x p o r t O R A C L E S I D = o r c l O R A C L E 实 例 名 称 是 o r c l e x p o r t O R A C L E B A S E = / u 01 / a p p / o r a c l e O R A C L E 的 基 本 目 录 e x p o r t O R A C L E H O M E = TMP 临时目录生成 export ORACLE_SID=orcl ORACLE实例名称是orcl export ORACLE_BASE=/u01/app/oracle ORACLE的基本目录 export ORACLE_HOME= TMP临时目录生成exportORACLES​ID=orclORACLE实例名称是orclexportORACLEB​ASE=/u01/app/oracleORACLE的基本目录exportORACLEH​OME=ORACLE_BASE/product/11.2.0/db_1 ORACLE数据库的HOME目录
export INVENTORY_LOCATION=/u01/oraInventory ORACLE安装时的inventory
export TNS_ADMIN= O R A C L E H O M E / n e t w o r k / a d m i n O R A C L E 的 网 络 文 件 主 目 录 e x p o r t L D L I B R A R Y P A T H = ORACLE_HOME/network/admin ORACLE的网络文件主目录 export LD_LIBRARY_PATH= ORACLEH​OME/network/adminORACLE的网络文件主目录exportLDL​IBRARYP​ATH=ORACLE_HOME/lib ORACLE的库文件目录
export NLS_LANG=" Simplified Chinese_China.UTF8" ORACLE的字符集 不过我们弃用 因为我们使用UTF8
export NLS_DATE_FORMAT=“YYYY-MM-DD HH24:MI:SS” ORACLE的日期格式 我们使用会话的方式修改 没有上面的NLS_LANG,那么这个参数不会生成
export PATH= O R A C L E H O M E / b i n : / b i n : / u s r / b i n : / u s r / s b i n : / u s r / l o c a l / b i n : / u s r / X 11 R 6 / b i n : ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin: ORACLEHOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:PATH:$HOME/bin 生成相关参数
umask 022

source .bash_profile或 . ~/.bash_profile 重新加载,变量生效

五、ORACLE 11g R2安装部署

1、上传安装介质

在这里插入图片描述

2、解压安装介质

[root@oracle11g opt]# unzip p13390677_112040_Linux-x86-64_1of7.zip
[root@oracle11g opt]# unzip p13390677_112040_Linux-x86-64_2of7.zip

在这里插入图片描述

3、软件安装

通过图形化界面安装ORACLE 11g R2数据库我们必须要能访问图形化界面,访问方式多种多样。如直接登录CentOS桌面、VNC、Xmanager、MobaXterm等。如果在现场,我们直接通过连接显示器访问CentOS桌面进行安装,如不是现场,推荐使用MobaXterm,比较方便。
通过MobaXterm安装只需执行export DISPLAY=192.168.100.1:0.0(这里的IP是自己本机的IP地址)即可将图形化界面投送至本机。
注:安装时用oracle用户进行操作

[oracle@oracle11g ~]$ export DISPLAY=192.168.100.1:0.0

在这里插入图片描述

进去解压后的目录,执行runInstaller进行安装(弹出的窗口全部选择“是(Y)”进入安装界面

[oracle@oracle11g ~]$ cd /opt/database/
[oracle@oracle11g database]$ ./runInstaller

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述根据提示将调整参数或安装缺失rpm软件包
在这里插入图片描述
在这里插入图片描述
安装结束时,会提示执行两个脚本,根据提示执行一下脚本

/u01/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh

4、创建监听

运行netca命令创建监听。

[oracle@oracle11g database]$ netca

在这里插入图片描述

5、创建数据库

通过dbca命令创建数据库实例。

[oracle@oracle11g database]$ dbca

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述

6、启停命令

操作系统重启命令 shutdown -r now
操作系统关闭命令 shudtown -h now
数据库关闭命令 shutdown immediate
数据库启动命令 startup
监听启动命令 lsnrctl start
监听关闭命令 lsnrctl stop
监听查看命令 lsnrctl status

7、启动顺序

在日常工作中,关于数据库的启停:
先关闭上层应用服务---->关闭监听---->关闭数据库
启动数据库----->启动监听----->启动应用 进行相关的连接测试

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值