成功在Linux9.0上安装了Oracle9iR2

  
今天成功在Linux9.0 上安装了Oracle9iR2, 下面的步骤是我在网上搜索的,针对自己安装出现的问题进行了部分修改。
 
一、             硬件软件环境:
硬盘       120GB
内存       2G
系统环境      WindosXp  Pro
Linux 运行环境   VMWareWorkStation 4. 5.
 
二、             准备工作:
 
1.             创建Oracle 用户账号:
# groupadd dba           #group of users to be granted with SYSDBA system priviliege
# groupadd oinstall             #group owner of Oracle files
# useradd –c “Oracle software owner” –g oinstall –G dba oracle
# passwd oracle
 
2. 创建Oracle 目录:
本人是把Oracle 安装在/opt 目录下面。如果你的/opt 不是一个单一的文件系统,请确保根文件系统“/”有足够的空间。
# 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
 
3. 设置Oracle 环境(不要复制,最好直接输入,不然会产生非法字符)
编辑Oracle 家目录下面的.bash_profile 文件,注意:RedHat Linux9.0 下要设置LD_ ASSUME_ KERNEL=2.4.1。.bash_profile 文件内容可以如下:
 
# .bash_profile
 
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi
 
# User specific environment and startup programs
 
PATH=$PATH:$HOME/bin
 
export PATH
unset USERNAME
# +------------------------------------------------------------+
# | FILE : .bash_profile |
# +------------------------------------------------------------+
 
umask 022
TERM=xterm; export TERM
TMPDIR=/tmp; export TMPDIR
export ORACLE_SID=ORCL
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/9.2.0
 
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
 
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
 
export ORACLE_OWNER=oracle
export ORACLE_TERM=xterm
 
#export LDEMULATION=elf_i386_glibc21
export GCC_EXEC_PREFIX=/usr/i386-glibc21-linux/lib/gcc-lib/
export LD_ASSUME_KERNEL=2.4.1
PATH=$PATH:$ORACLE_HOME/bin:/opt/bin:/bin:/usr/bin:/usr/local/bin:/usr/sbin:/usr/X11R6/bin:/usr/java/j2sdk1.4.2_04/bin:.
export PATH
export JAVA_HOME=/usr/java/j2sdk1.4.2_04
export CLASSPATH=$ORACLE_HOME/jdbc/lib/classes12.zip:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib:.
echo ".bash_profile executed"
 
              其实不设置CLASSPATH环境变量,也可以成功安装Oracle9iR2
 
              4. 设置交换空间
 
为了执行Oracle 9i 标准安装和创建原形数据库,Oracle 建议服务器至少需要512M内存的交换空间。
       查看内存大小,可以用以下命令:
# grep MemTotal /proc/meminfo
查看交换空间大小,可以用以下命令:
# cat /proc/swaps
不过可以通过建立临时交换文件来增加交换空间,代替使用原始设备。
# dd if=/dev/zero of=tmpwap bs=1k count=900000
# chmod 600 tmpswp
# mkswap tmpswap
# swapon tmpswap
取消临时交换空间,可以这样:
# swapoff tmpswap
# rm –rf tmpswap
 
5. 设置Linux 内核参数:
修改 /etc/sysctl.conf 这个文件,加入以下的语句:
kernel.shmmax = 2147483648 ( 机器内存2G ,如果你的没这么大可相应设置小些)
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
 
sem 4 个参数依次为SEMMSL( 每个用户拥有信号量最大数) SEMMNS( 系统信号量最大数) SEMOPM( 每次semopm 系统调用操作数) SEMMNI( 系统辛苦量集数最大数).
Shmmax 最大共享内存2GB 物理内存如果小的话可以设置成 536870912.
Shmmni 最小共享内存 4096KB.
Shmall 所有内存大小.
 
设置完成后用命令 more /etc/sysctl.conf |grep kernel.s 检查.
 
3 、设置oracle 对文件的要求:
编辑文件:/etc/security/limits.conf 加入以下语句:
oracle    soft    nofile    65536
oracle    hard    nofile    65536
oracle    soft    nproc    16384
oracle    hard    nproc    16384
 
 
 
 
6. 检查/tmp 空间
 
Oracle 通用安装程序需要400M以上的临时空间
检查/tmp 临时空间,可以用:
# df /tmp
如果没有足够的/tmp 空间,可以临时在另一个文件系统中建立一个tmp 目录。
# mkdir /<AnotherFileSystem>/tmp
# chown root.root /<AnotherFileSystem>/tmp
# chmod 1777 /<AnotherFileSystem>/tmp
# export TEMP=/<AnotherFileSystem>/tmp                  #used by Oracle
# export TMPDIR=/<AnotherFileSystem>                    #used by Linux programs
当安装完Oracle 之后,关闭Oracle 并删除临时目录:
# rmdir /<AnotherFileSystem>/tmp
# unset TEMP
# unset TMPDIR
 
7. 检查开发包:
 
运行以下命令,看看这些软件包有没有被安装:
# rpm –q gcc cpp compat-libstdc++ glibc-devel glibc-kernheaders binutils
如果没有被安装,可以这样安装软件包:
# rpm –ivh gcc-3.2.2-5.i386.rpm
 
8.       安装JDK
 
# sh  j2sdk-1_4_2_04-linux-i586.bin
# rpm j2sdk-1_4_2_04-linux-i586.rpm

有资料说Oracle9iR2 可以跳过这部分内容,不在系统中安装JDK ,也可以成功安装Oracle9iR2 。意味着Oracle 现在能够使用自己的java
下载 j2sdk-1_4_2_04 或Blackdown1.1.8_v3 :(我使用的是 j2sdk-1_4_2_04
       根据JDK 文档,安装到/usr/local 目录下,同时还要建立一个链接JDK 到/usr/local/java ,但是我在使用rpm –ivh j2sdk-1_4_2_04-linux-i586.rpm 时,默认的安装路径却不象RedHat Linux8.0 那样安装到/usr/local/ 目录下,而是安装到了/usr/java 目录下,这在我使用dbca 建库的时候才发现:),不过没有关系,知道她藏在哪儿就可以驾驭了,呵呵。所以在初始环境中我已经改了,大家不必担心。在RedHat Linux8.0 下可以这样链接:
       # ln –s /uar/local/ j2sdk1.4.2_04 /usr/local/java
 
9.       解压Oralce9iR2 for Linux 的安装软件包:
 
把安装文件拷贝到系统中,以免因光驱或盘片等原因造成意想不到的结果:)。
可以一步到位的把文件解压开来:
              # 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
              解包和解压过程中,自动创建了3 个包含安装文件的目录:
              Disk1
              Disk2
              Disk3
              之后就可以安装Oracle9iR2 了,注:要在英文语言环境下安装Oracle9iR2 。否则会出现由于系统与Oracle 字库不同而造成的乱码现象。
      
三、             开始安装:
1. 以oracle 用户登录系统,进行Oracle 的安装:
              $ cd Disk1
              $ ./runInstaller
              过一会儿就会出现Oracle 的安装界面,如下图所示:
              2 .点击“Next ”进行下一步:
 
              3 .选择默认,点击“OK ”继续:
 
              4 .输入组名“oinstall ”,点击“Next ”进行下一步:
 
              5 .按照提示,另开一个终端,以root 用户执行/tpm/orainstRoot.sh 命令:
 
              6 .等命令瞬间执行完毕后,点击“Continue ”进行下一步:
 
              7 .选择默认,点击“Next ”继续:
 
              8 .“Loading product ”后,进入下图所示的安装界面:
 
9 .选择“Oracle9i Database 9.2.0.4.0”并选择“Product Languages ”进行语言的设
置:
              10 .选择支持国语的“Simplified Chinese ”、“Traditional Chinese ”,点击“OK ”:
 
              11 .这里选择“Enterprise Edition (2.56GB )”进行安装,点击“Next ”:
 
              12 .等候安装进程的执行,进入下一个安装界面:
 
              13 .选择“Software Only ”,以后我们可以用dbca 工具来建库:
 
              14 .点击“Install ”,来开始安装数据库了:
 
              15 .安装等候“link pending ……”,继续:
 
              16 .经过漫长的等待,我终于见到了期待已久的界面。
 
17 .安装过程比我预料的好很多,居然没有一个错误提示:)。按照提示,以root 用户在终端执行/opt/oracle/product/9.2.0/root.sh 。如下图所示:
              18 .执行语句后,回车,使用默认的路径,一定要等待语句执行完毕后,才返回安装界面,点击“OK ”:
 
              19 .恭喜恭喜!看到这个画面,就证明数据库已经安装成功了:)。点击“Exit ”退出界面。
 
四、             创建数据库:
 
我在执行dbca 这个工具时,界面都可以正常的进行下去,但是到了最后建库的时候,总是关闭窗口返回终端,并提示dbca 文件内第120 多行有错误。不过这可能就是Oracle 使用本身自带java 造成的问题。按照下面的修改,结果终于可以成功的建库了。
       修改$ORACLE_HOME/bin 目录下面的dbca 文件:
JRE_DIR= /usr/java/ j2sdk1.4.2_04/jre
$JRE_DIR/bin/
java -native -DORACLE_HOME=$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS
else
$JRE_DIR/bin/
java -DORACLE_HOME=$OH -DJDBC_PROTOCOL=thin -mx64m -classpath $CLASSPATH oracle.sysman.assistants.dbca.Dbca $ARGUMENTS
fi
后保存就可以了。
 
 
****************************************************************************
最后建库的时候出现的错误:
1
可能会出现错误提示: /etc/oratab file doesn t exist
可执行下面语句:
#cd /opt/ora9/product/9.2/install/utl
#sh root.sh
2
可能出现ORA-29807 specified operator does not exist 错误
在安装完成后,在$ORACLE_HOME/rdbms/admin 目录下运行utlrp.sql ,用于修补ORA-29807 错误。
****************************************************************************
1 .以 oracle 用户在终端执行 dbca ,就可以建立数据库了,呵呵!如下图所示:
 
 
 
 
                   2 .等待一下,弹出 dbca 的欢迎界面:
 
 
                   3 .点击“ Next ”进行下一步:
 
                   4 .选择“ Create a database ”来创建数据库,点击“ Next ”,继续:
 
                   5 .选择“ New Database ”,点击“ Next ”来创建新的数据库:
 
                   6 .输入数据库的全局名称和 SID 名称, Global Database Name 可以输入如:“ ora9204.oracle.com,SID:ora9204. 也可以输入一同个名称。完成后点击“ Next ”继续:
                   7 .默认选择,点击“ Next ”继续:
 
                   8 .这里同样也是默认选择,点击“ Next ”继续:
 
                   9 .设定 Oracle9iR2 数据库初始参数,初始参数设定的优劣直接影响数据库的执行性能,
这里你也可以选择“ Archive ”标签,把数据库设成为“存档模式”:
 
                   10 .选择“ Character Sets ”进行数据库字符集设定,点击“ Next ”前往下一步:
10.    直接点击“ Next ”进行下一步:
              11 .你可以钩选“Save as a Database Template ”和“Generate Databse Creation Scripts ”,然后点击“Browse ”按钮将DBCA 所做的设定储存为一个新数据库模版和创建数据库时的脚本保存到一个目录下,以便将来建立数据库时可以直接使用。然后点击“Finish ”继续。
              12 .“数据库配置助理”最后会将所有配置设定值整理出一张清单,按下“OK ”后就会开始创建数据库。
 
              13 .要有耐心的等待特别漫长的一段时间后就会进入数据库建库完成的阶段:)。
              14 .出现上面的窗口时就大功告成了!请您自行指定SYS 与SYSTEM 这两个系统管理员的密码。设定完毕后按下“OK ”,就会回到安装成功的画面。
 
              15 .恭喜恭喜了!点击“Next ”退出安装程序,后会跳出OEM 的画面。
              16 .好不容易将Oracle9i 数据库系统安装完毕,接着来验收一下成果吧!
 
              17 .在终端输入ps – ef | grep ora_ 命令来确认Oracle9i 数据库的后台进程已经正常启动。继续:
              18 .接着利用Oracle9i 数据库的客户端工具SQL*Plus 登录数据库,并利用scott (密码为tiger )登录数据库,试着执行指令查询emp 表。就象你看见到上图emp 表的数据,就表示Oracle9i 数据库运作无误!好了,现在检查一下实际安装Oracle9i 数据库后硬盘使用的情况.
 
如果出现
$sqlplus
bash:sqlplus:command not found
 
1 、检查ORACLE_HOME PATH 设置是否正确
2 LN -S $ORACLE_HOME/BIN/SQLPLUS /USR/BIN/
 
             
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值