Oracle在Linux平台下的安装(一)

时间:2022-10-17 04:41:24

  Oracle作为业界非常知名的数据库产品,在企业中得到了普遍的应用。使用软件的第一步是成功安装软件。本例以OracleLinux平台下的安装为例,所装版本为Oracle 10g

1. 安装前的准备

1.1 检查硬件需求

1)物理内存至少1GB

2)虚拟内存(SWAP空间)根据物理内存的大小需求如下

  Oracle在Linux平台下的安装(一) 

(3)/tmp目录至少需要400MB的硬盘空间

(4)根据不同的安装类型,安装Oracle数据库的分区至少要有1.5GB-3.5GB的空闲磁盘空间。

Oracle在Linux平台下的安装(一) 

(5)确认硬件平台和oracle版本(有32位和64位)匹配

 

1.2 检查软件需求   (1)操作系统平台   目前Oracle只在以下Linux平台上测试过:

 Oracle在Linux平台下的安装(一)

由于在后面安装Oracle时,会检查系统版本号,为了避免检测通不过,最好修改为4.4

方法:修改/etc/issue文件

[root@oracle ~]# cat /etc/issue

Red Hat Enterprise Linux Server release 4.4 (Tikanga)

Kernel \r on an \m

2)内核版本

推荐在2.4以后的版本上安装

[root@oracle ~]# uname -r

2.6.18-164.el5

3)安装所依赖的软件包

Oracle 10g所依赖的软件列表如下:

binutils

compat-db

compat-gcc-34

compat-gcc-34-c++

compat-libstdc++-33

compat-libstdc++

gcc

gcc-c++

glibc

glibc-common

glibc-devel 

glbic-headers

libgcc

libXp

libXp-devel

libXt

libXtst

libaio

libaio-devel

libgcc

libstdc++

libstdc++-devel 

libgomp

make

numactl-devel

sysstat

建议通过yum服务安装所需要的依赖软件包,可以自动解决软件包之间的依赖关系。

yum -y install binutils compat-db compat-gcc-34 compat-gcc-34-c++ compat-libstdc++-33 compat-libstdc++ gcc gcc-c++ glibc glibc-common glibc-devel  glbic-headers libgcc libXp libXt libXtst libaio libaio-devel libgcc libstdc++ libstdc++-devel  libgomp make numactl-devel sysstat

注意在64位平台下不要忽略安装32位的软件包,否则可能会报错:

/tmp/OraInstall2012-01-07_01-03-21AM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directory

 

1.3 检查主机网络设置

1)配置名称解析

/etc/hosts文件中添加名称解析

[root@oracle ~]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

192.168.60.20    oracle.hanvic.com  oracle

127.0.0.1       localhost.localdomain localhost

确保和使用hostname命令看到的结果是一样的

[root@oracle ~]# hostname

oracle.hanvic.com
2)保证NIS域为空

[root@oracle ~]# domainname

(none)

1.4 创建安装Oracle所需要的用户和组

[root@oracle ~]# groupadd oinstall

[root@oracle ~]# groupadd dba

[root@oracle ~]# groupadd oper

[root@oracle ~]# useradd -g oinstall -G dba,oper oracle

并为oracle用户设置口令

[root@oracle ~]# passwd oracle

查询是否存在nobody用户,如不存在,需要添加。

[root@oracle ~]# id nobody

uid=99(nobody) gid=99(nobody) groups=99(nobody)

 

1.5 配置内核参数

1)编辑/etc/sysctl.conf文件,添加下列参数:

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

net.core.rmem_default = 1048576

net.core.rmem_max = 1048576

net.core.wmem_default = 262144

net.core.wmem_max = 262144

完成后保存退出,并执行sysctl p 命令使之生效

这些内核参数的含义是:

kernel.shmall = 2097152

# 表示系统一次可以使用的共享内存总量(以页为单位),缺省值就是2097152,通常不需要修改。

kernel.shmmax = 2147483648

# 该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,通常将其设置为2G

kernel.shmmni=4096

# 整个系统共享内存段的最大数量,该参数的默认值是4096 ,通常不需要更改

kernel.sem = 250 32000 100 128

# 每个信号对象集的最大信号对象数

# 系统范围内最大信号对象数

# 每个信号对象支持的最大操作数

# 系统范围内最大信号对象集数

fs.file-max = 65536

# 系统中所允许的文件句柄最大数目

net.ipv4.ip_local_port_range = 1024 65000

# 应用程序可使用的端口范围

net.core.rmem_default = 10485

# 套接字接收缓冲区大小的默认值

net.core.rmem_max = 1048576

# 套接字接收缓冲区大小的最大值

net.core.wmem_default = 262144

# 套接字发送缓冲区大小的默认值

net.core.wmem_max = 262144

# 套接字发送缓冲区大小的最大值

 

2)为Oracle用户设置shell限制

编辑/etc/security/limits.conf文件,添加如下内容:

oracle              soft    nproc   2047

oracle              hard    nproc   16384

oracle              soft    nofile  1024

oracle              hard    nofile  65536

3)修改登录认证模块

编辑/etc/pam.d/login文件,添加如下内容:

session    required     /lib/security/pam_limits.so

session    required     pam_limits.so

4)修改系统环境变量文件/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

1.6 标识Oracle所需要的目录

1Oracle基本目录(oracle_base

/mount_point/app/oracle_sw_owner,例如 
      

/u01/app/oracle 
     

2oracleHome Directory 
      

主要用于区分不同的oracle版本,oracle推荐你采用以下的目录结构 
      

oracle_base/product/10.2.0/db_1 
     

Oracle在Linux平台下的安装(一) 

3)为了提高oracle数据库的性能和可靠性,建议把Oracle的数据库文件目录和恢复文件目录放在不同的文件系统,推荐使用下面的目录结构 
     

    • Database file directory:

    # mkdir /mount_point/oradata

    # chown oracle:oinstall /mount_point/oradata

    # chmod 775 /mount_point/oradata

     

      • Recovery file directory (flash recovery area):

      # mkdir /mount_point/flash_recovery_area

      # chown oracle:oinstall /mount_point/flash_recovery_area

      # chmod 775 /mount_point/flash_recovery_area

      
         
        
        

       

      1.7 创建Oracle所需要的目录及设置目录属主和权限

      本例中的安排如下: 
          

      1)创建挂载点u01,将sdb1挂载到u01目录下(安装目录),将sdb3挂载到u02目录下(数据库文件目录和恢复文件目录)。如要实现开机挂载,可以在/etc/fstab文件中添加以下语句:

      /dev/sdb1 /u01 ext3 defaults 0 0

      /dev/sdb3 /u02 ext3 defaults 0 0

      然后使用mount –a命令进行挂载

      [root@oracle ~]# df -h

      Filesystem            Size  Used Avail Use% Mounted on

      /dev/sda3             6.7G  4.8G  1.7G  75% /

      /dev/sda1              99M   12M   83M  13% /boot

      tmpfs                 501M     0  501M   0% /dev/shm

      /dev/hdc              3.4G  3.4G     0 100% /media/RHEL_5.4 x86_64 DVD

      /dev/sdb1             4.6G  138M  4.3G   4% /u01

      /dev/sdb3             2.4G   68M  2.2G   3% /u02dv

      2)修改u01的所属主和所属组分别为oracleoinstall,权限为775

      [root@oracle ~]# chown oracle:oinstall /u01 /u02

      [root@oracle ~]# chmod 775 /u01 /u02

      3)切换到oracle用户,创建安装oracle的所需的目录结构

      [root@oracle ~]# su - oracle

      [oracle@oracle ~]$ mkdir -pv /u01/app/oracle/product/10.2.0/db_1/

      [oracle@oracle ~]$ mkdir -pv /u02/oradata

      [oracle@oracle ~]$ mkdir -pv /u02/flash_recovery_area

      1.8 设置Oracle用户的环境变量

      1)切换至Oracle用户,编辑家目录下的.bash_profile文件,添加以下内容

      PATH=$PATH:$HOME/bin:/u01/app/oracle/product/10.2.0/db_1/bin

      export PATH

      umask 022

      ORACLE_BASE=/u01/app/oracle

      ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1

      ORACLE_SID=ORCL

      export ORACLE_BASE ORACLE_HOME ORACLE_SID

       

      2)使用下面的命令使设置生效

      [oracle@oracle ~]$ source .bash_profile

       

      3)在UNIX/Linux环境下,需要为DISPLAY环境变量设置一个合适的值,并在通过runInstall脚本启动oracle安装程序之前激活xhost

      [root@oracle ~]# xhost + #允许任何人任何主机在本地主机显示图形窗口)

      access control disabled, clients can connect from any host

      [oracle@oracle ~]# DISPLAY=192.168.60.90:0.0;export DISPLAY

      [root@oracle ~]# su - oracle

      [oracle@oracle ~]$ DISPLAY=192.168.60.90:0.0;export DISPLAY

      俗话说,磨刀不误砍柴功,安装环境准备好了,这样大功就一半了,接下来就让我们这享受这安装的过程吧,请参阅Oracle在Linux平台下的安装(二),不足之处请大家多指正。

      本文出自 “轻舞飞扬” 博客,请务必保留此出处http://xiaofeixia.blog.51cto.com/521300/775987