Oracle12c的硬件要求如下:
操作系统位数是否与安装包一致
查询命令:
uname -m
结果显示如下:x86_64
经检查,操作系统是64位操作系统,符合安装要求
内存与交换空间:
查询内存ROM命令:
grep MemTotal /proc/meminfo
查询交换空间SWAP命令:
grep SwapTotal /proc/meminfo
或者使用free命令一起查询显示:
free
如图所示
经检查,内存为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)
/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
/etc/pam.d/login
文件,将下列内容加入该文件末尾:session required /lib/security/pam_limits.so
session required pam_limits.so
配置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
/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
添加后结果如下图所示:
完成添加后用root用户执行语句:
sysctl -p
使配置生效,并检查显示的结果是否与修改后的一直,如下图所示:
/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
因为一般的生产环境都是离线,所以本文将重点介绍离线安装依赖包的方法。
配置YUM源
1、将系统镜像拷贝到Linux系统中。如下图所示,本人为方便使用将镜像重命名为Linux_RedHat_6.9_x64.iso。
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
建好和进入新建挂载文件夹就可以看见挂载的内容了,如下图所示:
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软件包签名路径
6、激活YUM源
执行yum clean all
清理yum缓存
执行yum makecache
重建缓存
执行结果如下图所示:
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*”
执行以下命令:
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
xhost +
命令,然后执行切换用户命令su - oracle
,最后进入数据库安装包解压目录。否则在执行安装检查的时候会提示:无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了DISPLAY 变量。
错误。按照下面命令依次执行:(务必确定使用的oracle用户进行安装操作)# 先执行此命令
[root@yu database]# xhost +
# 执行切换用户命令
[root@yu database]# su - oracle
# 切换到数据库安装包解压后的目录
[oracle@yu ~]$ cd /Files/database/
./runInstaller
开始安装。
接下来安装比较简单,注意事项截图中标注,如果没有标注请直接点击下一步;
如果需要双机RAC安装教程,请移步:
制作中······
显示的是检查出来的错误信息,根据提示进行处理,点击上面检查结果,下面就会显示信息,再点击详细信息,就可以弹出问题的详细情况。
------PS:注意观察状态这一栏,警告是可以忽略的。点击右上角全部忽略可以进行下一步。
截图中的错误第一个是操作系统内核参数错误,参照上文操作内核章节修改,如图:
缺失的程序包可以参见【AIgua小白之路】Linux离线安装rpm安装包 ~~【随笔系列】详细图文教程进行下载安装
概要忘记截图了,就是你前面选择的东东,看看没错就下一步,有错就返回修改,进入下个画面就开始耐心等了:
执行到脚本安装会要求以ROOT用户身份执行
直接新打开个命令行,把脚本复制进入回车即可,如下图所示:
脚本执行完毕记得回到oracle安装界面点击确定继续安装,然后静待安装完成
最后恭喜,安装成功
Linux Oracle12C的单节点安装还是比较简单的,不过有时候容易遇见莫名其妙的问题,如果遇见问题欢迎大家留言交流。下面的常见安装错误我会不定时更新。
hostname
/etc/hosts
将本机hosts替换掉原来的名称,如下图所示:3、重启主机