想用linux虚拟机装一个oracle,中间遇到的坑太多了,最后总算是安装好了,一定要写个全面的教程出来。

话不多说

通用编辑命令:

vi test.txt   #进入编辑模式

编辑完成后按ESC退出编辑模式

:wq 回车 保存编辑的文件

1.设置linux开机自动打开网络连接,不打开网络连接SecureCRT连接不上。

cd /etc/sysconfig/network-scripts/   #进入网络脚本目录

vi ifcfg-ens33     #编辑文件

最后一行 ONBOOT=no 改为 “yes”保存并退出。

2.卸载CentOS7自带jdk1.8,安装自己的jdk并设置环境变量

rpm -qa |grep jdk   #查看jdk安装目录(自己电脑已经卸载了jdk,借图。。。)

#使用remove命令移除所有jdk相关软件

yum -y remove java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64   
yum -y remove java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64
yum -y remove java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.5.el7.x86_64
yum -y remove java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64
yum -y remove copy-jdk-configs-2.2-3.el7.noarch

可输入java命令判断是否卸载完成

vi /etc/profile  #添加自己的jdk目录环境变量

添加以下内容:

export JAVA_HOME=/usr/local/soft/java/jdk1.7 #注意这里是自己的jdk解压目录
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

保存退出
source /etc/profile   #使配置生效

可输入java、javac、java -version命令判断新配置的java环境是否正常

3.创建运行oracle数据库的系统用户和用户组
groupadd oinstall
groupadd dba
useradd -g oinstall -g dba -m oracle
passwd oracle   #该命令会让你两次确认密码,密码过于简单不符合规则会要求重新输入

4.创建oracle数据库安装目录,并将目录赋权给oracle用户

mkdir -p /opt/oracle
mkdir -p /opt/oracle/oraInventory
mkdir -p /opt/oracle/database
chown -R oracle:oinstall /opt/oracle
chown -R oracle:oinstall /opt/oracle/oraInventory
chown -R oracle:oinstall /opt/oracle/database

注意:最好选择opt目录下,直接选择home目录下大多安装时提示空间不足

5.修改OS系统标识

vi /etc/redhat-release

将原系统标识改为: redhat-7

6.安装oracle数据库所需要的软件包

yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers

7.关闭防火墙(永久性的)
systemctl disable firewalld.service

8.关闭selinux ,需要重启生效,可以等接下来几个步骤做完再重启。

vi /etc/selinux/config

9.修改内核参数
vi /etc/sysctl.conf

添加如下内容:

net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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  #使配置生效

10.对oracle用户设置限制,提高软件运行性能
vi /etc/security/limits.conf
添加:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

11.配置用户环境变量
vi /opt/oracle/.bash_profile
添加:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

source /home/oracle/.bash_profile  #使配置生效

12.将oracle数据库两个压缩文件包放到 /opt/oracle/database目录下并解压,操作不赘述。

解压命令:unzip 文件名

解压后对目录授权:chown -R oracle:oinstall /opt/oracle/database/database/

13.重启linux使用oracle用户登录

14.最好使用linux界面命令进入/opt/oracle/database/database目录下,执行命令:

./runInstaller -jreLoc /usr/local/soft/java/jdk1.7.0_80/

注意:这里指定了oracle安装时jdk的安装路径,否则oracle启动界面next时会卡在某个界面不会动,中间一条竖线!!!这个问题困扰了我好几天!!!

静心等待几秒钟,出现oracle安装界面,恭喜你,安装可以正常进行了!

15.swap空间不足解决办法

执行命令:

dd if=/dev/zero of=/opt/swap bs=1024 count=2048000
mkswap /opt/swap
swapon /opt/swap
free -m #查看内存状态

接下来checkagain

ok,swap不足的问题解决了,勾选Ignore All继续next !

oracle的安装比较漫长,耐心等待即可。

安装至68%的时候会弹出问题,点击continue即可

安装至95%的时候会提示配置数据库管理员账户的密码,并且需要执行两条命令,不要关闭安装界面,配置好密码后直接去目录下执行即可。

借图。。。

安装完成后

[oracle@localhost ~]$ lsnrctl start  #开启监听服务

[oracle@localhost ~]$ sqlplus / as sysdba  #登入

SQL> shutdown immediate   #立即关闭数据库服务(一般是关闭状态)
SQL> startup   #开启数据库服务(重要,必输)

SQL> exit      #退出

写的不好大家多多担待,基本上我遇到的问题按照这种步骤都解决了,linux安装oracle确实是个难题,不同linux版本安装都会遇到各种坑,大家有什么不清楚的可以留言提问,我知道的尽力帮你解决。

vmware虚拟机CentOS7安装oracle数据库的更多相关文章

  1. Centos7 安装oracle数据库

    参考的内容: http://docs.oracle.com/cd/E11882_01/install.112/e24325/toc.htm#CHDCBCJF http://www.cnblogs.co ...

  2. Centos7.6安装Oracle数据库

    一.安装Oracle前准备 1.创建运行oracle数据库的系统用户和用户组 [humf@localhost ~]$ su root #切换到root Password: [root@localhos ...

  3. VMware虚拟机下安装CentOS7.0超详细图文教程

    1.本文说明: 官方的第一个文本档案.也就是0_README.txt,大概意思是这样(渣翻译,但是大概意思还是有的). CentOS-7.0-1406-x86_64-DVD.iso:这个镜像(DVD ...

  4. CentOS7安装Oracle 11gR2 图文详解

    注:Oracle11gR2 X64安装 一.环境准备 安装包: 1.VMware-workstation-full-11.1.0-2496824.exe 2.CentOS-7-x86_64-DVD-1 ...

  5. Linux 下安装oracle数据库

    原文出处       http://www.linuxidc.com/Linux/2015-02/113222.html 需要安装Oracle DataGuard,所以先要安装单台Oracle11g, ...

  6. CentOS7安装Oracle 11gR2 安装

    概述 Oracle 在Linux和window上的安装不太一样,公司又是Linux系统上的Oracle,实在没辙,研究下Linux下Oracle的使用,oracle默认不支持CentOS系统安装,所以 ...

  7. CentOS7安装mongoDB数据库

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

  8. 使用Docker安装Oracle数据库

    在很多时候,我们需要在本地安装Oracle数据库,但是整个安装的过程时间非常长而且安装文件大,那么有不有更好的办法来安装Oracle数据库既能减少安装的时间而且还能够快速进行部署呢?答案就是使用Doc ...

  9. Linux系统中安装Oracle数据库

    安装前的准备 三个包:winx64_12201_database.zip(oracle数据库) window_7(安装在虚拟机中的window7纯净版系统) client.zip(oracle的监听器 ...

随机推荐

  1. js 中bind

    function fn(a){ this.innerHTML = a; console.log(this); } //fn("hello"); span1.onclick =fun ...

  2. 记录Yii2代码调试中出现的两个问题(截图展示)

    1.代码会中断执行,不提示错误信息,是由于substr函数第一个参数为数组造成的 2. 谷歌浏览器调试异步调用接口时出现的错误,需在接口返回处进行断点调试 这两个错误比较隐蔽,调试代码时必须认真仔细

  3. AngularJS1.X学习笔记12-Ajax

    说到Ajax,你一定是思绪万千,想到XMLHttpRequest,$.ajax(),跨域,异步之类的.本文将探讨一下AngularJS的Ajax. 一.一个简单的例子 <!DOCTYPE htm ...

  4. WebApi 接口返回值类型详解 ( 转 )

    使用过Webapi的园友应该都知道,Webapi的接口返回值主要有四种类型 void无返回值 IHttpActionResult HttpResponseMessage 自定义类型 此篇就围绕这四块分 ...

  5. Spring Security 入门(1-5)Spring Security - 匿名认证

    匿名认证 对于匿名访问的用户,Spring Security 支持为其建立一个匿名的 AnonymousAuthenticationToken 存放在 SecurityContextHolder 中, ...

  6. gradle入门(1-5)创建并运行Web应用

    一.使用Gretty运行Web应用 Gretty支持Jetty和Tomcat,它不会被Gradle缺少SLF4J绑定所导致的问题所困扰. 1.配置文件build.gradle buildscript ...

  7. float和position

    float float是欺骗父元素,让其父元素误以为其高度塌陷了,但float元素本身仍处于文档流中,文字会环绕着float元素,不会被遮蔽. absolute 但absolute其实已经不能算是欺骗 ...

  8. Java基础语法<五> 大数值BigInteger BigDecimal

    笔记整理 来源于<Java核心技术卷 I > <Java编程思想> 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有平有用的类:BigIn ...

  9. HTML的各种基本标签

      一 .head中的各种标签                1.       <!DOCTYPE html><html>文档类型声明   声明当前文件是一个HTML5文件文档 ...

  10. Java入门2

    一.Arrays工具类 1.数组地址的比较 int [] arr1={1,2,3,4,5}; int [] arr2={1,2,3,4,5}; System.out.println(arr1==arr ...