安装oracle 10g 的艰难之旅

作者:田逸 (sery@163.com)

发表于http://www.xue5.com/itedu/2740.html

在linux下安装oracle是一件令人生畏的事情,其复杂程度远远超过安装linux操作系统本身。如果能够进行成功的安装oracle,那么同时也就顺便掌握了linux一些技术。本文介绍在redhat linux 下安装oracle 10g 的方法。在这里说明一下,oracle 10g的g是grid 的缩写,意为网格,目前较为前沿的网络计算技术。

oracle 10g 对软硬件的要求都非常的高,所以要玩转的话的花不少银子。首先来看看它对硬件的要求:内存512兆(建议1g),cpu 主频2.0g以上,硬盘转速7200转以上(建议使用scsi硬盘),依此条件,我看买台服务器才行。其次是软件要求:在oracle 官方的文档里,对于x86系列支持的操作系统只有3种(radhat es/as 2.1(x86),redhat es/as 3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安装的,不过要麻烦一点点。当然oracle 10g需要更多的软件模块才能进行安装,这些软件模块我将在后面逐一说明。在本例中,使用redhat es 3(x86)作为操作平台,并且安装了xwindow。

接下来,我们检查是否符合oracle 10g 的安装要求,以表格的形式列出。首先是硬件情况。以root登录系统,并且启动x-window.如果用下表命令输出的值大于或等于建议值,请

检查项目 命令/方法 建议值

内存 #grep memtotal /proc/meminfo 512mb

交换分区 #grep swaptotal /proc/meminfo 1gb

/tmp目录空闲区 #df ╟k /tmp 400mb

硬盘空闲空间 #df -k 4gb

继续往下,检查软件需求。对redhat es 3(x86),需要如下的软件包:

• gnu gcc package, gcc-3.2.3-2 or 更高

下面的包也必须被安装:

• make-3.79

• binutils-2.11

• openmotif-2.2.2-16

• setarch-1.3-1

• compat-db-4.0.14.5

• compat-gcc-7.3-2.96.122

• compat-gcc-c++-7.3-2.96.122

• compat-libstdc++-7.3-2.96.122

• compat-libstdc++-devel-7.3-2.96.122

为了保证系统满足需求,执行下面的步骤检查安装的linux版本和安装的套件。

检查项目 命令/方法 建议值

linux 版本 #cat /etc/issue es 3

已安装的包 #rpm -q package_name 安装所需包(上表所列)

到这里我们已经全面的检查了安装oracle 10g所要求的软硬件环境,接着我们就要为安装创建组和用户。

下面的组和用户必须存在

the oinstall group (the oracle inventory group)

the dba group (the osdba group)

the oracle user (the oracle owner)

如果上面的组和用户不存在,用下面的步骤创建它们。(1)先查看这些组和用户是否存在:

#grep oinstall /etc/group

#grep dba /etc/group

(2)创建安装oracle 所需的组和用户

#groupadd oinstall

#groupadd dba

#useradd ╟g oinstall ╟g dba oracle 检查一下oracle 是否属于组 oinstall 和 dba (#id oracle) 再给oracle 设置一个用户口令 #passwd oracle 输入两次密码。

创建安装所需的目录 /u01/app/oracle (the oracle base directory), /u02/oradata (an opti default directory ),用下表的命令形式创建它.然后改变它的目录权限。

创建目录 更改权限

#mkdir ╟p /u01/app/oracle #chown ╟r oracle:oinstall /u01/app/oracle /u02/oradata

#mkdir ╟p /u02/oradata #chmod ╟r 755 /u01/app/oracle /u02/oradata

配置内核参数,下表是oracle 推荐的内核参数值,请参考。

parameter value file

semmsl

semmns

semopm

semmni 250

32000

100

128 /proc/sys/kernel/sem

shmall 2097152 /proc/sys/kernel/shmall

shmmax half the size of physical memory /proc/sys/kernel/shmmax

shmmni 4096 /proc/sys/kernel/shmmni

file-max 65536 /proc/sys/fs/file-max

ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range

确保当前的参数值大于或等于上表所列。那么怎样查看这些参数值呢?用命令 #/sbin/sysctl ╟a | grep ,例如查看semmsl,用 #/sbin/sysctl -a | grep sem,余下的与此类似。逐个察看这些参数值,如果参数值不满足要求,就需要修改它们。请完成下面这些步骤

a.用文本编辑器,创建或者编辑/etc/sysctl.c

kernel.shmall = 2097152

kernel.shmmax = 2147483648

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

b.改变当前内核参数的值,用命令 #/sbin/sysctl ╟p 来实现。

为了提高在linux系统上运行软件的性能,必须对oracle用户设置下列shell 限定。

shell limit item in limits.c hard limit

maximum number of open file descriptors nofile 65536

maximum number of processes available to a single user nproc 16384

现在创建这些限定:

1. 加入下面的行到文件/etc/security/limits.c

* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

2. 加入下面的行到文件/etc/pam.d/login ,假如它不存在的话

session required /lib/security/pam_limits.so

3.根据oracle 用户的默认shell,对默认 shell start-up文件作如下改变,如果是bourne, bash, or korn shell,修改环境变量/etc/profile文件如下:

if [ $user = "oracle" ]; then

if [ $shell = "/bin/ksh" ]; then

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

如果是c shell,则环境变量文件 /etc/csh.login的修改值如下:

if ( $user == "oracle" ) then

limit maxproc 16384

limit descriptors 65536

endif

接下来挂接光盘,#mount /dev/cdrom /mnt/cdrom 。

以oracle 用户名登录系统,配置oracle 用户的环境。以oracle 帐号用安装器来安装oracle,但是开始运行安装器之前,还得设定oracle用户的环境变量,因此必须:

● 设置shell startup文件的umask 为022

● 设置display, oracle_base, and oracle_sid 的环境变量。下面这些步骤是对这些环境变量进行设置的方法:

1、 开启一个终端会话

2、 确认xwindow 能正常显示。#xhost +

3、 改变用户为oracle. $ su ╟ oracle

4、 检查oracle用户的默认shell. $echo $shell

5、 用文本编辑器修改oracle用户的环境变量

●bash shell on redhat

$vi .bash_profile

●c shell

%vi .login

6、 把下面的行插入上面编辑的文件中

umask 022

7、 保存文件并退出

8、 运行shell开始脚本:

●bash shell on red hat $ . ./.profile

●c shell % source ./.login

9、设置环境变量

●bash shell

$ oracle_base=/u01/app/oracle

$ oracle_sid=sales

$ export oracle_base oracle_sid

●c shell

% setenv oracle_base /u01/app/oracle

% setenv oracle_sid sales

10、确认oracle_home and tns_admin 的环境变量不被用户设置

●bash shell

$ unset oracle_home

$ unset tns_admin

●c shell

% unsetenv oracle_home

% unsetenv tns_admin

11、再检验一下上面设定的环境变量是否正确。

$ umask

$ env | more

哎呀!终于算是完成准备工作了,喝口水,伸伸懒腰。进入安装器(runinstaller)所在的目录 $ cd /tmp 运行安装 $ /mnt/cdrom/runinstaller ,依照提示完成整个安装。

2005-01-25

于北京

oracle好难装,安装oracle 10g 的艰难之旅相关推荐

  1. aix 6.1 安装oracle,AIX 6.1 安装 oracle 10G

    第一章    AIX系统调整查询系统版本: # oslevel -r 6100-07 2:查询系统是否64位: # bootinfo -K 64 3:查询物理内存大小(2G): # lsattr -E ...

  2. c 不安装oracle,安装oracle 10g 的艰难之旅

    安装oracle 10g 的艰难之旅 作者:田逸 (sery@163.com) 发表于http://www.xue5.com/itedu/2740.html 在linux下安装oracle是一件令人生 ...

  3. 使用 VMware Server 在 Oracle Enterprise Linux 上安装 Oracle RAC 10g

    DBA:Linux   下载 VMware Server 1.0.1 Oracle Enterprise Linux 4,Kernel 2.6.9-42.0.0.0.1.ELsmp 适用于 Linux ...

  4. RAC分解步骤之一,在oracle linux 4u4上安装oracle 10.2.0.1.0操作日志

    练习oracle的rac组建过程,第一步,先练习4u4上安装oracle 10.2.0.1.0.直接安装rac,有些难度.从简单的做起.总RAC步骤,参照小布老师的RAC组建. 1. 启动vc,登陆v ...

  5. linux安装oracle 操作系统内核参数 aio,Oracle Study之案例--安装Oracle内核参数配置

    Oracle Study之案例--安装Oracle内核参数配置 在Linux系统下,安装Oracle之前,除了检查操作系统的硬件和软件是否满足安装需要之外,一个重点就是修改内核参数,其中最主要的是和内 ...

  6. Oracle Linux 6下安装Oracle 12C实战

    Oracle Linux 6下安装Oracle 12C实战,经过N次安装尝试吐血总结,希望对大家有所帮助,同时做下记录备忘: 总结:安装前的准备工作是关键!!!Check and recheck! 参 ...

  7. oracle 12c ins 13001,安装Oracle 12c Release 2报错:INS-13001

    环境: Oracle Linux 6.8 安装Oracle 12.2.0.1版本时,第一步就跳出这个报错界面: [INS-13001]Oracle Database is not supported ...

  8. doc如何装oracle,在Windows7下安装Oracle.doc

    在Windows7下安装Oracle.doc 1. 解决在Windows7下Oracle10G无法安装问题文章分类JavaEye 安装完Windows 7后,接着安装Oracle 10g出现问题. 使 ...

  9. 指南:在 linux 下的 Oracle Database 11g 中安装 Oracle Enterprise Manager 10g Grid Control 第 5 版

    原文地址:http://www.oracle.com/technetwork/cn/articles/revitt-oem-096363-zhs.html 作者:Mike Revitt 逐步详解如何针 ...

最新文章

  1. 【云炬大学生创业基础笔记】第1章第3节 什么是创业的讨论
  2. php如何生成公钥私钥,php如何生成公钥私钥(代码)
  3. 穿越迷宫c语言程序设计教程课后答案,实验二 迷宫实验.doc
  4. dataframe填充到指定的行数
  5. cad2020安装1603错误_安装Autodesk 2020以及更高软件软件提示1603错误
  6. mysql上机实验报告3_SQL入门随笔(上机实验报告)
  7. 【人生】不管你挣多少, 钱永远是问题
  8. B站,N站,汤站,爬虫下载资源总结与技巧(一)
  9. [USACO12OPEN]书架Bookshelf
  10. (转)Locale 详解
  11. 专科学历 工作机会少的可怜?这个简单方法帮几千人提升3倍工作机会
  12. 事业单位计算机技术岗工资,事业单位待遇,是管理岗好还是技术岗好?
  13. 计算机论文答辩2分钟演讲稿,关于毕业论文答辩演讲稿9篇
  14. C语言中char和char *a[]和char (*a)[]
  15. python 批处理合并表格_高效办公4——Python批量合并Excel指定列相同内容单元格...
  16. 格林酒店2020年第三季度营收为2.67亿元,恢复至同期91.4%
  17. 十三个世界著名的定律
  18. 【Pytorch实战4】基于CIFAR10数据集训练一个分类器
  19. linux如何启动网络配置文件,linux系统的网络配置教程 Ubuntu系统网络设置方法网络配置linux及Ubuntu通过修改配置文件进行网络配置...
  20. 成本优化之使用P2P的方案的需要了解的本地SDK的背后的原理

热门文章

  1. spring框架学习笔记(一)
  2. Intent跳转到系统应用中的拨号界面、联系人界面、短信界面及其他
  3. JavaScript MVC框架和语言总结[infoq]
  4. 为js和css文件自动添加版本号
  5. Office2013插件开发Outlook篇(1)-- 第一个office2013插件
  6. GeneXus 图片的创建与删除1
  7. 深入浅出 Javascript API(五)--Query Find 查询
  8. C语言程序设计之标准库快速排序qsort函数用法示例
  9. 计算机视觉经典论文整理
  10. 生活在AI的世界是种什么体验?