Red Linux 6.0下安装Oracle 10g
一. 环境说明
RedHat Enterprise Linux 6.0 + Virtual Box 4.1.8 + Oracle 10g
二. 安装前配置
1. 安装Oracle 10g R2所需的软件包
用root登录到系统,依次安装以下包
# cd /mnt/cdrom/Server/# rpm -Uvh setarch-2*# rpm -Uvh make-3*# rpm -Uvh glibc-2*(这里匹配了两个软件包 有一个i386无法安装,直接# rpm -Uvh glibc-2*i686* 就行了)# rpm -Uvh libaio-0*# rpm -Uvh compat-libstdc++-33-3*# rpm -Uvh kernel-headers-*# rpm -Uvh glibc-header-*# rpm -Uvh glibc-devel-2*# rpm -Uvh compat-gcc-34-3*(依次依赖于上面三个软件包)# rpm -Uvh compat-gcc-34-c++-3*# rpm -Uvh libgomp-4*# rpm -Uvh gcc-4*(依赖于上面一个软件包)# rpm -Uvh libXp-1*# rpm -Uvh openmotif22-*# rpm -Uvh compat-db-4*
注意:此软件位于linux安装盘下Server目录中,是安装oracle数据库必须用到的软件包。挂载ISO镜像文件使用mount XXX.ISO /mnt -o loop
2. 修改/etc/redhat-release文件
因为Oracle 10g官方只支持到RHEL4为止,所以需要更改版本说明,编辑/etc/redhat-release文件,删除Red Hat Enterprise Linux Server release 6 ,改为redhat-4(最好备份一下安装完毕之后还原即可)
3.修改内核参数
#vi /etc/sysctl.conf
kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 65536net.ipv4.ip_local_port_range = 1024 65000net.core.rmem_default=262144net.core.rmem_max=262144net.core.wmem_default=262144net.core.wmem_max=262144
注意:自修改上面内核参数的时候有kernel.shmall=”16475728”Kernel.shmmax=”268435468”;如果参数太大,会在安装数据库创建数据库是出现“out of memory”的错误。
使更改立即生效,使用下面的命令:
#sysctl -p
4.建立安装Oracle需要的用户,组,及目录
#groupadd oinstall#groupadd dba#useradd -g oinstall -G dba oracle#passwd oracle#mkdir /oracle#chown -R oracle:oinstall /oracle#chmod -R 775 /oracle
安装oracle的目录建议安装在一个单独的分区或者磁盘上。
5.设置oracle用户的shell limit
#vi /etc/security/limits.conf
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536
接下来更改/etc/pam.d/login文件,添加下面的内容,使shell limit生效:
#vi /etc/pam.d/login
session required pam_limits.so
6.配置IP地址(已经将redhat linux 设置成静态ip的跳过)
安装RHEL的时候最好采用静态IP地址,如果当时选择的是DHCP,现在需要更改/etc/sysconfig/network-scripts/ifcfg-eth0文件
[root@TSM54-Test network-scripts]# cat ifcfg-eth0# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]DEVICE=eth0BOOTPROTO=staticHWADDR=00:0C:29:4B:17:C4ONBOOT=yesIPADDR=192.168.68.98NETMASK=255.255.255.0GATEWAY=192.168.68.10
7.配置oracle用户的环境变量
下面的操作,该用oracle用户登陆执行了。(注销root以oracle登录)
为了防止安装oracle时出现乱码,先把语言环境改为英文,在终端里输入(安装时发现图形界面不清楚就是没有设置语言造成的):
[oracle@TSM54-TEST ~]$export LC_CTYPE=en_US.UTF-8
接下来,编辑/home/oracle目录下的.bash_profile文件,添加如下内容:
export ORACLE_BASE=/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_SID=orclexport PATH=$PATH:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/libCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibexport CLASSPATHif [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fifi
注意:在添加环境配置的时候要将原来的path、export 注释掉;环境变量配置如有变动,应该修改如上面的配置;不然会导致数据库启动命令无效的错误。
三. 安装Oracle 10g
我把10201_database_linux32.zip放在/opt目录下,并通过#unzip 10201_database_linux32.zip解压,现在使用oracle用户到/opt/database目录下执行安装:
[oracle@TSM54-Test opt]$ cd /opt/database/[oracle@TSM54-Test database]$ lsdoc install response runInstaller stage welcome.html[oracle@TSM54-Test database]$ ./runInstaller
1.选择安装类型,这里我选择高级安装,如下图所示:

2.指定证书存放目录,如图所示:

3.选择安装的数据库类型及oracle所支持的语言,这里选择企业版,语言选择英文和简体中文,如下图所示:

4.指定oracle环境变量,安装路径。因为我们在.bash_profile中已经声明,所以这里会自动填充.如下图所示:

注意:环境变量中配置的文件夹为“ORACLE_BASE=/oracle”
5.Oracle开始进行安装前的检查工作,如下图所示:

6.选择配置选项,如下图所示:

7.选择创建的数据库模式,如下图所示:

8.指定数据库配置的相关选项(SID、字符集等),如下图所示:

9.选择数据库管理选项,如下图所示:

10.指定数据库存储选项,如下图所示:

11.指定数据库备份回复选项,如下图所示:

12. 指定数据库相关用户密码,如下图所示:

13.显示安装概要,如下图所示:

14.开始安装,如下图所示:



15. 上面的窗口点击OK后,会出现下图显示的内容:
需要root权限执行
#/oracle/oraInventory/orainstRoot.sh
#/oracle/product/10.2.0/db_1/root.sh

16.安装结束,如下图所示:

17.安装完成后,恢复语言环境以及版本信息
#export LC_CTYPE=zh_CN.UTF-8#vi /etc/redhat-releaseRed Hat Enterprise Linux Server release 6
四. 后续
1.安装完成后,首先应该启动监听器。
监听器接受客户端的连接请求,并在验证证书后创建数据库连接。要使用OEM或iSQL*PLUS,必须先启动监听器。
注意:需要用命令: su oracle登录,然后启动数据库
[oracle@TSM54-Test database]$ lsnrctl start[oracle@TSM54-Test database]$ lsnrctl stop
2.使用Oracle Enterprise Manager 10g进行数据库控制
启动和停止OEM的命令为:
[oracle@TSM54-Test database]$emctl start dbconsole[oracle@TSM54-Test database]$emctl stop dbconsole
在web浏览器中,输入:http://192.168.68.98:1158/em (如果服务器没有进行DNS解析,则可以用IP地址)
用户名:SYS
口令:<安装过程中建立的口令>
连接为:SYSDBA
3.使用iSQL*Plus访问数据库
启动和停止iSQL*Plus命令:
[oracle@TSM54-Test database]$isqlplusctl start[oracle@TSM54-Test database]$isqlplusctl stop
iSQL*Plus是历史悠久的SQL*Plus交互式工具的基于web的版本,用于访问数据库。要使用iSQL*Plus,请单击OEM控制台相关连接部分中的iSQL*Plus链接,或将浏览器指向安装过程中提供的iSQL*Plus URL。
在web浏览器中,输入:
http://192.168.68.98:5560/isqlplus
用户名:SYSTEM
口令:<安装过程中创建的口令>
连接标识:orcl
4.启动和停止数据库
启动和停止数据库的最简单方法是从 OEM 控制台启动和停止。要从命令行执行此操作,请在以 oracle 身份登录后使用 SQL*Plus,如下所示:
启动:
$ sqlplusSQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:27:48 2004Copyright (c) 1982, 2004, Oracle.All rights reserved.Enter user-name:/ as sysdbaConnected to an idle instance.SQL> startupORACLE instance started.Total System Global Area 188743680 bytesFixed Size 778036 bytesVariable Size 162275532 bytesDatabase Buffers 25165824 bytesRedo Buffers 524288 bytesDatabase mounted.Database opened.SQL> exitShutdown:$ sqlplusSQL*Plus:Release 10.1.0.2.0 - Production on Sun Jun 13 22:25:55 2004Copyright (c) 1982, 2004, Oracle.All rights reserved.Enter user-name:/ as sysdbaConnected to:Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> exit

五. 卸载ORACLE
1. 运行 $ORACLE_HOME/bin/localconfig delete
2. rm -rf $ORACLE_BASE/*
3. rm -f /etc/oraInst.loc /etc/oratab
4. rm -rf /etc/oracle
5. rm -f /etc/inittab.cssd
6. rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv
7. 删除oracle用户和组。
注:卸载方法是来自google。我曾用此方法删除oracle 11g(安装11的时候选择的是ASM)。
六. 关于Oracle 11g Release 1 的安装
Oracle 11gR1 已经支持RHEL5了,所以不用再更改redhat-release文件。
另外安装所依赖的包有如下:
binutils-2.17.50.0.6-2.el5 compat-libstdc++-33-3.2.3-61 elfutils-libelf-0.125-3.el5 elfutils-libelf-devel-0.125 glibc-2.5-12 glibc-common-2.5-12 glibc-devel-2.5-12 gcc-4.1.1-52 gcc-c++-4.1.1-52 libaio-0.3.106 libaio-devel-0.3.106 libgcc-4.1.1-52 libstdc++-4.1.1 libstdc++-devel-4.1.1-52.e15 make-3.81-1.1 sysstat-7.0.0 unixODBC-2.2.11 unixODBC-devel-2.2.11
七. 参考资料
inux下oracle 10g安装(超级详细图解教程)
http://xjzhujunjie.blog.51cto.com/3582724/863367
Linux (RHEL 5.4)下安装 Oracle 10g R2
http://blog.csdn.net/robinson_0612/article/details/5431428
linux挂载ISO文件
http://zhidao.baidu.com/question/20161944.html

@Wentasy 博文仅供参考,欢迎大家来访。如有错误之处,希望批评指正。原创博文如需转载请注明出处,谢谢 :) [CSDN博客]- 2楼qitian0008前天 21:56
- 每个图都要截取!真心的不容易!顶一个!
- Re: Wentasy前天 21:58
- 回复qitian0008nO(∩_∩)O~
- 1楼linwaterbin前天 21:38
- 可以用脚本自动安装、10分钟的事儿(^ω^)n之前、我有发过一个帖子:http://bbs.51cto.com/thread-1008941-1.html
- Re: Wentasy前天 21:51
- 回复linwaterbinnO(∩_∩)O~,多谢水彬兄,改天试下。