c 不安装oracle,安装oracle 10g 的艰难之旅
安装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
于北京
©著作权归作者所有:来自51CTO博客作者sery的原创作品,如需转载,请注明出处,否则将追究法律责任
Oracle职场休闲linux企业应用
c 不安装oracle,安装oracle 10g 的艰难之旅相关推荐
- oracle好难装,安装oracle 10g 的艰难之旅
安装oracle 10g 的艰难之旅 作者:田逸 (sery@163.com) 发表于http://www.xue5.com/itedu/2740.html 在linux下安装oracle是一件令人生 ...
- 安装64位Oracle 10g超详细教程
安装64位Oracle 10g超详细教程 1. 安装准备阶段 1.1 安装Oracle环境 经过上一篇博文的过程,已经完成了对Linux系统的安装,本例使用X-Manager来实现与Linux系统的连 ...
- red hat linux 安装oracle10g vm,oracle 10g 在 RED HAT ENTERPRISE LINUX 5下的安装
oracle 10g 在 RED HAT ENTERPRISE LINUX 5下的安装 ORACLE 10G在LINUX的安装: 先上来两张图: DBA是努力的方向,ORACLE DBA包罗万象,连L ...
- Oracle 9i和10g安装后的基本环境与服务
服务启动的是后台进程,这类似 于Unix中的守护进程.当Oracle数据库服务启动时,系统中没有典型的Oracle进程运行.相反,该服务进程等待来自SQL*Plus的最初连 接,这引起一个前台进程启动 ...
- RHEL 4 安装单实例oracle 10g
2013年新年第一篇,新的起点! 经过一段时间的学习与接触,来总结一下RHEL 4 UPDATE 7 安装oracle 10g r2 单实例过程及注意事项,以备以后工作参考使用! 1.linux 系统 ...
- server2016安装oracle10,[安装] win2012,2016 能安装oracle 10g吗
可以,不过ORACLE 10G必须是oracle发行的针对win7,vistata,win8 的10.2.0.4的安装包才可以. 具体如下: 从oracle网站上下载 10204_vista_w2k8 ...
- oracle xe 安装配置,(转)oracle 10g xe 我的安装实践及简单配置过程
(转)oracle 10g xe 我的安装实践及简单配置过程 我的安装过程 1.编辑 /etc/apt/sources.list : sudo cp /etc/apt/sources.list /et ...
- 指南:在 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 逐步详解如何针 ...
- EBS 开发套件 Oracle Developer Suite 10g 安装
EBS 开发套件 Oracle Developer Suite 10g 安装 1 环境信息 2 下载文件 3 开始安装 1 环境信息 WIN10 64位 2 下载文件 下载地址:http://www. ...
最新文章
- iOS 解决app退出后台应用重新启动的问题
- java程序包不存在_第一章 Java语言简介
- hbuilderx简单网页代码_Python爬取网页数据
- 使用$.ajax向服务器发送请求
- 通过 pxe(网络安装)完成centos 系统的网络安装
- 2016大数据发展7大趋势
- pip安装requirement.txt
- Spring : Spring @Transactional-事物回滚
- Spring和ThreadLocal
- kodi 媒体库插件_如何使用Kodi管理媒体
- VHDL实现数码管的动态扫描(可以连接其他的模块)
- 双绞线为什么要绞起来
- PHP使用PHPMailer实现发送qq邮箱
- Android屏幕密度计算公式
- are in unnamed module of loader ‘app‘)“ }
- 知识图谱算法岗位招聘要求总结
- 失去黄金时代的趣店,要走多久才能成功转型?
- Caffe 代码解读之全连接层concat layer
- 简单的网页制作期末作业——HTML+CSS+JavaScript小礼品购物商城网站
- excel中整列填充数据方法
热门文章
- eclipse配置glassfish、将一个WEB项目部署到glassfigh
- 聚焦IT系统稳定性保障服务 PerfMa笨马网络完成亿元级B轮融资
- 未来已来!分布式数据库的“星辰大海”绝不仅限于替换!
- 1024程序员节开源技术英雄会 参会“英雄榜”发榜
- 5行Python代码实现刷爆全网的动态条形图!
- 西门子大中华区总裁兼CEO赫尔曼:智能自主制造将重塑工业格局!
- 6 年成为 AIoT 独角兽,这位 17 年连续创业者是如何做到的?
- 华为否认鸿蒙为噱头;谷歌公布 6 大 iOS 漏洞;GitLab 又发安全补丁 | 极客头条...
- 百度只能靠 AI 续命了?
- 首批 5G 手机到位;来电显示暗藏黑色利益链;印度下架抖音国际版 | 极客头条...