【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】

检查硬件是否符合安装要求

Oracle12c的硬件要求如下:

  • 操作系统位数是否与安装包一致
    查询命令:
    uname -m
    结果显示如下:x86_64
    经检查,操作系统是64位操作系统,符合安装要求

  • 内存与交换空间:
    内存要求
    查询内存ROM命令:
    grep MemTotal /proc/meminfo
    查询交换空间SWAP命令:
    grep SwapTotal /proc/meminfo
    或者使用free命令一起查询显示:
    free
    如图所示
    【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第1张图片
    经检查,内存为2.8G,交换空间为2.9G.满足Oracle安装要求(安装要求第二列)。

创建用户与用户组

安装oracle需要创建三个用户组与一个用户,理论上单例按照需要3种用户组,实际可以只建两个oinstall和dba,后面再安装oracle数据库的时候把OSOPER组也设置是dba组。各用户组清单如下:

  • oracle 清单组(一般为oinstall):
    OINSTALL 组的成员被视为 Oracle 软件的“所有者”,拥有对 Oracle 中央清单 (oraInventory) 的写入权限。在一个 Linux 系统上首次安装 Oracle 软件时,
    OUI 会创建 /etc/oraInst.loc 文件。该文件指定 Oracle 清单组的名称(默认为 oinstall)以及 Oracle 中央清单目录的路径。

  • 数据库管理员(OSDBA,一般为 dba):
    OSDBA 组的成员可通过操作系统身份验证使用 SQL 以 SYSDBA 身份连接到一个 Oracle 实例。该组的成员可执行关键的数据库管理任务,如创建数据库、启动和关闭实例。该组的默认名称为dba。

  • 数据库操作员组(OSOPER,一般为 oper):
    OSOPER 组的成员可通过操作系统身份验证使用 SQL 以 SYSOPER 身份连接到一个 Oracle 实例。这个可选组的成员拥有一组有限的数据库管理权限,如管理和运行备份。
    该组的默认名称为oper。SYSOPER 系统权限甚至在数据库未打开时也允许访问数据库实例。对此权限的控制完

    创建命令如下:

	#创建oinstall组
	[root@Aerdo 桌面]# groupadd oinstall
	
	#创建dba组
	[root@Aerdo 桌面]# groupadd dba
	
	#创建oper组
	[root@Aerdo 桌面]# groupadd oper
	
	#创建oracle用户,加入第一个用户组为oinstall,然后加入dba,oper用户组
	[root@Aerdo 桌面]# useradd -g oinstall -G dba,oper oracle
	
	#修改oracle用户密码,需要手动输入两次
	[root@Aerdo 桌面]# passwd oracle
	
	#查看新建的oracle用户信息
	[root@Aerdo 桌面]# id oracle
	#显示结果如下:
	uid=500(oracle) gid=500(oinstall) 组=500(oinstall),501(dba),502(oper)

修改操作系统核心参数

  • 修改shell参数,以限制限制oracle用户资源配置。
    打开/etc/security/limits.conf文件,将以下内容添加至文件末尾(建议在root用户下使用vim编辑器,下文中所有需要修改配置文件的操作均如此建议,不在累述。vim编辑器使用参考:未完待续~~):
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

添加后效果如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第2张图片

  • 编辑登录配置/etc/pam.d/login文件,使上一步的shell配置生效
    打开/etc/pam.d/login文件,将下列内容加入该文件末尾:
session required /lib/security/pam_limits.so
session required pam_limits.so

添加结果如图:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第3张图片

  • 配置DISPLAY环境变量
    使用oracle用户执行命令:
    [oracle@Aerdo ~]$ export DISPLAY=:0.0

  • 配置Orcle的环境变量
    使用oracle用户打开文件.bash_profile
    输入以下内容:

PATH=$PATH:$HOME/bin
export PATH
export ORACLE_BASE=/home/oracle/app 
export ORACLE_HOME=$ORACLE_BASE/oracle/product/12.2.0/dbhome_1 
export ORACLE_SID=orcl # 这里填写新建的数据库实例名称
export PATH=$HOME/bin:$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

修改结果如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第4张图片

  • 修改内核参数
    打开/etc/sysctl.conf文件,将以下参数添加至文件末尾:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
# 后面安装过程中发现kernel.shmmax参数错误,现返回修改,此段话无需添加
kernel.shmmax = 1487921152 
kernel.shmmni = 4096
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
net.ipv4.ip_local_port_range = 9000 65500

添加后结果如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第5张图片
完成添加后用root用户执行语句:
sysctl -p
使配置生效,并检查显示的结果是否与修改后的一直,如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第6张图片

  • 增大可打开文件描述符的最大数
    打开/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

修改后的效果如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第7张图片

安装oracle系统必备依赖包(离线)

因为一般的生产环境都是离线,所以本文将重点介绍离线安装依赖包的方法。

  • 配置YUM源
    1、将系统镜像拷贝到Linux系统中。如下图所示,本人为方便使用将镜像重命名为Linux_RedHat_6.9_x64.iso。
    【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第8张图片
    2、新建用于挂载镜像的文件夹mkdir /media/Linux_ISO
    3、执行命令将镜像挂载到新建的文件夹中,其中“/ISO/Linux_RedHat_6.9_x64.iso”是你系统镜像所在目录,
    “/media/Linux_ISO”是你新建需要挂载的文件夹
    mount -o loop /ISO/Linux_RedHat_6.9_x64.iso /media/Linux_ISO
    建好和进入新建挂载文件夹就可以看见挂载的内容了,如下图所示:
    【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第9张图片
    4、备份原有的yum文件
    执行命令mkdir /etc/yum.repos.d/bak创建备份目录,然后执行mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak将文件备份至备份目录中

    5、创建指向镜像的yum源
    /etc/yum.repos.d文件夹下新建文件local.repo,打开新建的文件,输入以下代码:

[name]
name="local repo"
baseurl=file:///media/Linux_ISO
enabeld=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
字段详解
name="local repo"											# 源名称,可以随意定义
baseurl=file:///media/Linux_ISO								# 源的传输方式以及具体路径,可以使用的方式有,file://,ftp://,http://等,然后后面跟上URL(上文中镜像挂在目录)
enabeld=1 													# 1:代表启动;0:代表不启用
gpgcheck=0 													# 1:表示使用gpg文件来检查软件包的签名;0:表是不使用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 	# gpg软件包签名路径

【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第10张图片
6、激活YUM源
执行yum clean all清理yum缓存
执行yum makecache重建缓存
执行结果如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第11张图片

  • 检查必备依赖包是否存在
    请依次执行下面的每一行命令检查包是否存在:
rpm -qa |grep binutils
rpm -qa |grep compat-libstdc++
rpm -qa |grep elfutils-libelf
rpm -qa |grep expat
rpm -qa |grep gcc
rpm -qa |grep glibc
rpm -qa |grep libaio
rpm -qa |grep libgcc
rpm -qa |grep libstdc++
rpm -qa |grep make
rpm -qa |grep numactl
rpm -qa |grep sysstat
rpm -qa |grep pdksh-5.2.14 #该依赖包已经被弃用,安装的时候可能提升“No package pdksh-5.2.14 available.”,忽略即可。
rpm -qa |grep ksh
rpm -qa |grep cpp
rpm -qa |grep unixODBC
rpm -qa |grep mpfr

不存在的包请使用命令:yum install 包名 # 包名可以写一部分,例如:“gcc*”

创建oracle安装目录

执行以下命令:

mkdir /home/oracle/app
mkdir /home/oracle/app/oracle
mkdir /home/oracle/app/oradata
mkdir /home/oracle/app/oracle/product

创建目录完成后将目录权限分配给oracle用户:

chown -R oracle:oinstall /home/oracle/app

执行安装操作

  1. 切换到oracle用户,切换前先执行xhost + 命令,然后执行切换用户命令su - oracle,最后进入数据库安装包解压目录。否则在执行安装检查的时候会提示:无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了DISPLAY 变量。错误。按照下面命令依次执行:(务必确定使用的oracle用户进行安装操作)
# 先执行此命令
[root@yu database]# xhost +

# 执行切换用户命令
[root@yu database]# su - oracle

# 切换到数据库安装包解压后的目录
[oracle@yu ~]$ cd /Files/database/
  1. 执行安装操作
    执行命令./runInstaller开始安装。
    安装程序执行完基本参数检查后弹出图形安装界面,如下图所示:

【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第12张图片
接下来安装比较简单,注意事项截图中标注,如果没有标注请直接点击下一步;
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第13张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第14张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第15张图片
如果需要双机RAC安装教程,请移步:

制作中······

【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第16张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第17张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第18张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第19张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第20张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第21张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第22张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第23张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第24张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第25张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第26张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第27张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第28张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第29张图片
显示的是检查出来的错误信息,根据提示进行处理,点击上面检查结果,下面就会显示信息,再点击详细信息,就可以弹出问题的详细情况。
------PS:注意观察状态这一栏,警告是可以忽略的。点击右上角全部忽略可以进行下一步。
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第30张图片
截图中的错误第一个是操作系统内核参数错误,参照上文操作内核章节修改,如图:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第31张图片
缺失的程序包可以参见【AIgua小白之路】Linux离线安装rpm安装包 ~~【随笔系列】详细图文教程进行下载安装
概要忘记截图了,就是你前面选择的东东,看看没错就下一步,有错就返回修改,进入下个画面就开始耐心等了:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第32张图片
执行到脚本安装会要求以ROOT用户身份执行【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第33张图片
直接新打开个命令行,把脚本复制进入回车即可,如下图所示:
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第34张图片
脚本执行完毕记得回到oracle安装界面点击确定继续安装,然后静待安装完成
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第35张图片
【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第36张图片
最后恭喜,安装成功

总结

Linux Oracle12C的单节点安装还是比较简单的,不过有时候容易遇见莫名其妙的问题,如果遇见问题欢迎大家留言交流。下面的常见安装错误我会不定时更新。

常见安装错误

  • PRVF-0002:无法检索本地节点名
    在执行安装命令通过检查启动图形界面的报错。
    解决办法:
    1、查看本机hostname。命令:hostname
    2、修改/etc/hosts将本机hosts替换掉原来的名称,如下图所示:
    【AIgua小白之路】linux安装oracle12最详细图文解释 ~【超详细图文教程】_第37张图片

3、重启主机

你可能感兴趣的:(数据库,Linux)