Oracle | CentOS 7 安装Oracle 11g(上篇)

1.1 版本说明

操作系统:CentOS 7.6

安装介质:CentOS-7-x86_64-DVD-1810.iso

 

Oracle版本:11.2.0.4

安装介质:p13390677_112040_Linux-x86-64_1of7.zip

                  p13390677_112040_Linux-x86-64_2of7.zip

 

2 准备工作

2.1 使用Root登录操作系统

a.配置IP地址,可以通过本地Xshell进行连接

# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.0.2.20
NETMASK=255.255.255.0
GATEWAY=192.0.2.1
DNS1=8.8.8.8
DNS2=8.8.4.4

b.配置hosts文件

# vi /etc/hosts
192.0.2.20  test01 test01

c.关闭selinux

# setenforce 0
setenforce: SELinux is disabled
# vi /etc/selinux/config
SELINUX=disabled

d.关闭防火墙

# systemctl stop firewalld
# systemctl disable firewalld

e.配置yum

# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
# yum clean all
# yum makecache

2.2 硬件检查

2.2.1 内存检查

a.至少需要1GB的RAM,建议2GB或以上

# grep MemTotal /proc/meminfo
MemTotal:        7990288 kB

b.SWAP空间要求

# grep SwapTotal /proc/meminfo
SwapTotal:       8388604 kB

2.2.2 系统架构

# uname -m
x86_64

2.2.3 磁盘要求

a.系统目录/tmp目录至少需要1GB空间

b.软件安装及数据文件占用空间

# df -h

2.3 软件检查

2.3.1操作系统检查

# cat /proc/version
Linux version 3.10.0-957.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Nov 8 23:39:32 UTC 2018

2.3.2 内核要求

# uname -r
3.10.0-957.el7.x86_64

2.3.3 软件包需求

yum 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 -y

2.4 创建必要的用户和用户组

# groupadd -g 1001 oinstall
# groupadd -g 1002 dba
# groupadd -g 1003 oper
# useradd -u 1002 -g oinstall -G dba,oper oracle

2.5 配置内核参数及资源限制

2.5.1 配置内核参数

# vim /etc/sysctl.conf
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 = 26214
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576

# sysctl -p

参数说明:

fs.aio-max-nr

       文件句柄最大IO,此值限制并发未完成的请求,为避免I/O子系统故障,必须设置;

fs.file-max

       文件句柄的最大数量,文件句柄表示在Linux系统中可以打开的文件数量;

kernel.shmall

       可用共享内存的总量(单位为页,即可以使用共享内存页总数);

kernel.shmmax

       共享内存段的最大值,(单位为字节),一般为物理内存的一半;

kernel.shmmni

       共享内存段的最大数量,默认值为4096,通常无需更改;

kernel.sem

       Sem是semaphores(内核信号量的设置),4个参数的含义依次为:

       Semmsl:内核用于限制每个信号机会的最大信号个数的参数

       Semmns:内核用于限制整个Linux系统中的信号集的最大信号量的参数

       Semopm:内核用于控制一次semop(函数)调用中的最大操作数的参数

       Semmni:内核用于限制系统对信号标识符的最大数量限制的参数

net.ipv4.ip_local_port_range

       允许Oracle使用的本地端口范围;

net.core.rmem_default

       套接字接收缓冲区(窗口)大小的缺省值(字节)

net.core.rmem_max

       套接字接收缓冲区(窗口)大小的最大值(字节)

net.core.wmem_default

       套接字发送缓冲区(窗口)大小的缺省值(字节)

net.core.wmem_max

       套接字发送缓冲区(窗口)大小的最大值(字节)

2.5.2 配置资源限制

# vim /etc/security/limits.conf
oracle          soft    	nofile          	1024
oracle          hard    	nofile          	65536
oracle          soft    	nproc           	2047
oracle          hard    	nproc           	16384
oracle          soft    	stack           	10240

2.6 配置安装路径

       建议为安装路径单独做一个分区,大小为50-100G。

# fdisk /dev/sdb
# partprobe /dev/sdb
# mkfs.ext4 /dev/sdb1
# blkid /dev/sdb1
/dev/sdb1: UUID="d5cf9d78-a7b5-484f-a690-08e0c72ef54a" TYPE="ext4"
# vi /etc/fstab
UUID=d5cf9d78-a7b5-484f-a690-08e0c72ef54a /u01			  ext4	  defaults	  0 0
# mount /dev/sdb1 /u01	
# df -h /u01
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1        99G   61M   94G   1% /u01

# mkdir /u01/app/oracle -pv
# chmod 775 /u01/app -R
# chown oracle:oinstall /u01 -R

2.7 配置Oracle用户环境变量

       首先要切换到oracle用户,然后编辑.bash_profile文件。

# su – oracle
# vi /home/oracle/.bash_profile
export ORACLE_BASE=/u01/app/oracle
#ORACLE_BASE,根目录
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db
#ORACLE_HOME,产品目录
export TEMP=/tmp
export TEPDIR=/tmp
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=orcl11g

$ source /home/oracle/.bash_profile

2.8 安装介质

       将Oracle 11g安装介质通过root用户上传至/opt,并解压。

# ls -ltr
total 2487200
drwxr-xr-x. 2 root root          6 Oct 31 03:17 rh
-rw-r--r--  1 root root 1151304589 Feb 18 17:51 p13390677_112040_Linux-x86-64_2of7.zip
-rw-r--r--  1 root root 1395582860 Feb 18 17:51 p13390677_112040_Linux-x86-64_1of7.zip

# unzip p13390677_112040_Linux-x86-64_1of7.zip
# unzip p13390677_112040_Linux-x86-64_2of7.zip
# ll
total 2487200
drwxr-xr-x  7 root root        136 Aug 27  2013 database
-rw-r--r--  1 root root 1395582860 Feb 18 17:51 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--  1 root root 1151304589 Feb 18 17:51 p13390677_112040_Linux-x86-64_2of7.zip
drwxr-xr-x. 2 root root          6 Oct 31 03:17 rh

3 安装Database软件

       首先将Xshell的转发X11设置连接到“Xmanager”,位置在Xshell的“文件”-“属性”-“连接”-“SSH”-“隧道”;利用X11转发功能,无需进行复杂的端口转发设置,通过安全的加密隧道在用户PC上使用远程的X11应用程序。

       接下来使用root执行xhost +命令,然后切换至oracle用户设置DISPLAY变量,启动安装脚本。

# xhost +
access control disabled, clients can connect from any host
--xhost +:改命令是允许其他用户将图形显示到当前屏幕上,务必要执行。
# su – oracle
$ who am i
--显示登录用户的信息
root     pts/0        2019-02-19 10:12 (192.0.2.222)
$ export DISPLAY=192.0.2.222:0.0
$ cd /opt/database/
$ ./runInstaller 
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 72342 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 8191 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2019-02-19_10-13-47AM. Please wait ...[oracle@test01 database]$

       此处提示缺少两个软件包,根据Oracle文档 ID 1962046.1确认可忽略。

       以上报错为Oracle的Bug,文档ID 1965691.1,继续即可。

       使用root用户依次执行提示的2个脚本。

# /u01/app/oraInventory/orainstRoot.sh
--目录相关的创建、授权操作,复制oraInst.loc文件
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.

# /u01/app/oracle/product/11.2.0/db/root.sh
--调用脚本,设置必要权限等
Performing root user operation for Oracle 11g 

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0/db

Enter the full pathname of the local bin directory: [/usr/local/bin]: 此处回车即可
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

       至此,数据库软件已安装完毕,将在下篇介绍监听及数据库的创建。

 

Tank

2019.7.26

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值