在centos7上安装oracle是一个比较麻烦的事,在安装前需要做一些服务器的准备工作

我是在虚拟机里测试的所以需要下载centos7的镜像,可以去官网然后找到中国的镜像站用迅雷插件下载速度比较快这里我选择的是64位的,oracle也是64位的

准备一个oracle12c的数据库,因为现在oracle官网改版了不能下载旧版本的了所以我找了好久都没找到,然后在一个网盘里扒拉到了一个12201版本的数据库安装包

服务器配置

  1.首先用服务器的root身份安装依赖包(如果直接是root用户登录的就直接执行下边的,如果不是就打开终端先执行 su - root命令然后输入密码密码在终端里是不显示的)

yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp
这个操作可以多做几遍没关系确保安装成功了,做完这一步再测试一下看看安装成功了没有
rpm -q binutils compat-libcap1 compat-libstdc++  gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
如果出现包未安装的提示,请用yum install 包名进行安装。
例如 yum install compat-libstdc++*
  
 2.建立用户和组:
groupadd oinstall 
groupadd dba 
useradd -g oinstall -G dba,oper oracle
echo "123456" | passwd --stdin oracle  #oracle用户的登录密码,后续登录要用,记着。

  3.创建安装目录:

 mkdir -p /orcl/app/oracle/product/12.1.0/db_1  #创建目录

 chown -R oracle:oinstall /orcl/app  #分配用户目录权限

 chmod -R 775 /orcl/app #给目录分配权限

上传安装包

这里我用的是winSCP工具上传的

我们把oracle12cLinux版本的安装包上传到

/orcl/app/oracle目录

  4.修改内核参数vim /etc/sysctl.conf,添加:(如果没有vim 就用vi编辑器)

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

# kernel.shmmax = 4098955264 这个地方因为每个人机器不一样所以填的可能也不一样,到时候看check那一步的时候推荐值是多少再改成多少就行

  5.改文件限制:vi /etc/security/limits.conf,添加:

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

  6.以及vi /etc/pam.d/login,添加:

session required pam_limits.so

  7.修改ulimit:vi /etc/profile,添加:

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

  8.修改环境变量。vi ~oracle/.bash_profile,添加:

ORACLE_BASE=/orcl/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1
ORACLE_SID=orcl
export ORACLE_BASE ORACLE_HOME ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH

  9.如果你的centos有自带的openjdk就卸载掉没有就不用管

yum remove *openjdk*

再安装正常版本的jdk去oracle官网下载Linux版的jdk8

然后到下载的目录执行

rpm -ivh jdk名字.rpm

例如rpm -ivh jdk-8u144-linux-x64.rpm

  10.开放服务器的1521端口

firewall-cmd --zone=public --add-port=1521/tcp --permanent

firewall-cmd --reload

返回success代表成功期间可能会提示输入root密码

做完以上操作之后重启服务器

开始安装oracle12c

  1. 重启完服务器用oracle这个用户登录服务器(我们在服务器配置的第二步里已经创建了一个名为oracle的用户密码为123456)
  2. 进入到安装包目录
cd /orcl/app/oracle
  1. 解压安装包
unzip linuxx64_12201_database.zip
  1. 进入到解压目录
cd /orcl/app/oracle/database
  1. 运行安装命令
./runInstaller

安装过程中可能会碰到的问题

1.swap size问题没有检查交换空间

安装数据库所需要的交换空间

问题

1.使用dd命令创建一个swap分区

dd if=/dev/zero of=/home/swap bs=1024 count=16777216

2.格式化刚才创建的分区

mkswap /home/swap

3.再使用swapon命令把这个文件分区变成swap分区

swapon /home/swap

4.为了能够让swap自动挂载,需要修改etc/fstab文件

vim /etc/fstab

# 在文件末尾加上

/home/swap swap swap default 0 0

这样就算重启系统,swap分区也不用手动挂载了

5. 修改/etc/inittab文件

vim /etc/inittab

# 在文件末尾加上

swapon /home/swap

2.kernel.shmmax问题就是在服务器配置的值为他推荐的值

CentOS7 安装Oracle12c数据库的更多相关文章

  1. CentOS7安装mongoDB数据库

    CentOS7安装mongoDB数据库 时间:2015-03-03 16:45来源:blog.csdn.net 作者:进击的木偶 举报 点击:8795次 mongoDB是目前发展比较好的NOSQL数据 ...

  2. CentOS7安装redis数据库及php-redis扩展

    redis 首先把redis安装到服务器中 1.wget http://download.redis.io/redis-stable.tar.gz 下载redis源码 2. tar xvzf redi ...

  3. CentOS7安装mysql数据库

    安装完Centos7,迫不急待的想安装mysql数据库,却没想到走了很多弯路,后来经过查资料,才知道了在Centos7中用MariaDB代替了mysql数据库. 准确来说,本文的标题有点误导的意思,本 ...

  4. vmware虚拟机CentOS7安装oracle数据库

    想用linux虚拟机装一个oracle,中间遇到的坑太多了,最后总算是安装好了,一定要写个全面的教程出来. 话不多说 通用编辑命令: vi test.txt   #进入编辑模式 编辑完成后按ESC退出 ...

  5. 阿里云 centos7 安装mysql数据库

    环境:阿里云ECS服务器,系统为centos7.2 删除原来的数据库: centos7中默认安装了数据库MariaDB,如果直接安装MySQL的话,会直接覆盖掉这个数据库,当然也可以手动删除一下: [ ...

  6. CentOS7 安装Oracle19c数据库RPM包安装

    我前两天发了安装oracle12c的方法,但是我虽然在虚拟机试验成功了,正式服务器安装的时候发现还是不行,安装页面卡空白,也没有解决办法,所以我就放弃了界面安装找命令行安装的办法,找了一些之后发现都比 ...

  7. Centos7 安装mysql数据库

    第一步:下载数据库文件 # wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm 看到下载成功 第二步: # r ...

  8. CentOS7安装Oracle11g数据库

    1.关闭防火墙systemctl stop firewalled servicesystemctl disable firewalled service 2.关闭selinuxvim /etc/sel ...

  9. Centos7安装Oracle12c

    环境: CentOS7@VMware12,分配资源:CPU:2颗,内存:4GB,硬盘空间:30GB Oracle12C企业版64位 过程纪要: root身份安装依赖包: compat-libstdc+ ...

随机推荐

  1. Linux从头学03:如何告诉 CPU,代码段、数据段、栈段在内存中什么位置?

    作 者:道哥,10+年的嵌入式开发老兵. 公众号:[IOT物联网小镇],专注于:C/C++.Linux操作系统.应用程序设计.物联网.单片机和嵌入式开发等领域. 公众号回复[书籍],获取 Linux. ...

  2. CTF-wtc_rsa_bbq-writeup

    wtc_rsa_bbq 题目信息: 附件: cry200 解题思路: 1.观察cry200文件,发现该文件是一个二进制文件,用二进制模式查看,发现开头为50 4B 03 04,判断该文件是一个zip文 ...

  3. [刘阳Java]_MyBatis_注解基本用法_第10讲

    MyBatis注解提出,可以说是非常好简化了MyBatis配置文件的使用.下面我们简单地来告诉大家如何使用MyBatis的注解 定义接口 package com.gxa.dao; import jav ...

  4. ES6新增语法(七)——async...await

    什么是async async的意思是"异步",顾名思义就是有关异步操作的关键字,async 是 ES7 才有的,与我们之前说的Promise.Generator有很大的关联. 使用 ...

  5. P1447能量采集

    P1447能量采集 定义:(i,j)表示处于(i,j)的植物的贡献 我们发现,点(i,j)与(0,0)的连线所过整点的数目为\(\gcd(i,j)\) 发现要是想记录每个点的答案并不好算.那么怎么好算 ...

  6. netcore一键nssm发布为windows服务

    AntDeploy 是我开发一款开源一键部署工具包 发布功能支持: docker容器一键部署 docker镜像一键发布 支持iis一键部署 windows服务一键部署 linux服务一键部署 支持增量 ...

  7. navicat连接MySQL数据库出现Authentication plugin 'caching_sha2_password的问题

    1.以管理员身份运行cmd终端,cd 到mysql安装目录的bin文件夹下面 输入mysql -u root -p,回车键后输入密码登录mysql 依次输入一下三条命令: ALTER USER 'ro ...

  8. 🔥 LeetCode 热题 HOT 100(21-30)

    46. 全排列 思路:典型回溯法 class Solution { public List<List<Integer>> permute(int[] nums) { Linke ...

  9. RecyclerView跳转到指定位置的几种种方式

    Mark一下: http://blog.csdn.net/huangxiaoguo1/article/details/53706971 https://www.jianshu.com/p/3acc39 ...

  10. CVE-2018-12613总结

    1.漏洞基础介绍 1.1漏洞背景 phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此We ...