您的位置:首页 > 数据库 > Oracle

linux 5.4 安装oracle

2012-05-08 12:06 281 查看
首先将安装文档在windows下保存UTF-8编码,懂得一些linux操作命令,熟悉linux系统就更快了

依赖包刚开始可能都是报以下的信息,可以挂载ISO,安装。

后面安装数据库后有一个报错信息,可以查看后,指定安装

检查所需操作系统的RPM 包是否完整

进入系统,以 root 用户登录

# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc compat-gcc-c++

compat-libstdc++ compat-libstdc++-devel

gcc-3.4.6-8

make-3.80-6.EL4

binutils-2.15.92.0.2-22

openmotif-2.2.3-10.1.el4

setarch-1.6-1

compat-db-4.1.25-9

package compat-gcc is not installed

package compat-gcc-c++ is not installed

package compat-libstdc++ is not installed

package compat-libstdc++-devel is not installed

要安装这些RPM 包,从操作系统光盘中获取。

[root@linux2 RPMS]# pwd

/media/cdrom/RedHat/RPMS

#rpm -Uvh compat-db-4*

#rpm -Uvh libaio-0*

#rpm -Uvh compat-libstdc++-33-3*

#rpm -Uvh compat-gcc-32-*

#rpm -Uvh openmotif-2*

#rpm -Uvh gcc-*

#rpm -Uvh glibc-2.3.4-2.36.i386.rpm

包安装过程告于段落,再次验证包安装情况:

# rpm -q gcc make binutils openmotif setarch compat-db compat-gcc compat-gcc-c++

compat-libstdc++ compat-libstdc++-devel

检查内存和磁盘

[root@linux2 proc]# cat /proc/meminfo | grep MemTotal

MemTotal: 1034584 kB

[root@linux2 proc]# cat /proc/meminfo | grep SwapTotal

SwapTotal: 2096472 kB

交换区设为物理内存的2倍,Oracle 要求主机内存至少512m, 建议 1G。磁盘至少有 3G

的空间,建议更多。

4. 修改OS参数

a) 修改/etc/sysctl.conf文件,在文件末尾添加如下内容

kernel.shmmax = 4294967295

kernel.shmall = 4194304

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

fs.file-max = 65536

net.ipv4.ip_local_port_range = 1024 65000

net.core.rmem_default = 262144

net.core.rmem_max = 262144

net.core.wmem_default = 262144

net.core.wmem_max = 262144

再运行sysctl -p 应用以上参数,即可马上生效。 如图:

参数意义解释:

kernel.shmmax 是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值,

shmmax 设置应该足够大,能在一个共享内存段下容纳下整个的 SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降 。

当然 Oralce 的建议是希望一个大的共享内存段能容纳整个 SGA,这样在任何时候都不

会有甚至轻微的性能下降的隐患。

Oracle 安装文档建议32Bit Linux系统设置kernel.shmmax 为32Bit操作系统内存最大的

限制值,也就是4G 。

所以一般来说,1-4G 的物理内存,可以直接设置 shmmax 为最大物理内存即可,那么

SGA 肯定在一个共享内存段中,32Bit Linux 系统物理内存大于 4G 的设置为 4G 即可 。总

之,一般设置shmmax >=SGA (32Bit 系统是否支持到1.7G 以上SGA 需要注意) 。 如果是64Bit 的Linux 操作系统,shmmax 设置为大于 SGA_MAX_SIZE 即可。

本测试环境是 1G 物理内存,故将该值设置为 1024*1024*1024=1073741824(1G)

kernel.shmall 参数取的这个值是 ORACLE默认的值,kernel.shmall 参数是控制共享内存

页数 。Linux 共享内存页大小为4KB, 共享内存段的大小 = 共享内存页大小*共享内存页数。

一个共享内存段的最大大小是16G, 需要共享内存页数 16GB/4KB=16777216KB/4KB=4194304

(页) 。如果你的内存不超过8G,那么8GB/4KB=8388608KB/4KB=2097152 (页) 。

个人认为如果你的内存大小不超过 8G,就默认使用 2097152大小; 如果内存大小为 16G,

则需要调大kernel.shmall参数至4194304,这时可以将 shmmax 参数调整到 16G了, 同时增大你的SGA_MAX_SIZE 和SGA_TARGET 为 12G左右(您想设置的 SGA 最大大小,当然也可以是2G~14G 等,还要协调PGA参数及 OS 等其他内存使用,不能设置太满)

kernel.shmmni 内核参数是共享内存段的最大数量(注意这个参数不是 shmmin,是

shmmni, shmmin 表示内存段最小大小) 。shmmni 缺省值 4096 ,一般肯定是够用了。

其他参数使用默认值即可,如无特殊的极端要求,一般不用调整。

b) 修改/etc/security/limits.conf文件,在文件末尾添加以下内容:

* soft nproc 2047

* hard nproc 16384

* soft nofile 1024

* hard nofile 65536

这个步骤是为 Oracle 用户设定Shell的限制。一般来说,出于性能上的考虑,还需要进行

如上的设定,以便改进 Oracle 用户的有关 nofile(可打开的文件描述符的最大数)和 nproc(单个用户可用的最大进程数量) 的设定。

c) 修改/etc/pam.d/login文件,并在文件末尾添加以下内容

session required pam_limits.so

d) 查看/etc/selinux/config 文件,确保SELINUX 为 disabled状态

SELINUX=disabled

确保文件内容如下图所示

至此,关于对操作系统内核的修改告于段落

5. 创建ORACLE账户及所属组

#groupadd oinstall

#groupadd dba

#useradd –m –g oinstall –G dba oracle

#id oracle

#passwd oracle

6. 为安装文件夹进行权限准备

a) 将ZIP文件解压缩,前面已经提到,ZIP存放在/home/temp/下,我们继续使用 root

账户将其解压缩:

解压缩完成,我们发现 oracle 用户对 database文件夹没有写权限,做以下修改

#chown -R oracle:oinstall database/

b) 创建安装目录

#mkdir -p /app/oracle/product/10.2/db_1

# chown -R oracle:oinstall /app

# chmod -R 775 /app

c) 设置oracle 用户的 .bash_profile

以oracle 用户登录,修改主目录下的.bash_profile,末尾添加以下内容:

PATH=/usr/bin:/etc:/usr/sbin:/usr/ucb:$HOME/bin:/usr/bin/X11:/sbin:.:$PATH

export PATH

PS1='oracle->'

TMP=/tmp; export TMP

TMPDIR=$tmp; export TMPDIR

ORACLE_BASE=/u01/oracle; export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;export ORACLE_HOME

ORACLE_SID=orcl;export ORACLE_SID

ORACLE_TERM=xterm;export ORACLE_TERM

PATH=/usr/sbin:$PATH;

PATH=$ORACLE_HOME/bin:$PATH

export PATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;

export LD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

export CLASSPATH

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export LANG=US

if [ $USER = "oracle" ]; then

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

ulimit -p 16384

ulimit -n 65536

else

ulimit -u 16384 -n 65536

fi

fi

7. 设置主机Hosts文件

/etc/hosts 文件的作用在这里就不必多说,在你配置好静态 IP 后,/etc/hosts 文件的初

始内容应该如下所示:

这样一来,在客户端也正确配置了 hosts 文件之后,就可以通过主机名(linux2)来访问

DB 服务器了

################可选步骤####################

(选用操作系统为RHEL 5 或者OEL 5的执行以下步骤,RHEL4或 OEL4跳过此步骤)

因为在官方的 Oracle10g 是不支持 RHEL5 的,所以需要改变相关的参数,不然在 Oracle10g

安装前不能通过检测!网上有两种更改的方法,最简单的方法是:

编辑文件 /etc/redhat-release 把 Red Hat Enterprise Linux Server release 5 (Tikanga) 改成

版本4:redhat-4 即可

8. 安装准备最后一步:注销root,并以 oracle 用户登录!

9. 进入/home/temp/database目录,执行安装程序

选择高级安装

选择企业版

注意安装位置,如果之前正确的配置了 ORACLE_HOME,则此处无需修改

选择“仅安装数据库软件” ,稍后会使用 DBCA手工创建数据库

安装正在进行,耐心等待约5分钟(机器配置不同)

安装完成时,会弹出这个对话框,按照他的要求去做就可以了

ORACLE 软件安装完成,下一步要使用 DBCA 创建数据库,并使用

NETCA,NETMGR 来配置数据库网络服务!

启动 DBCA

输入全局服务名和实例名,要与之前配置 .bash_profile 中的 ORACLE_SID相同

SGA 大小分配为 512M(根据需要),并使用 10g 的自动内存管理。PGA 90M。字符集要选择正确,连接模式选择专有服务器。

接下来,终端中输入 netca ,使用 netca配置侦听器,命名方法和本地服务命名,方法与

在windows下相同.

10以root
用户登录执行以下命令:

xhost +

11切换到oracle用户

su oracle

执行:export DISPLAY=:0.0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: