Chinaunix首页 | 论坛 | 博客
  • 博客访问: 97322
  • 博文数量: 16
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 167
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-06 10:28
文章分类
文章存档

2011年(1)

2009年(15)

我的朋友

分类: LINUX

2009-09-20 10:50:39

 

RedHat4安装Oracle10详解专题以及安装过程中遇到问题

   由于工作需要,刚刚接触到linux,有很大的好奇心。最近一直忙着在linux上面安装oracle10。刚开始以为很容易,在网上找个文档,照着去做就可以了,可是实践证明:万事开头难。花了将近两个星期的业余时间,发现了好多问题,然后在Google上面寻找解决方法,然后实践证明是否可行,历尽艰辛才把Oracle10安装成功。不过在安装过程中,对于我这只linux rookie来说,学到了很多知识,更进一步了解了linux。那么下面就把我的安装过程以及在安装过程中遇到的问题详尽的写下来,一来可以做为我的学习笔记,二来可以给正在或准备在linux上安装oracle的朋友提供参考,三来可以和大家一起交流,互相学习。

   我的学习环境是在XP上面装了一个VMWARE虚拟机,然后在虚拟机中装了RedHat4。在安装RedHat时,由于Oracle对于swap(交换分区,类似windows里面的虚拟内存)有要求,因此我单独分了1G的空间给swap,其他的空间全部挂在“/”下面。

[root@RedHat ~]# fdisk -l

Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         892     7164958+  83  Linux
/dev/sda2             893        1044     1220940   82  Linux swap

  这里还需要大家注意的是,Oracle10g对于linux操作系统的版本是有要求的,只有经过Oracle认证的linux版本才能正常安装。如果不在认证范围之内,执行系统会给予类型以下提示:

./runInstaller以后,报告下面的错误:
        Checking installer requirements...
      Checking operating system version: must be redhat-3, SuSE-9, redhat-4,
      UnitedLinux-1.0, asianux-1 or asianux-2
                                            Failed <<<<

其中“redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2”这些就是经过Oracle认证过的linux版本。因此,大家在安装之前一定要确认自己的环境是否适合安装Oracle10.

那么如何来确认呢?

在安装程序解压目录的子目录install下面有一个Oraparam.ini初始化文件,我们来看一下该文件里面的内容就显而易见了:

      # vi install/oraparam.ini
      [Certified Versions]
               
      Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2
      [UnitedLinux-1.0-optional]
                TEMP_SPACE=80
                SWAP_SPACE=150
                MIN_DISPLAY_COLORS=256
      [Linux-redhat-3.0-optional]
                TEMP_SPACE=80
                SWAP_SPACE=150
                MIN_DISPLAY_COLORS=256
      [Linux-redhat-4.0-optional]
                TEMP_SPACE=80
                SWAP_SPACE=150
                MIN_DISPLAY_COLORS=256

  一、安装之前的准备

     1.Oracle10g对于系统资源的要求非常高

     1.1.物理内存至少要512M,如果条件充分可以最好1G

     1.2.swap交换分区需要至少1G的空间。

     1.3./tmp目录下面至少要有400M的空间

     1.4.硬盘需要4G的空间

     2.Oracle10g在安装过程中需要一些软件的支持,我在装RedHat4时,没有安装所有的软件,因此在安装Oracle之前需要将这些软件安装好。但是网上不同的文档所指明的软件都不一样,可能和安装的linux环境有关系,但是gcc编译器是必须的,而且其版本至少是gcc-3.2.3-2。我只安装了libaio-0.3.102-1.i386.rpm ,libaio-devel0.3.102-1.i386.rpm以及gcc,安装oracle也没问题。如果忘了安装必要的软件也不用担心,Oracle的安装程序中会检测目前的环境是否适合安装,如果不适合,Oracle会把必要的要素提示出来。这一点在下面的安装过程中会讲到。

     2.1.安装libaio-0.3.102-1.i386.rpm,libiao-devel0.3.102-1.i386.rpm,这些软件都是放在linux安装盘中的/media/cdrom/RedHat/RPMS下面。

[root@redhat RPMS]# pwd
/media/cdrom/RedHat/RPMS
[root@redhat RPMS]# find /-name libaio-0.3.105-2.i386.rpm
find: /-name: No such file or directory
libaio-0.3.105-2.i386.rpm
[root@redhat RPMS]# rpm -ivh libaio-0.3.105-2.i386.rpm
warning: libaio-0.3.105-2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
 package libaio-0.3.105-2 is already installed
[root@redhat RPMS]# rpm -ivh libaio-devel-0.3.105-2.i386.rpm
warning: libaio-devel-0.3.105-2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:libaio-devel           ########################################### [100%]

     2.2.安装GCC.

        linux里的软件有很多都是存在互相依靠关系的。安装GCC需要安装binutils-2.15.92.0.2-24.i386.rpm、cpp-3.4.6-9.i386.rpm、glibc-kernheaders-2.4-9.1.100.EL.i386.rpm,glibc-headers-2.3.4-2.39.i386.rpm,glibc-devel-2.3.2-11.9.i386.rpm,看起来是不是有点头晕,没关系,我们先把他们一个一个找到,然后安装。

[root@redhat RPMS]# rpm -ivh binutils-2.15.92.0.2-24.i386.rpm
warning: binutils-2.15.92.0.2-24.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
 package binutils-2.15.92.0.2-24 is already installed
[root@redhat RPMS]# rpm -ivh cpp-3.4.6-9.i386.rpm
warning: cpp-3.4.6-9.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
 package cpp-3.4.6-9 is already installed

[root@redhat RPMS]# rpm -ivh glibc-kernheaders-2.4-9.1.100.EL.i386.rpm
warning: glibc-kernheaders-2.4-9.1.100.EL.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:glibc-kernheaders      ########################################### [100%]
[root@redhat RPMS]# rpm -ivh glibc-devel-2.3.4-2.39.i386.rpm
warning: glibc-devel-2.3.4-2.39.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
 glibc-headers is needed by glibc-devel-2.3.4-2.39.i386
 glibc-headers = 2.3.4-2.39 is needed by glibc-devel-2.3.4-2.39.i386
    Suggested resolutions:
 /var/spool/up2dateglibc-headers-2.3.4-2.39.i386.rpm
[root@redhat RPMS]# rpm -ivh glibc-headers-2.3.4-2.39.i386.rpm
warning: glibc-headers-2.3.4-2.39.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:glibc-headers          ########################################### [100%]
[root@redhat RPMS]# rpm -ivh glibc-devel-2.3.4-2.39.i386.rpm
warning: glibc-devel-2.3.4-2.39.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:glibc-devel            ########################################### [100%]

以上软件安装完毕后,再来安装GCC.

[root@redhat RPMS]# rpm -ivh gcc-3.4.6-9.i386.rpm
warning: gcc-3.4.6-9.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...                ########################################### [100%]
   1:gcc                    ########################################### [100%]
   

  二.开始安装

    1.建立用户和用户组

      linux是多用户操作系统,每一个用户可以拥有自己的环境变量,可以拥有自己访问权限,大大提高了管理的强度。在这里,我们需要建立oracle用户以及dba用户组和oinstall用户角色组。

[root@redhat RPMS]# groupadd dba 
[root@redhat RPMS]# groupadd oinstall
[root@redhat RPMS]# useradd oracle -g oinstall -G dba
[root@redhat RPMS]# passwd oracle
Changing password for user oracle.
New UNIX password:
Retype new UNIX password:

passwd: all authentication tokens updated successfully.

     2.建立安装目录

[root@redhat ~]# mkdir -p /home/oracle/product/10g
[root@redhat ~]# chown -R oracle.oinstall /home/oracle/
[root@redhat ~]# chmod 755 -R /home/oracle

      3.为oracle用户配置环境变量。

前面已经说过,linux是一个多用户操作系统,每一个用户可以设置自己的环境变量。在每一个用户的目录下,都有一个隐藏的环境变量文件,RedHat中,该文件叫.bash_profile。

我们在安装之前设置好oracle的环境变量,那么在安装的过程中需要的手工设置的环境变量可以去从oracle用户的环境变量里去读取并设置,例如ORACLE_BASE,ORACLE_HOME,ORACLE_SID。

[root@redhat oracle]# su oracle
[oracle@redhat ~]$ vi ~/.bash_profile

在.bash_profile文件中增加以下变量:

export ORACLE_BASE=/home/oracle/
export ORACLE_HOME=/home/oracle/product/10g
export ORACLE_SID=zgz
export PATH=$ORACLE_HOME/bin:$PATH

最后一句需要注意的是,变量之间的是通过“:”号来连接的,而windows里面是用“;”来连接的,当初我就是没有仔细看,以为和windows一样,把“:”敲成了“;”,结果是source时总是报错,走了很多弯路。

然后通过source命令使修改过的环境变量生效。

[oracle@redhat ~]$ source .bash_profile

     4.设置系统参数

切换到root用户

[oracle@redhat ~]$ su
Password:
[root@redhat oracle]# vi /etc/sysctl.conf

然后在sysctl.conf中添加如下语句:
 
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
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
 
修改后运行"/sbin/sysctl -p"命令使得内核改变立即生效
[root@redhat oracle]# /sbin/sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.shmall = 2097152
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
 
编辑文件:vi /etc/security/limits.conf 加入以下语句:
oracle           soft    nproc           2047
oracle           hard    nproc           16384
oracle           soft    nofile          1024
oracle           hard    nofile          65536
编辑文件:vi /etc/pam.d/login 加入以下语句(可能应该加在最后一条规则之前):
session    required     /lib/security/pam_limits.so
 
       5、上传安装文件并解压。
将10201_database_linux32.zip文件用oracle用户上传到/tmp路径下,然后解压。
[root@redhat tmp]# su - oracle
[oracle@redhat ~]$ cd /tmp/
[oracle@redhat tmp]$ ls
10201_database_linux32.zip  database  gconfd-root  mapping-root
[oracle@redhat tmp]$ unzip 10201_database_linux32.zip
 
       6.Oracle10g的安装需要xwindow,因此需要指定xwindow,我在机器上装的是Xmanager Enterprise 3,可以调用Xmanager的终端。
用root身份进行操作:
[root@redhat database]# export DISPLAY=192.168.1.100:0.0
[root@redhat database]# xhost +
access control disabled, clients can connect from any host
此时Xmanager会弹出一个测试窗口,说明连接成功。
 
     7、开始安装
切换到oracle用户进行以下操作。
[root@redhat database]# su - oracle
[oracle@redhat ~]$ cd /tmp/
[oracle@redhat tmp]$ ls
10201_database_linux32.zip  gconfd-root        mapping-root                     OraInstall2009-09-22_06-03-29AM
database                    hsperfdata_oracle  OraInstall2009-09-22_06-01-13AM  OraInstall2009-09-22_06-04-14AM
[oracle@redhat tmp]$ cd database/
[oracle@redhat database]$ ls
doc  install  response  runInstaller  stage  welcome.html
[oracle@redhat database]$ ./runInstaller
Starting Oracle Universal Installer...
Checking installer requirements...
Checking operating system version: must be redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
                                      Passed

All installer requirements met.
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2009-09-22_06-05-01AM. Please wait ...[oracle@redhat database]$
此时,在Xmanager的显示终端就会出现oracle10的安装窗口
 
       8、安装过程中需要注意的问题
1.选择高级安装
2.数据库字符集选Simplified Chinese ZHS16GBK
3.数据库home设置为/home/oracle/product/10g(设置环境变量后,该值在安装过程中是默认)
4.数据库全局名称设置为zgz(设置环境变量后,该值在安装过程中是默认)
5.其他默认即可

阅读(1704) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:su userid 和 su - userid的区别

给主人留下些什么吧!~~