1、写在安装前的话

可能有很多的菜鸟十分害怕大型软件的安装,因为安装过程中的一些错误很让他们头疼。下面我就写一个教程,希望能对大家有帮助,在安装ORACLE之前给大家一点点的意见:

(1)尽量要安装Linux版本的Oracle

  1.   Oracle对Linux更加的又亲和力,更兼容
  2.   Windows把自己的一些东西封装的太厉害了,以至于我们出现错误的时候很难修改
  3.   安装在Windows下会影响自己日常电脑的速度,安装在Linux虚拟机下面,成了一个绿色免安装版的Oracle+LinuxOS

(2)安装的时候,Oracle的联机文档是必不可少的

2、安装前的准备工具

CentOS-6.5(CentOS是跟红帽的版本同步的,并且两者几乎没有差别,只不过一个收费一个免费)

Oracle-11g-Release1和对应的联机文档

VMware-10.0(我用的是这个版本的Linux版的)

注意:

说一下联机文档的下载,别找错了。Oracle官网->Download->Oracle Database->Documentation->Oracle-11g-Release1-B28359-01 zip

也许在你看到这个博客的时候,Oracle和CentOS都已经升级了,并且我现在用的版本已经停止下载了,真的没关系。你只要把对应的Oracle和它的联机文档下载下来就OK了,同时知道CentOS和Red Hat的版本是同步的。

3、 安装Oracle数据库软件

3.1、定位联机文档

我是在Linux上安装,当然找Linux的安装文档(用IE打开,Chrome显示有问题),下面截图个看看:

进去之后,联机文档先是说一下what's new、overview的说明性的东西,了解一下直接看【Preinstallation Requirement】,再然后就能看到以root用户登录,和相应的硬件、软件的要求。硬件上主要的就是内存的需求,基本要1G的内存大小。主要看一下软件的要求:

操作系统需求:

我用的是CentOS6.5,对应的Red Hat6.5的版本,我觉得应该没有问题。因为我实在懒得去找CentOS4或者CentOS5了。

软件包的需求:

Red Hat4和Red Hat5的要求包都一样,所以我觉得Red Hat6的检查包应该也是这些。

利用下面指令查看对应的包是否在CentOS Linux上安装

rpm -qa | grep xxx //xxx是软件的名称

  把上面个列表中的所有软件检查一遍,找到没有安装的软件包,然后去找这些软件包。去哪里找这些没有安装的软件包?

去你的CentOS.iso安装包中找,因为CentOS觉得你可能用不到这些软件包,就没有帮你安装,但是万一你真的用到了呢,于是他就给你放到了一个文件夹里,你真的用到了就自己安装就好了,这个目录就是:

CentOS-6.5-i386-bin-DVD1.iso\Packages

  然后把这些软件包放到Linux虚拟机下,用下面指令安装:

rpm -ivh *.rpm

这一步的软件包一定要仔细的检查,如果遗漏了什么安装包,你的最后的Oracle的安装一定会因为它而失败的。

4、建立Oracle用户

我不希望每次登陆Oracle都使用CentOS的root用户,因为这样是不安全的,拥有太多权限,所以要建立一个用户,然后赋予这个用户合适的权限。既然有了用户,那么这个用户就的有他自己的主组、辅助组和他自己的home目录(也就是默认的根目录)。

groupadd oinstall	//建立一个群组
groupadd dba //建立一个群组 cd /
mkdir -p /u01/oracle //在根目录下建立文件夹,计划把软件安装在这里 useradd -g oinstall -G dba -d /u01/oracle oracle //增加一个oracle用户,主组是oinstall,辅助组是dba,缺省的根目录是/u01/oracle
passwd oracle //为新增的用户设密码

  这时我们设置u01为用户oracle的缺省根目录,但是这个文件夹是在root用户下创建的,所以它现在是root群主的root用户的成员:

利用下面的命令修改u01的群主和所属用户:

chown -R oracle:oinstall u01

  

5、配置kernel的parameters

5.1、把下面的参数配置到/etc/sysctl.conf这个文件中去:

fs.file-max = 6815744
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

  5.2把下面的参数配置到/etc/security/limits.conf这个文件中去:

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

  5.3设置Oracle的环境变量

Linix新增加一个用户后,可以指定一个缺省的根目录。然后会把一些文件拷贝到这个根目录中,其中的一个文件.bash_profile就是用来配置该用户的环境变量的。每个用户登录后,都会自动的执行这个.bash_profile文件,使他自己的环境变量的配置生效。所以为oracle用户配置Oracle软件的环境变量:

ORACLE_BASE=/u01
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=stemon //我自己的名字,你可以随便的设置
PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH

  然后exit退出oracle用户,这时再次进入root用户了,在用指令su - oracle指令切换到oracle用户。这时环境变量就已经生效了。验证一下:

env | grep ORACLE

  就能看到之前的带有ORACLE的环境变量的参数配置。

6、安装Oracle软件具体步骤

因为oracle的安装文件是.zip格式的,所以要到它所在的目录中使用unzip指令,将其解压缩。解压以后就会多出一个文件夹,名字是database。然后运行文件夹中的runinstaller。然后用mv把database文件夹移动到/u01这个目录中,当然这一步不是必须的,这里只是把安装文件放到一个我们自己新建的文件夹中,方便以后查找、管理。

这样的操作以后基本上就是这个样子了:

我们计划把oracle软件安装在oracle这个目录中,并且看到oracle这个文件夹的群主和主属都是合理的,但是安装程序的群组和主属都还是root,为了防止在安装的过程中因为权限问题出错,修改一些安装程序的群组和主属。

chown -R oracle:oinstall database

  然后进入到database这个文件夹中就能看到runinstaller这个程序安装接口,运行它就好了。这个接口是图形界面的,所以必须用startx进入图形界面。

进入到了图像安装界面以后->高级安装->弹出的错误,选择OK->然后就是设置inventory的目录,把它重新设置为/u01/inventory中->Oracle软件对你的系统的所有的配置做一次检查。

注意:

在全面检查的这个阶段,它会给出正确的值,同时显示出你配置的错误的值。如果Failed,那就到相应的文件中重新配置,如果你不知道这个参数在哪个文件中配置的,那就根据这个参数的名称,到联机文档中查找。然后重新配置这个参数,并使之生效。(有时候联机文档中的值是错误的,依安装界面给出的值为标准)

就这样修改,直到所有的错误都清除,在界面上显示0 requirements to be verified。

然后继续安装,在这个过程中,会让你选择是否创建数据库,这里选择不创建,只安装软件。数据库的创建我们以后用dbca。

然后经过一段时间的install,就会让你以root用户执行两个脚本:

u01/oraInventory/orainstRoot.sh
u01/oracle/root.sh

  到此,整个oracle数据库软件都已经安装完了,但是现在还没有数据库,是没有办法存储数据的。

利用dbca创建数据库

在创建数据库之前,首先要配置一下oracle的listener,用来监听远程的连接。

执行命令netca就能看到配置listener的图形界面。一路的确定,选择端口号1521直到最后就好了。最后可以用ps -ef | grep Lis验证一下。

然后运行dbca建立数据库,一直next就好了,但是注意在选择字符集的时候,要选择UnicodeAL32UTF8,官方推荐的。

http://www.w3cschool.cc/mysql/mysql-tutorial.html

http://www.w3cschool.cc/git/git-install-setup.html

http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html#d22

http://www.w3cschool.cc/

http://www.w3cschool.cc/mysql/mysql-administration.html

http://www.w3school.com.cn/css/index.asp

http://www.w3school.com.cn/example/csse_examples.asp

http://www.w3school.com.cn/css/css_intro.asp

Oracle数据库的安装详解的更多相关文章

  1. ASP.NET连接Oracle数据库的步骤详解(转)

    ASP.NET连接Oracle数据库的步骤详解   本文我们主要介绍了ASP.NET连接Oracle数据库的步骤及每个步骤需要进行的设置,希望能够对您有所帮助.   在用ASP.NET开发应用程序时, ...

  2. PLSQL连接Oracle数据库问题及详解

    一.Oracle数据库安装步骤参考:https://jingyan.baidu.com/article/363872eccfb9266e4aa16f5d.html 二.Oracle客户端安装:http ...

  3. MySQL数据库图文安装详解及相关问题

    (尊重劳动成果,转载请注明出处: http://blog.csdn.net/qq_25827845/article/details/53366444冷血之心的博客) 首先说明:安装目录中不能有中文和空 ...

  4. Oracle Database 12c Release 2安装详解

    第1章 Oracle Database 12c Release 2安装详解 1.1 下载方法 oracle官网https://www.oracle.com 1)打开官方网站,找到下载连接 2)选择更多 ...

  5. MYSQL之数据库初识、安装详解、sql语句基本操作

    目录 MYSQL之数据库初识及安装详解 1.什么是数据库? 1.什么是数据?(data) 2.什么是数据库?(databases,简称DB) 2.为什要用数据库? 3.什么是数据库管理系统?(Data ...

  6. oracle中imp命令详解 .

    转自http://www.cnblogs.com/songdavid/articles/2435439.html oracle中imp命令详解 Oracle的导入实用程序(Import utility ...

  7. SqlServer数据库性能优化详解

    数据库性能优化详解 性能调节的目的是通过将网络流通.磁盘 I/O 和 CPU 时间减到最小,使每个查询的响应时间最短并最大限度地提高整个数据库服务器的吞吐量.为达到此目的,需要了解应用程序的需求和数据 ...

  8. 数据库开发-pymysql详解

    数据库开发-pymysql详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Python支持的MySQL驱动 1>.什么是驱动 与MySQL通信就是典型的CS模式.Se ...

  9. Oracle的exp/imp详解

    原文地址:Oracle的exp/imp详解 作者:jxlazzw 备份概述 逻辑备份:备份可分为两类 ,物理备份和逻辑备份 物理备份:该方法实现数据库的完整恢复,但需要极大的外部存储设备,例如磁带库, ...

随机推荐

  1. python基础学习笔记1

    一.字符串: 1.不可变性.分片赋值对于字符串是不合法的. 2.字符串格式化 % eg: print 'The price is: %d' % 30 print 'The price is: %.2f ...

  2. delphi datasnap 心跳包

    为了能让我们的服务程序更加稳定,有些细节问题必须解决.就如上一讲中提到的客户端拔掉网线,造成服务器上TCP变成死连接,如果死连接数量过多,对服务器能长期稳定运行是一个巨大的威胁.另外,经过测试,如果服 ...

  3. 基于视觉的Web页面分页算法VIPS的实现源代码下载

    基于视觉的Web页面分页算法VIPS的实现源代码下载 - tingya的专栏 - 博客频道 - CSDN.NET 基于视觉的Web页面分页算法VIPS的实现源代码下载 分类: 技术杂烩 2006-04 ...

  4. 我的Hook学习笔记

    关于Hook 一.基本概念: 钩子(Hook),是Windows消息处理机制的一个平台,应用程序能够在上面设置子程以监视指定窗体的某种消息,并且所监视的窗体能够是其它进程所创建的.当消息到达后,在目标 ...

  5. SQL Server索引进阶:第九级,读懂执行计划

    原文地址: Stairway to SQL Server Indexes: Level 9,Reading Query Plans 本文是SQL Server索引进阶系列(Stairway to SQ ...

  6. iOS中UIWebView使用JS交互 - 机智的新手

    iOS中偶尔也会用到webview来显示一些内容,比如新闻,或者一段介绍.但是用的不多,现在来教大家怎么使用js跟webview进行交互. 这里就拿点击图片获取图片路径为例: 1.测试页面html & ...

  7. Exponentiation

    Description Problems involving the computation of exact values of very large magnitude and precision ...

  8. What I Have Lived For(我为什么而活着-罗素)

    What I Have Lived For by Bertrand Russell Three passions, simple but overwhelmingly strong, have gov ...

  9. this function has none of deterministic, no sql,or reads sql data in its declaration and binary logging is enabled

      原址:http://blog.chinaunix.net/uid-20639775-id-3031821.html   This function has none of DETERMINISTI ...

  10. FASTCGI程序,做个备份,以后用

    11FastCGI 用来作为 Web 服务器的设计方案,有着很多优点.要搭建这样一个服务,有一个最简单的办法来搭建,可以使用 Apache 以及 mod_fcgid 模块来实现. 鉴于网上有关 Fas ...