首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | 镜像站
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
Linux资讯 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux数据库>oracle>正文

ORACLE FOR LINUX 安装指南

http://www.oklinux.cn  2006-08-13  来源: oklinux收集整理  cxtt228      会员收藏  游客收藏  【 】 
  从网上下载redhat Enterprise Linux Advanced Server3的四个安装文件,安装时swap分区设置为内存的二倍。不要采用DHCP设置主机名和IP地址,而是“手工设置”。否则会在安装oracle的时候出现如下错误:

Thrown when the IP address of a host cannot be determined

  出现这个错误将使Oracle不能安装成功。安装RHAS3,可以刻录到光盘安装,也可以从硬盘安装,从硬盘安装RHAS3,请参考:http://bbs.chinaunix.net/forum/viewtopic.php?p=2416942#2416942

2、系统要求:内存最低256(我的就是这么大),建议512M,硬盘空间4G,如果Oracle安装文件存在硬盘,建议5G(在安装操作系统后的剩余空间)。

  可以查看内存的大小,用到的命令是:grep MemTotal /proc/meminfo

  swap分区在安装操作系统的时候就设定好了,为内存的2倍,当内存达到1G以上时,和内存大小相同就可以了啊。相看交换分区命令是:/sbin/swapon -s

3、检查是否安装以下包:

QUOTE:

#su - root
#rpm -qa|grep compat
compat-db-4.0.14-5.i386
compat-gcc-7.3-2.96.122.i386
compat-gcc-c++-7.3-2.96.122.i386
compat-libstdc++-7.3-2.96.122.i386
compat-libstdc++-devel-7.3-2.96.122.i386
#rpm -qa|grep openmotif21
openmotif21-2.1.30-8.i386
#rpm -qa|grep setarch
setarch-1.3-1.i386
#rpm -qa|grep tcl
tcl-8.3.5-92.i386
  上面显示的内容是在笔者已经安装了具体的RPM包之后的结果。它们对应的软件包是:

QUOTE:

compat-db-4.0.14-5.i386.rpm
compat-gcc-7.3-2.96.122.i386.rpm
compat-gcc-c++-7.3-2.96.122.i386.rpm
compat-libstdc++-7.3-2.96.122.i386.rpm
compat-libstdc++-devel-7.3-2.96.122.i386.rpm
openmotif21-2.1.30-8.i386.rpm
setarch-1.3-1.i386.rpm
tcl-8.3.5-92.i386.rpm
  一般情况下,你的系统上的输出结果和这个不同。如果个别包没有安装,把系统安装光盘mount上,找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应的包:

# rpm -ivh compat.....rpm
因为我没有把RHAS3刻录到光盘,所以我用下面的命令来挂载iso文件

mount -o loop /mnt/e/rhas3/rhel-3-i386-as-disc3.iso /mnt/cdrom

  要额外注意的是,这些软件包之间是有依赖性的,先后的顺序要找好。否则会报告不能安装的错误。在安装软件包的时候,如果出现软件包的依赖性,就先安装有有依赖的包。我相信大家会看明白软件包之间的依赖性的。
还需要将gcc、g++更换为2.96的版本.
方法如下:

QUOTE:

#su - root
mv /usr/bin/gcc /usr/bin/gcc323
ln -s /usr/bin/gcc296 /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++323      # if g++ doesn't exist, then gcc-c++ was not installed(这里是注释哦)
ln -s /usr/bin/g++296 /usr/bin/g++
3、设置内核参数(最好设一下):
这个版本的默认的glibc 很合适,免去了不少麻烦。
用grep MemTotal /proc/meminfo查看内存总量
出现 MemTotal XXXXXKB,其中的XXXXX就是内存总量。
修改两个文件,如下:

QUOTE:

#vi /etc/sysctl.conf
加入:
kernel.shmmax = xxxxx*1024*2(为内存的2倍,切换到字节。要是超过这个值,在运行dbca时会出现Ora-27123:Unable to attach to shared memeroy segment)
kernel.shmmni=4096
kernel.shmall=2097152
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
#vi /etc/security/limits.conf
加入:
oracle hard nofile 65536
oracle soft nofile 65536
oracle hard nproc 16384
oracle soft nproc 16384
4、建立用户、设置环境变量
建立用户的命令是以root用户运行的。


#groupadd oinstall
#groupadd dba
#useradd -g oinstall -G dba oracle
#passwd oracle
设置环境变量:
以oracle用户登录,

QUOTE:

vi $HOME/.bash_profile
插入下面的内容
# Set the LD_ASSUME_KERNEL environment variable only for Red Hat 9 and
# for Red Hat Enterprise Linux Advanced Server 3 (RHEL AS 3) !!
# Use the "Linuxthreads with floating stacks" implementation instead of NPTL:
export LD_ASSUME_KERNEL=2.4.1

# Oracle Environment
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export ORACLE_SID=test
export ORACLE_TERM=xterm
# export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc. are not in $ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN;
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH

# Set shell search paths
export PATH=$PATH:$ORACLE_HOME/bin
  然后注销重新登录,用set|more查看环境变量是否生效。因为我把Oracle安装在了oracle用户主目录下,所以我的ORACLE_BASE值为/home/oracle,当然你也可以安装到指定的目录,如下:

QUOTE:

#su - root
#mkdir /opt/oracle
#mkdir /opt/oracle/product
#mkdir /opt/oracle/product/9.2.0
#chown -R oracle.oinstall /opt/oracle
                                          
#mkdir /var/opt/oracle
#chown oracle.dba /var/opt/oracle
#chmod 755 /var/opt/oracle
这时ORACLE_BASE的值就是/opt/oracle。

5、开始安装

http://www.oracle.com下载三个安装文件,
ship_9204_linux_disk1.cpio.gz
ship_9204_linux_disk2.cpio.gz
ship_9204_linux_disk3.cpio.gz
用zcat ship_9204_linux_disk1.cpio.gz|cpio -idmv
zcat ship_9204_linux_disk2.cpio.gz|cpio -idmv
zcat ship_9204_linux_disk3.cpio.gz|cpio -idmv
生成三个文件夹Disk1,Disk2,Disk3;
你也可以用gunzip ship_9204_linux_disk1.cpio.gz
               cpio -idmv <ship_9204_linux_disk1.cpio
这样的命令来生成三个目录,可以用下面的命令刻录到光盘,也可以保存在硬盘。

QUOTE:

mkisofs -r Disk1 | cdrecord -v --eject dev=0,0,0 speed=15 -
mkisofs -r Disk2 | cdrecord -v --eject dev=0,0,0 speed=15 -
mkisofs -r Disk3 | cdrecord -v --eject dev=0,0,0 speed=15 -
进入Disk1目录运行runInstaller之前,注意两点:
a、export LANG=en_us(否则安装界面出来就会出现“□”,因为Oracle9i不支持中文界面。)
b、安装p3006854_9204_LINUX.zip补丁,否则会出现如下错误:

QUOTE:

Error occurred during initialization of VM
Unable to load native library: /tmp/OraInstall2003-10-25_03-14-57PM/jre/lib/i386/libjava.so:
    symbol __libc_wait, version GLIBC_2.0 not defined in file libc.so.6 with link time reference
http://metalink.oracle.com下载p3006854_9204_LINUX.zip补丁。安装此补丁的方法:

QUOTE:

su - root
# unzip p3006854_9204_LINUX.zip
Archive:  p3006854_9204_LINUX.zip
   creating: 3006854/
  inflating: 3006854/rhel3_pre_install.sh
  inflating: 3006854/README.txt

# cd 3006854
# sh rhel3_pre_install.sh
Applying patch...
Patch successfully applied
#
注意:如果运行 rhel3_pre_install.sh出现下面的错误
  rhel3_pre_install.sh: line 36: gcc: command not found
是因为你忘了安装gcc,同样要是出现下面的错误:
# ls
ls: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
# rm /etc/ld.so.preload
rm: error while loading shared libraries: /etc/libcwait.so: cannot open shared object file: No such file or directory
#
请不要退出bash,用下面的方法来修复(我开始遇到,后来没有遇到了,可能是因为我把gcc降级到了296吧)
# echo "" >; /etc/ld.so.preload
rm /etc/ld.so.preload
And start over again.
现在运行./runInstaller &(必须进入到Disk1目录,或者从光盘运行,从光盘安装不要进入/mnt/cdrom后运行runInstaller,而是这样运行./mnt/cdrom/runInstaller)
  呵呵,高兴了吧,期待以久的GUI界面终于出来了啊。这是欢迎界面。显示了Oracle安装的源文件所在目录,还有要安装到的产品目录。我们点“Next”;
       接着出现的下一个界面是Inventory路径,我们点“Next”;
  现在要求用户输入UNIX组名,我们用Oracle用户所在的组“oinstall”,然后点“Next”,如果你是第一次安装Oracle产品,则要你运行一个sh文件。文件是/tmp/orainstRoot.sh,我们打开一个shell窗口,切换到root用户,如下:


su root
sh /tmp/orainstRoot.sh

运行完毕我们返回Oracle安装界面,点“Continue”;
  选择文件存放的目录,我们选择默认值。然后“Next”;
  安装的产品是“Oracle9i Database 9.2.0.4.0”,点“Next”;
  选择安装类型是“通用”,默认选项。点“Next”;
  输入全局数据库名,然后“Next”;
  数据文件的存放位置,我采用的是默认位置,点“Next”;
  出现安装组件的选择结果,这时点“Install”,开始安装,复制文件,进度条在一点一点的增加,当安装并link完后,出现配置工具界面,agent服务不能配置成功,忽略不用管,在下面修复。DBCA,NETCA,HTTP都正确配置完毕哦。呵呵。下面开始修复错误。其实要是把各个界面抓取下来就更好了。

6、安装p3238244_9204_LINUX.zip补丁(用oracle用户在oracle安装完毕后再打上去)

此补丁也是从http://metalink.oracle.com下下载,同时要下载一个opatch软件包:p2617419_220_GENERIC.zip,它主要是用来悠agent服务不能启动的错误。
过程如下:

QUOTE:

su - oracle
$ cp p2617419_210_GENERIC.zip /tmp
$ cd /tmp
$ unzip p2617419_210_GENERIC.zip
$ export PATH=$PATH:/tmp/OPatch
$ export PATH=$PATH:/sbin        # the patch needs "fuser" which is located in /sbin
$ unzip p3238244_9204_LINUX.zip
$ cd 3238244
$ opatch apply
补丁修复完成,需要relinked一个.mk文件。
$ cd $ORACLE_HOME/network/lib
$ make -f ins_oemagent.mk install
现在在运行agentctl start,看是不是可以成功运行agent服务了啊,可以用stop、status来停止此服务或者检查服务的状态。
在这个成功之后,居然不能启动Oracle,说是不能找到初始化文件,没办法,我用dbca先删除了原来安装时建立的库,再重新建立了数据库。

7、运行dbca来创建数据库。呵呵,一路畅通,完成数据库的安装。
希望你也能成功安装。

上一篇:oracle监听不能启动的问题   下一篇:ORACLE UNDO表空间释放过度占用的空间


收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·oracle监听不能启动的问题
·ORACLE UNDO表空间释放过度占用的空间
·oracle中的sql语句
·Oracle中的Merge函数
·Oracle中Decode()函数使用技巧
·详细介绍 Oracle 9i 的各个技术特征
·裸设备和Oracle问答20例
·用Oracle的解析函数发现序列间隙
·Oracle PL/SQL语言基础
·在Oracle 9i isqlplus中使用替换变量
·从黑客角度检验Oracle数据库的安全性
·WebLogic与ORACLE数据库的连接配置
·Oracle:如何对CLOB行字段执行全文检索
·SQL Server与Oracle、DB2的性能比较
·Oracle初学者入门指南-什么是DUL
·您知道SQLServer2005的10个高级特性吗
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·教你快速掌握一个简单的Oracle定时任务
·详细讲解"Oracle"服务器的常用命令行
·深入讲解"alert log"过大时的处理方法
·解决启动数据库时发生的ORA-12528错误
·用存储过程实现删除数据表的部分记录
·改变优化参数来适应库缓冲区中SQL的变
·在Oracle中重新编译所有无效的存储过程
·讲解用于描述数据库中需要存储的实体语
·基于已被证实的Oracle高可用性技术MAA
·实例讲解如何查找某个对象的定义情况
·讲解Oracle中JOB与存储过程的接合用法
·深入讲解"database link"的设置和使用
  阅读排行
·如何修改遗失的MySQL的ROOT用户密码
·详解远程SHELL下安装配置RedHat ES 5的
·教你如何将MySQL数据库的密码恢复
·教你在MySQL从口令恢复设置的密码
·在 Oracle Enterprise Linux 上升级到
·oracle9i installation on fedora core
·Oracle Instant client介绍
·Oracle高级复制(同步复制)配置步骤详细
·用Oracle归档日志进行恢复的方法
·Linux下的Oracle数据库编程详解
·Linux下Oracle9i RMAN备份及恢复步骤介
·带你轻松接触一些比较常用的sql*plus命
·Oracle的快照复制
·Oracle 数据库存储结构简介
·Oracle HA 在Unix上双机环境的安装指南
网摘收藏: