CentOS7安装Oracle12c教程以及问题解析【图文详解】

CentOS安装Oracle12c总结

写在前面: 给自己第一次安装 Oracle12做个总结,过程也算艰辛,因为我发现网上大家提到的很多问题几乎都被我碰到了,虽然最终都在网上找到解决办法了,但是走了不少弯路,因为很多文章都不太全面或者说不够详细,其实归根结底还是Linux不熟的原因呀。我要特别感谢博客园以及51CTO博客的大佬们的教程,但是我想把步骤解析的更详细一点以及一些我遇到过的问题解决方案,让大家少走弯路是我写这个教程的初衷,如有不对之处还请大家敬请担待。

Oracle

Oracle数据库系统是美国Oracle(甲骨文)公司提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(Client/Server,C/S)或浏览器/服务器(Browser/Server,B/S)体系结构的数据库之一。
Oracle数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。

Oracle官方下载地址:
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
建议使用迅雷下载更快毕竟是外网的路径,或者找镜像路径反正我没找到

CentOS

CentOS 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。每个版本的 CentOS都会获得十年的支持(通过安全更新方式)。新版本的 CentOS 大约每两年发行一次,而每个版本的 CentOS 会定期(大概每六个月)更新一次,以便支持新的硬件。这样,建立一个安全、低维护、稳定、高预测性、高重复性的 Linux 环境。

CentOS阿里云站点镜像:
http://mirrors.aliyun.com/centos/7/isos/x86_64/

安装环境

  1. VMware15(我是在物理服务器上直接安装)
  2. CentOS7.6
  3. CPU:2颗,内存:4GB,硬盘空间:30GB
  4. Oracle的安装文件夹不低于15G
  5. IP:192.168.23.132(以自己设备实际情况为主)
    不知道IP的可用 ifconfig 命令查看
  6. 安装桌面GNOME环境(真实环境建议使用命令安装)
    已经是图形界面的请省略,适合新手方便找错,Linux熟练的请省略
    命令:
yum -y install gnome-classic-session gnome-terminal 
nautilus-open-terminal control-center liberation-mono-fonts
yum -y groupinstall "X Window System"
startx		//进入图像界面

安装前准备

以root用户登陆

关闭防火墙及selinux防火墙

systemctl disable firewalld.service 
systemctl stop firewalld.service

修改主机名(该步骤非必需,也可在安装centos时指定主机名)

指令:vim /etc/hostname

oracle

修改hosts文件

指令:vim /etc/hosts(注意注解)

192.168.23.132 oracle     //直接在配置文件末行添加即可

重启虚拟机

reboot

安装Oracle 12c

做完前面的准备工作我们就可以开始安装配置Oracle了

root身份安装环境依赖包

yum install binutils -y
yum install compat-libcap1 -y
yum install compat-libstdc++-33 -y
yum install compat-libstdc++-33.i686 -y
yum install glibc -y
yum install glibc.i686 -y
yum install glibc-devel -y
yum install glibc-devel.i686 -y
yum install ksh -y
yum install libaio -y
yum install libaio.i686 -y
yum install libaio-devel -y
yum install libaio-devel.i686 -y
yum install libX11 -y
yum install libX11.i686 -y
yum install libXau -y
yum install libXau.i686 -y
yum install libXi -y
yum install libXi.i686 -y
yum install libXtst -y
yum install libXtst.i686 -y
yum install libgcc -y
yum install libgcc.i686 -y
yum install libstdc++ -y
yum install libstdc++.i686 -y
yum install libstdc++-devel -y
yum install libstdc++-devel.i686 -y
yum install libxcb -y
yum install libxcb.i686 -y
yum install make -y
yum install nfs-utils -y
yum install net-tools -y
yum install smartmontools -y
yum install sysstat -y
yum install unixODBC -y
yum install unixODBC-devel -y

内核参数调整(双斜杠即//为注释,不用写到配置文件内)

指令:vim /etc/sysctl.conf

fs.aio-max-nr = 1048576         //异步IO请求数目 推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个
fs.file-max = 6815744           //打开的文件句柄的最大数量,防止文件描述符耗尽的问题
kernel.shmall = 2097152         //共享内存总量 页为单位,内存除以4K所得
kernel.shmmax = 4294967295  
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128  
//SEMMSL: 每个信号集的最大信号数量 SEMMNS:用于控制整个 Linux 系统中信号的最大数 
//SEMOPM: 内核参数用于控制每个 semop 系统调用可以执行的信号操作的数量 SEMMNI :内核参数用于控制整个 Linux 系统中信号集的最大数量
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 = 1048576   //套接字发送缓冲区大小的最大值

方便大家复制:

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295  
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 = 1048576

添加到文末
添加完保存后:sysctl -p(此命令用于重新加载配置文件,对比一下刚刚是否配好)
重新加载配置文件,对比一下

用户和组

groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle
passwd oracle                                     //创建oracle用户密码
mkdir -p /home/oracle/orc/app/oracle
chown -R oracle:oinstall /home/oracle/orc/app/
chmod -R 775 /home/oracle/orc/app/oracle/

Oracle用户环境配置

指令:vim /home/oracle/.bash_profile

umask 022
ORACLE_BASE=/home/oracle/orc/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1/
ORACLE_SID=orcl
NLS_LANG="SIMPLIFIED CHINESE_CHINA".UTF8
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin
LANG=zh_CN.UTF-8
export PATH LANG NLS_LANG ORACLE_BASE ORACLE_HOME ORACLE_SID

注:此处容易犯错,以自己的安装路径为主,我打算安装在home的oracle用户下
在这里插入图片描述

Oracle用户资源限制

指令:vim /etc/pam.d/login

session    required     /lib/security/pam_limits.so
session    required     pam_limits.so

如图所示

改文件限制

指令:vim /etc/security/limits.conf(添加到文末)

oracle        soft    nproc           2047       //单用户可使用的进程数量
oracle        hard    nproc           16384
oracle        soft    nofile          1024       //用户可打开的文件数量
oracle        hard    nofile          65536
oracle        soft    stack           10240      //堆栈设置

方便大家复制:

oracle        soft    nproc           2047
oracle        hard    nproc           16384
oracle        soft    nofile          1024
oracle        hard    nofile          65536
oracle        soft    stack           10240

编辑全局环境变量 改profile

指令:vim /etc/profile (添加到文末)

if [ $USER = "oracle" ]
then
if [ $SHELL = "/bin/ksh" ]
 then
   ulimit -p 16384                  //缓冲区大小
   ulimit -p 65536
else
 ulimit -u 16384 -n 65536           //进程数  文件数
fi
fi

方便大家复制:

if [ $USER = "oracle" ]
then
if [ $SHELL = "/bin/ksh" ]
 then
   ulimit -p 16384
   ulimit -p 65536
else
 ulimit -u 16384 -n 65536
fi
fi

修改设置宽容模式

文件路径: /etc/selinux/config(建议手动修改)
找到SELINUX修改为permissive

SELINUX=permissive

解压oracle12c安装包

切换至oracle用户
将下载好的Oracle安装包放在/home/oracle/orc/app/oracle目录下
使用unzip指令解压安装包得到database文件夹

su  oracle  
cd /home/oracle/orc/app/oracle  
unzip linuxx64_12201_database.zip 

进入database文件夹运行runInstaller
开始正式图形化安装

cd /home/oracle/orc/app/oracle/database
./runInstaller
注:如运行后显示 >>> 无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过 <<<<不要慌
  1. 用root用户执行 xhost +指令
access control disabled, clients can connect from any host 
(这个时候还是有很多机器在这个地方显示的不是这个,不过不要紧下面有解决的办法)
  1. 在root下执行xdpyinfo如果没有这个命令就去下载一个
yum -y install xdpyinfo		//下载命令
  1. 接着在root下执行xhost +
access control disabled, clients can connect from any host (这个时候就会显示这个了)
  1. 成功显示之后就切换到oracle用户
su oracle
  1. 在oracle用户执行命令
export DISPLAY=:0.0
  1. 接着执行xdpyinfo 如果能正常显示,说明设置成功了,就可以继续安装oracle了。
    如图所示

图形化安装oracle

配置安全更新

跳过即可
在这里插入图片描述

安装选择

选项说明:
- 创建和配置数据库:用于新安装数据库的用户。
- 仅安装数据库软件:适用于已有oracle数据库数据用于数据迁移的。
- 升级现有的数据库:适用于将老数据库升级成新数据库的用户。
在这里插入图片描述

系统类
  • 桌面类:最小化配置
  • 服务器类:
    在这里插入图片描述
网络安装选项

在这里插入图片描述

安装路径以及用户口令配置

在这里插入图片描述

概要
  • 查看有无问题,有就双击后边的“编辑”
    在这里插入图片描述
安装过程中弹窗的处理方法

在这里插入图片描述

执行配置脚本

弹什么就重新打开一个终端,以root用户运行
在这里插入图片描述

图形界面安装成功

在这里插入图片描述

启动Oracle

安装成功后尝试启动监听以及进入sqlplus启动服务器

验证Oracle

使用oracle自带的交互工具连接数据库

[oracle@oracledb ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Wed Aug 22 20:57:30 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> 

注:如报 bash:sqlplus:未找到命令… 还是环境变量没有设置好,重新检查配置环境变量就可以了
登录数据库出现 SQL> 就说明安装成功了

查看监听

切换到 oracle 用户且切换到用户环境

su oracle

启动监听
注:如启动报错,请认真检查上面环境变量的配置步骤,检查安装后的路径是否与用户环境配置相同

[oracle@oracledb ~]$ lsnrctl start

查看监听状态

[oracle@oracledb ~]$ lsnrctl status

关闭监听

[oracle@oracledb ~]$ lsnrctl stop

以sysdba登陆sqlplus

[oracle@oracledb ~]$ sqlplus / as sysdba

启动数据库
SQL> startup

关闭数据库
SQL> shutdown immediate

退出sqlplus
SQL> exit

结束!!

到这一步已经基本安装结束了,真心希望对你有帮助。如遇问题可以私聊我,大家一起进步。
如果觉得实用对你有帮助请点赞收藏分享,码字不易,如对此篇文章有其他见解可以私聊反馈有错误地方我一定更改!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值