linux下安装oracle 10g

来源:互联网 发布:交流发电机原理知乎 编辑:程序博客网 时间:2024/04/27 22:15
 

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

Oracle 10g 对软硬件的要求都非常的高,所以要玩转的话的花不少银子。首先来看看它对硬件的要求:内存512兆(建议1G),cpu主频2.0G以上,硬盘转速7200转以上(建议使用scsi硬盘),依此条件,我看买台服务器才行。其次是软件要求:在oracle官方的文档里,对于x86系列支持的操作系统只有3种(radhat ES/AS 2.1(x86),redhat ES/AS3(x86),unitedlinux1.0(x86) ),如果只有redhat 9也是可以安装的,不过要麻烦一点点。当然oracle10g需要更多的软件模块才能进行安装,这些软件模块我将在后面逐一说明。在本例中,使用RedHat ES3(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 optional 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 | grepsem,余下的与此类似。逐个察看这些参数值,如果参数值不满足要求,就需要修改它们。请完成下面这些步骤

a.用文本编辑器,创建或者编辑/etc/sysctl.conf文件,添加或修改如下的行

kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000

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

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

Shell Limit Item in limits.conf Hard LimitMaximum number of open file descriptors nofile 65536 Maximum number of processes available to a single user nproc 16384

现在创建这些限定:

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

* 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" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi如果是c shell,则环境变量文件 /etc/csh.login的修改值如下:if ( $USER == "oracle" ) thenlimit maxproc 16384limit 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 ,依照提示完成整个安装。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 大专学费没交学校开始查了怎么办 如果申请留学的本科成绩不够怎么办 硕士读了三年无法毕业怎么办啊 孩子在美国读研读不下去怎么办? 在地割草中过失死亡法律^怎么办 高中毕业申请国外大学没录取怎么办 英国研究生老师没给写推荐信怎么办 申请悉尼大学博士奖学金被拒怎么办 硕士延迟毕业但被博士录取怎么办 考完初级职称还是不会做账怎么办 美国留学生在中国办日本签证怎么办 留学雅思过了gpa低怎么办澳洲 护士电子化注册用户名忘记了怎么办 护士电子化注册证书编码错误怎么办 澳洲预科上半学期成绩不达标怎么办 美国大学绩点不够怎么办学习证明 研一想换导师导师不答应怎么办 日本留学在留下来不想去了怎么办 加拿大工签3年到期了怎么办 鞋子穿久了会有臭味怎么办 考研忘了自己填写的通讯地址怎么办 基础教育教师培训网注册错了怎么办 11个月宝宝便秘大便有血怎么办 两岁宝宝两天没拉粑粑了怎么办 两岁宝宝两天没拉大便怎么办 两岁宝宝便秘两天没拉怎么办 昨天带孩子上早教课一直哭怎么办 网页账号注册无法获取验证码怎么办 我总是为一些事情而烦恼怎么办 手机键盘打出的字是繁体字怎么办 阴阳师协助任务对方接了不做怎么办 wow牧师选错了圣物怎么办 淘宝有几个订单被管控了怎么办 埋线双眼皮一个宽一个窄怎么办 把维D和维C一起吃了怎么办 微信出现当前登录环境异常该怎么办 去麦加朝觐人要出现死亡怎么办 炉石传说偶数骑削弱后怎么办 出于安全和性能方面的原因怎么办 怀孕后不知道拍过好几次牙片怎么办 百度云种子含有非法离线内容怎么办