Chinaunix首页 | 论坛 | 博客
  • 博客访问: 308175
  • 博文数量: 90
  • 博客积分: 2850
  • 博客等级: 少校
  • 技术积分: 951
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-02 14:01
文章分类

全部博文(90)

文章存档

2015年(1)

2014年(1)

2013年(2)

2011年(3)

2010年(83)

分类: LINUX

2010-09-02 15:45:38

RedHat 5下安装Oracle 10g详解 


必要的硬件 信息检查:


物理内存:512M:

            # grep MemTotal /proc/meminfo 

交换空间:1.0 GB或者2倍内存大小:

           # grep SwapTotal /proc/meminfo


检查完如上各项之后应该修改核心参数.执行如下命令:

#vi /etc/sysctl.conf

#注释:

#表示使用root用户操作,$表示使用oracle 用户进行操作.提示符后面的蓝色部分表示需要输入的命令,以下同.

在该文件末尾加入如下内容:

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

编辑完之后,保存,执行 # /sbin/sysctl -p 命令操作来使我们所做的变更生效.

:上面kernel.shmmax/kernel.sem等是典型的核心参数配置.您可能需要根据您的实际环境进行适当的变动.

关于这些核心参数的说明在Oracle的官方网站中有很详细的说明.

然后,应该检查一下上面的操作是否正确:

# /sbin/sysctl -a | grep sem

# /sbin/sysctl -a | grep shm

# /sbin/sysctl -a | grep file-max

# /sbin/sysctl -a | grep ip_local_port_range

 

Oracle用户设定Shell的限制

一般来说,出于性能上的考虑,还需要需要进行如下的设定,以便改进Oracle用户的有关 nofile(可打开的文件描述符的最大数)nproc(单个用户可用的最大进程数量)

# vi /etc/security/limits.conf

添加如下的行

 

*               soft    nproc   2047

*               hard    nproc   16384

*               soft    nofile  1024

*               hard    nofile  65536

添加如下的行到/etc/pam.d/login 文件:

session    required     /lib/security/pam_limits.so

编辑 /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

之后,执行$ unlimit 验证一下.

一、 相关软件

环境:RedHat Enterprise Server 5

jdk-1_5_0_15-linux-i586-rpm.bin

oracle10.2.0.1-linux32.zip

其他安装包见文中

------------------------------------------------------------

RedHat Enterprise Server 5

红帽发行的Linux 服务器版最新版,Linux 2.6.18内核

下载地址:

[url]ftp://60.232.126.152/os/linux/redhat/rhel5/rhel-5-server-i386-disc1.iso[/url]

[url]ftp://60.232.126.152/os/linux/redhat/rhel5/rhel-5-server-i386-disc2.iso[/url]

[url]ftp://60.232.126.152/os/linux/redhat/rhel5/rhel-5-server-i386-disc3.iso[/url]

[url]ftp://60.232.126.152/os/linux/redhat/rhel5/rhel-5-server-i386-disc4.iso[/url]

[url]ftp://60.232.126.152/os/linux/redhat/rhel5/rhel-5-server-i386-disc5.iso[/url]

更多介绍和下载地址可以查看

[url][/url]

安装序列号:2515dd4e215225dd

jdk-1_5_0_15-linux-i586-rpm.bin

下载地址:[url][/url]

oracle-xe-10.2.0.1-1.0.i386.rpm

Oracle 10grpm安装包

下载地址:

[url][/url]

二、 RHEL5介绍

在经历了两次跳票以后, Red Hat2007314日正式发布了RHEL5. RHEL 5将是Red Hat的商业服务器操作系统版本的第四次重要版本发布, Red Hat酝酿发布RHEL 5已经超过了两年主要变化包括Linux内核由2.6.9升级为2.6.18, 支持Xen虚拟化技术集群存储等.

RHEL5的版本主要分为SeverDesktop两个版本。

具体来说,Server版本分为:

· Red Hat Enterprise Linux Advanced Platform - 对应以前的· Red Hat Enterprise Linux AS

· Red Hat Enterprise Linux - 对应以前的Red Hat Enterprise Linux ES

Desktop版本分为:

· Red Hat Enterprise Linux Desktop - 对应以前的Red Hat Desktop

· Red Hat Enterprise Linux Desktop with Workstation option - 对应以前的Red Hat Enterprise

三、 安装JDK(我把需要安装的软件都放在/usr/local下)

下载地址:

# cd /usr/local

# chmod 755 jdk-1_5_0_15-linux-i586.rpm.bin

# ./ jdk-1_5_0_15-linux-i586.rpm.bin

此步完成后,会生成jdk-1_5_0_15-linux-i586.rpm的文件

# chmod +x jdk-1_5_0_15-linux-i586.rpm

# rpm –ivh jdk-1_5_0_15-linux-i586.rpm

此时会出现授权协议,按Enter键接受。默认安装到/usr/java/jdk1.5.0_15

OK,接下来配置环境变量(提供二种方法)

1、修改/etc/proFile文件

一般都不推荐这种方法,因为这样做的话,所有用户的shell都会使用这些环境变量,可能会给系统带来安全性问题。但如果你的计算机仅仅作为开发使用时那就推荐使用这种方法。

# vi /etc/profile

在里面最后位置加入以下

JAVA_HOME=/usr/java/jdk1.5.0_15

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

# source /etc/profile

使修改的配置生效。

2、修改当前用户变量(推荐用此方法)

# cd

# vi .bashrc

然后一样把一下加进去

JAVA_HOME=/usr/java/jdk1.5.0_15

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

验证java的环境变量有没有生效,可以用以下命令查看一下:

# echo $JAVA_HOME (注意大小写,下同)

没问题的话,显示的是/usr/java/jdk1.5.0_15

# echo $PATH

/usr/java/jdk1.5.0_15/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

# echo $CLASSPATH

.:/usr/java/jdk1.5.0_15/lib/dt.jar:/usr/java/jdk1.5.0_15/lib/tools.jar

# java –version

java version "1.5.0_15"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_15-b04)

Java HotSpot(TM) Server VM (build 1.5.0_15-b04, mixed mode)

如果没有生效,请检查以上配置。或干脆先reboot一下。

环境变量如果ok的话,再来测试JDK是否正常工作。写个测试文件如test.java

# vi test.java

class test

{

public static void main(String[] args)

{

System.out.println("Hi[url][/url]!");

}

}

保存退出,下面来编译、执行;

# javac test.java

# java test

Hi[url][/url]!

好了,这样就是正常了。

四、安装Oracle 10g

《在 Linux x86 上安装 Oracle 数据库 10g》地址是:

[url][/url]

1、验证一下系统所需的主要安装包版本:

# rpm -q gcc make binutils openmotif

gcc-4.1.1-52.el5

make-3.81-1.1

binutils-2.17.50.0.6-2.el5

openmotif-2.2.4-0.1

如果显示某个包没有安装的话,请先安装。安装包一般在redhat的安装盘里有(一般在第二张或第三张),如果没有找到的话,可以到官方下载,不过官方下载比较麻烦,给大家推荐个好地方下载:

[url][/url]

这个网站很简单明了,搜索框输入需要包的名称一部分或全部,就搜索出一堆的安装包链接地址,有很多镜像可以选择。

下面举例openmotif的安装,很简单

# cd /usr/local

# rpm –ivh openmotif-2.2.4-0.1.rpm

2、创建 Oracle 组和用户帐户

接下来,创建用于安装和维护 Oracle 10g的 Linux 组和用户帐户。用户帐户将称为 oracle,而组将称为 oinstall 和 dba。执行以下命令:

# /usr/sbin/groupadd oinstall

# /usr/sbin/groupadd dba

# /usr/sbin/useradd -m -g oinstall -G dba oracle

# id oracle

uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)

设置 oracle 帐户的口令:输密码的时候都是没有回显的,输完就回车就好。

# passwd oracle

Changing password for user oracle.

New password:

Retype new password:

passwd:all authentication tokens updated successfully.

4、安装Oracle

由于默认情况下oracle 10g 不支持redhat as 5.0,所以我们需要手动地把redhat的版本临时给改动一下。

#su - root

#cp /etc/redhat-release /etc/redhat-release.backup

#cat > /etc/redhat-release <<   EOF

Red Hat Enterprise Linux AS release 3 (Taroon)

EOF

安装完毕,执行如下操作:

#su - root

#cp /etc/redhat-release.backup /etc/redhat-release

 

这下就可以真正在开始安装数据库。

# cd /usr/local/database

# ./runInstaller

然后就安装它的提示走,

# /etc/init.d/oracle-xe configure

根据提示设置80801521端口,还有syssystem的密码,开机是否启动等。

Starting Oracle Net Listener...Done

Configuring Database...Done

Starting Oracle Database 10g Express Edition Instance...Done

Installation Completed Successfully.

To access the Database Home Page go to [url][/url]

同样,把环境变量加上去

ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server

export ORACLE_HOME

方法如上

# reboot

OK,现在用netstat看看80801521是否已经监听了。

# netstat –tnl

如果有

tcp     0   0 0.0.0.0:8080         0.0.0.0:*                   LISTEN      

tcp     0   0 0.0.0.0:1521         0.0.0.0:*                   LISTEN

应该就ok了。

Oracle常用几个命令用法

# /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl start  //启动监听器

LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 18-SEP-2007 00:27:51

Copyright (c) 1991, 2005, Oracle.  All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

然后

# /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/lsnrctl stat

没问题的话,最后会提示

The command completed successfully

其实这里是最容易出错的地方,可能和我一样刚接触oracle的朋友常会在这个地方发难。

这几天我也一直在这里徘徊。如果出错的话,注意查看日志文件,路径是network/log/listener.log

如果是监听有问题可以查看network/admin/listener.oranetwork/admin/tnsnames.ora的配置是否有问题,我装完redhat后,改了计算机名,监听的时候总是报错。但是我改了这2个配置文件里的HOST后还是不能监听,后来郁闷之极干脆重新装了一下redhat就没事了。

至此,在RedHat ES 5下用Tomcat作为jsp引擎和web服务器,数据库为Oracle 10gjsp环境配置完成。

阅读(725) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~