测试通过解压Oracle软件#gunzip 10201_database_linux_x86_64.cpio.gz#cpio -idmv < 10201_database_linux_x86_64.cpio1. 在安装数据库之前,先把jdk配好。
1)查询所需安装包是否完整# rpm -q gcc make binutils openmotif setarch libXp2)插入redhat 5安装光盘,以文件夹形式打开,搜索全部以rpm结尾的文件3)找出第1步所缺少的文件,还要找出所有的以compat开头的文件,全部装上他们。有的装不上需要依赖其它包的,那就跳过,等装完能装的了,再来装这 些剩下的就可以了。但是libXp一定要装,就算光盘上没有或装不上,也要上网上下一个。
注:以 root 用户身份登录后执行下命令3. 设置交换分区,最好是大于或等于你的内存。具体情况是,小于2G的,swap设为你内存的2倍。内存为2~4G的设为1~2倍。后面的我就莫试过了, 需要的话可以上网查。如果swap小于你的内存,oracle安装检测时,好像会报错的。我的内存是3G,已有swap为2G,所以只要再加2G的 swap就可以了。
1)# grep MemTotal /proc/meminfo //查看内存# grep SwapTotal /proc/meminfo //查看交换空间2)如果交换空间不够,该咋办呢?请往下看。
# cd /usr //这里建议在/usr里建swap,你也可以自己决定,最好是个单独的分区# dd if=/dev/zero of=swap bs=1024 count=2097152//bs是设定块的大小,这里的意思就是1块的大小是1024,count是由1024*2048(2G)得来的# /sbin/mkswap swap //创建交换文件# /sbin/swapon swap //激活当前swap文件# /sbin/swapon -s //查看swap是否激活# vi /etc/fstab //编辑fstab文件,让开机时自动启动-,在行尾加上-如下语句/var/swapfile swap swap defaults 0 04. 修改参数,这里我就不多说了,网上这样的介绍多的是。
修改完内核参数后不必重启系统。其中给出的是最小值,如果系统使用的值较大,就不要更改它。
1)#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保存后,再运行sysctl -p应用以上参数2)# vi /etc/security/limits.conf 最后一行添加如下内容:
#use for oracle* soft nproc 2047* hard nproc 16384* soft nofile 1024* hard nofile 655363)# vi /etc/pam.d/login 行尾添加以下内容#use for oraclesession required pam_limits.so4)# vi /etc/selinux/config 更改以下内容SELINUX=disabled //oracle不兼容SELINUX5)修改/etc/redhat-release文件,这样安装的时候能通过,oracle10不支付rh5# vi /etc/redhat-release改为:
#Red Hat Enterprise Linux Server release 5 (Tikanga)Red Hat Enterprise Linux AS release 4 (Nahant Update 4)//装好oracle后还要改回来的5. 建立安装Oracle需要的用户,组,及目录安装oracle的目录建议安装在一个单独的分区或者磁盘上。
1)创建组:
#groupadd oinstall#groupadd dba2)创建oracle用户:
#useradd -m -g oinstall -G dba oracle3)设置用户密码:
# passwd oracle //这里随你,我这样设的后果就是它会说这是一个糟糕的密码4)# mkdir -p /u01/app/oracle //软件安装位置5)# mkdir -p /u02/oradata //数据文件存放位置6)# chown -R oracle:oinstall /u017)# chown -R oracle:oinstall /u01/app/oracle/ /u02/oradata/8)# chmod -R 775 /u01/app/oracle/ /u02/oradata///以上三行是赋给用户文件的使用权限6. 配置oracle用户的语言版本和环境变量注意:下面的操作,用oracle用户登陆执行,必须是界面登陆,不能是终端切换1)$ export LC_CTYPE=zh_CN.GB2312-8//这是避免安装软件时出现乱码,可根据安装时的错误提示更改编码格式2)接下来,编辑/home/oracle目录下的。bash_profile文件:
$ vi /home/oracle/.bash_profileexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_HOME_LISTNER=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_SID=oracleexport PATH=$HOME/bin:$ORACLE_HOME/bin:${PATH}
export ORACLE_TERM=xtermexport TNS_ADMIN=$ORACLE_HOME/network/adminexport ORA_NLS10=$ORACLE_HOME/nls/dataexport LD_LIBRARY_PATH=$ORACLE_HOME/libexport LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/libexport LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/libexport CLASSPATH=$ORACLE_HOME/JREexport CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlibexport CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlibexport CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlibexport THREADS_FLAG=nativeexport TEMP=/app/tempexport TMPDIR=/app/tempexport LANG=zh_CN.UTF-8unset USERNAMEumask 022准备工作完毕,现在是办正事7. 安装Oracle 10g把下载好的10201_database_linux32.zip,放在/opt目录下,在终端切换到root用户,通过下列命令解压,得到database文件夹# unzip 10201_database_linux32.zip切回oracle用户到/opt/database目录下执行安装:
0)$ cd /opt/database$ export DISPLAY=":0.0"$ ./runInstaller进入Oracle10g安装界面1)选择安装类型,这里选择高级安装(最下面的)。
2)指定证书存放目录。/u01/app/oracle/oraInventory3)选择安装的数据库类型及oracle所支持的语言,这里选择企业版,语言选择English和Simplified Chinese。
(选择Enterprise Edition,语言要简体中文的)4)指定oracle环境变量,安装路径。/u01/app/oracle/product/10.2.0/db_15)Oracle开始安装前进行自动检查,只是网络检查是要手工确认的,点继续。
6)选择配置选项。(第一个,安装数据库)7)选择创建的数据库模式。(第一个,通用模式)8)指定数据库配置的相关选项(SID:最好用默认的,字符集:第一个Unicode UTF-8)。
9)选择数据库管理选项。(默认第二个,下一步)10)指定数据库存储选项。(/u02/oradata)11)指定数据库备份回复选项。(我选了不要备份,大家随意,但是选择备份配置起来很麻烦的)。
12)指定数据库相关用户密码。勾上所有用户共用一个密码选项,输入密码,下一步13)显示安装概要。 (next吧~~)14)开始安装。 (等吧~~)15)安装成功后会弹出一个窗口,用root权限执行里面的命令,一定要执行,别大意了,点OK。
16)安装结束。
17)安装完成后,恢复语言环境以及版本信息$ export LC_CTYPE=zh_CN.UTF-8以下root用户权限:
# vi /etc/redhat-release改为:
Red Hat Enterprise Linux Server release 5 (Tikanga)#Red Hat Enterprise Linux AS release 4 (Nahant Update 4)8.启动数据库与监听1)使用root用户修改/etc/oratab文件:
# vi /etc/oratab修改配置文件:
SID名字:/Oracle/app/product/10.2.0/db_1:N为oracle:/Oracle/app/product/10.2.0/db_1:Y2)修改$Oracle_HOME/bin/dbstart文件:
# vi $Oracle_HOME/bin/dbstart把其中的Oracle_HOME_LISTNER=什么东西,注释掉,加上Oracle_HOME_LISTNER=$Oracle_HOME3)修改/增加配置文件,起名字叫oracle,添加下面的script# vi /etc/rc.d/init.d/oracle===== Script ====#!/bin/bash## chkconfig: 35 95 1# description: init script to start/stop oracle database 10g, TNS listener, EMS# match these values to your environment:
export ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1export ORACLE_TERM=xtermexport PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATHexport ORACLE_SID=oracleexport DISPLAY=localhost:0export ORACLE_USER=oracle# see how we are called:
case $1 instart)su - "$ORACLE_USER"《EOOlsnrctl startsqlplus /nolog《EOSconnect / as sysdbastartupEOSemctl start dbconsoleEOOtouch /var/lock/subsys/$scriptname;;stop)su - "$ORACLE_USER"《EOOlsnrctl stopsqlplus /nolog《EOSconnect / as sysdbashutdown immediateEOSemctl stop dbconsoleEOOrm -f /var/lock/subsys/scriptname;;*)echo "Usage: $0 {start|stop}";;esac===========end of script==============4)授权 :
# chown root:root /etc/rc.d/init.d/oracle5)修改文件属性:
# chmod 755 /etc/rc.d/init.d/oracle6)启动/关闭服务:
# service oracle start有可能会报syntax error: unexpected end of file错。
这是因为回车的问题,你用vi把它去掉。在windows里,换行用的两个符号,回车符 换行符 ;在linux下只需一个符号 就可以 了。
# service oracle stop附:卸载(简单,全是rm)1)使用SQL*PLUS停止数据库$ sqlplus /nologSQL> connect / as sysdbaSQL> shutdown [immediate] //方括号内为可选SQL> exit2)停止Listener$ lsnrctl stop3)停止HTTP服务$ $ORACLE_HOME/Apache/Apache/bin/apachectl stop //有些可能没有4)用su或者重新登录到root(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(7)# rm -f /usr/local/bin/dbhome(8)# rm -f /usr/local/bin/oraenv(9)删除oracle用户和组。
# userdel –r oracle# groupdel oinstall# groupdel dba(10)将启动服务删除# chkconfig --del dbora //有些可能没有。