CentOS 7 安装 Oracle 12c 步骤

Stella981
• 阅读 857

CentOS 7 安装 Oracle 12c 步骤
catoop 2019-09-28 23:35:02 2170 收藏 4
分类专栏: 数据库
版权

本例操作系统版本:CentOS 7.7、数据库版本:Oracle 12c(12.2)

安装步骤如下分解:

1.关闭防火墙,禁止防火墙开机自启

# 关闭防火墙
systemctl stop firewalld.service
# 禁止防火墙开机启动
systemctl disable firewalld.service
# 查看防火墙状态
systemctl status firewalld.service

    1
    2
    3
    4
    5
    6

2.关闭selinux

# 编辑文件
vi /etc/selinux/config
# 修改内容
SELINUX=disabled

    1
    2
    3
    4

3.yum安装必要安装包
使用 yum 批量安装依赖包,若执行一遍失败则继续执行第二遍(多次执行不会出现其他问题)

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686

    1

检查是否安装成功(31个安装包)

rpm -q 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

    1

4.创建 swap
详见文章: 创建Swap

5.创建 oracle 分区(可选)
如果你操作系统原有分区都合适,这步可以忽略

# 查看硬盘及分区信息(启动Disk开头的就是硬盘,Device开头的就是分区)
fdisk -l
# 创建分区(/dev/sdc 是硬盘,是你需要创建分区的硬盘,创建分区后会生成 /dev/sdc1,如果本来有sdc1,则会出现sdc2)
fdisk /dev/sdc
# 格式化新创建的分区
mkfs.xfs /dev/sdc1
# 将分区添加到 /etc/fstab 文件中,使之开机自动挂载(编辑保存 fstab 文件后不会立即生效)
vim /etc/fstab
/dev/sdc1        /u01     xfs      defaults 0 0

    1
    2
    3
    4
    5
    6
    7
    8
    9

6.创建 oracle data 目录(同第5步可选)

# 创建目录
mkdir /u01
# 重新加载文件 /etc/fstab 所有内容。该操作会忽略所有已经完成的操作,所以多次执行,只会有第一次能看到效果。
mount -a

    1
    2
    3
    4

7.设置时区、升级系统、安装桌面环境

# 设置时区
timedatectl set-timezone Asia/Shanghai
# 升级系统
yum clean all && yum update -y
# 安装桌面环境(两个组包必须,不然安装oracle会出现卡死现象)
yum groupinstall "GNOME Desktop" "Server with GUI" -y
# 安装完毕设置开机启动桌面环境
systemctl set-default graphical.target

    1
    2
    3
    4
    5
    6
    7
    8

8.创建oracle用户与用户组

# 创建oinstall和dba组
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
# 创建oracle用户
/usr/sbin/useradd -g oinstall -G dba oracle
# 设置oracle密码
passwd oracle
# 查看创建结果
id oracle

    1
    2
    3
    4
    5
    6
    7
    8
    9

9.参数配置

# 配置内核参数(这些参数根据你机器的配置不同,有些参数需要再次修改,在安装oralce过程中的check那一步,会给出提示,按要求逐个修改对应的推荐值即可)
vim /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 8329226240
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 = 1048586

# 配置ulimit参数
vim /etc/security/limits.conf
oracle soft nproc 65536
oracle hard nproc 65536
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft stack 65536
oracle hard stack 65536

# 设置上面创建的数据目录权限
chown -R oracle:oinstall /u01
chmod -R 775 /u01
chmod g+s /u01

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27

10.重启服务器

reboot

    1

11.下载或拷贝oracle文件

    可以在线下载
    可以通过拷贝方式
    可以在同网段电脑上开启ftp或者http服务后,在服务上 wget 下载
    官方下载地址: https://www.oracle.com/database/technologies/oracle-database-software-downloads.html

12.解压并开始安装
假设 oracle 文件已经下载到 /opt/linuxx64_12201_database.zip
使用图形化安装方式,你可以直接在原服务器上连接显示器安装,或者使用其他 ssh 远程安装(不带图形化的静默安找找度娘)。
如果使用 Xshell 这种工具安装(需要开启X11,可以参考:Xshell 显示图形化界面)

su - oracle  
cd /opt/
unzip linuxx64_12201_database.zip
cd database/
./runInstaller

    1
    2
    3
    4
    5

下面是安装步骤截图
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这一步不建议勾选 “Ignore All”,建议逐个按推荐值修改参数,问题要全部解决。
如果没有问题会进入下一步 Summary
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
需要特别强调的是,当出现这个窗口的时候,不要无脑的点击 OK了,请仔细看一下上面的提示,是要求你执行上面那两个命令的,所以把那两行命令在服务上执行一下,执行完毕后再点击OK。

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/12.2.0/dbhome_1/root.sh

    1
    2

执行这两个命令的截图如下:
在这里插入图片描述
如果你不小心无脑点击了OK,并没有执行那两行命令,就会出现下面这个警告,此时别着急点击 yes,先执行一下上面那2个命令,再点击 yes 也为时不晚。
在这里插入图片描述
下图是安装完成的最后一个截图,表示安装完成,你也可以按提示访问那个 URL 看看能显示什么内容(不重要)。
在这里插入图片描述

13.配置环境变量

su - oracle
vim ~/.bash_profile

# 下面环境变量配置内容,注意每一个路径都仔细检查一下不要错了
export EDITOR=vi
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=/u01/app/oracle/product/12.2.0/dbhome_1/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
export PATH=$ORACLE_HOME/bin:$PATH

# 执行命令使环境变量生效
source ~/.bash_profile

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14

14.测试服务

# 使用 telnet 测试服务端口
telnet 127.0.0.1 1521

# 使用 sqlplus 登录数据库
sqlplus /nolog
conn / as sysdba

    1
    2
    3
    4
    5
    6

至此,Oracle 数据库安装结束。

(END)
————————————————
版权声明:本文为CSDN博主「catoop」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/catoop/java/article/details/101643695

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Java修道之路,问鼎巅峰,我辈代码修仙法力齐天
<center<fontcolor00FF7Fsize5face"黑体"代码尽头谁为峰,一见秃头道成空。</font<center<fontcolor00FF00size5face"黑体"编程修真路破折,一步一劫渡飞升。</font众所周知,编程修真有八大境界:1.Javase练气筑基2.数据库结丹3.web前端元婴4.Jav
Stella981 Stella981
2年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这