本文借鉴了http://www.puschitz.com/的文章:
installing oracle 9i on redhat linux 7.1, 7.2, 7.3, 8.0, 9, red hat advanced server 2.1, and on red hat enterprise linux advanced server 3 (rhel as 3)
机器配置:hp lh6000
cpu piii 700
内存 512m
两块 36g硬盘,做raid0
linux版本:redhat linux.7.1
分区: /boot :100m swap :1024m / :所有剩余空间
选择安装xwindow、kde。
设置xwindow可以支持如xmanager这样的工具远程登陆linux。设置如下:
#vi /etc/x11/xdm/xdm-config
在最后一行: displaymanager.requestport: 0 前面加!号注释掉此行。
#vi /etc/x11/xdm/xservers
在最后一行::0 local /usr/x11r6/bin/x 前面加#号注释掉这一行。
#vi /etc/x11/xdm/xaccess
找到#* #any host can get a login window
把这一行前面的#号去掉,变成:
* #any host can get a login window
最后运行#xdm。这样使用xmanager等工具就可以连接linux了!!!
如果想要每次启动自动启动xdm,那么请在/etc/rc.d/rc.local文件尾部加入/etc/x11r6/bin/xdm
安装oracle9i
oracle9i for linux 可以从下面的站点下载:
http://otn.oracle.com/software/products/oracle9i/htdocs/linuxsoft.htm
一共有三个软件包:
linux9i_disk1.cpio.gz
linux9i_disk2.cpio.gz
linux9i_disk3.cpio.gz
解包
如果要一步解开这些包使用如下命令:
zcat linux9i_disk1.cpio.gz cpio -idmv
zcat linux9i_disk2.cpio.gz cpio -idmv
zcat linux9i_disk3.cpio.gz cpio –idmv
如果两步解开这些包:
第一步:解压
#gunzip -d linux9i_disk1.cpio.gz
#gunzip -d linux9i_disk2.cpio.gz
#gunzip -d linux9i_disk3.cpio.gz
第二步:解包:
cpio -idmv < linux9i_withjre_disk1.cpio
cpio -idmv < linux9i_nojre_disk2.cpio
cpio -idmv < linux9i_disk3.cpio
进行完上面的操作后,会得到disk1, disk2 ,disk3 三个文件夹。这三个文件夹是oracle9i的安装文件
交换空间
oracle 推荐的交换空间大小为物理内存的两倍或者最少 512mb,采用两者之中大的那个值。我建议使用更多的交换空间,特别是你有其他的程序运行在 oracle 服务器上时,我的 pc 有 256mb 内存,我使用了 600mb 的交换空间。如果在安装 oracle 时没有足够的交换空间,特别是在建库时,将会导致系统几分钟没有任何反应。
检查交换空间:
cat /proc/swaps
增加交换空间:
dd if=/dev/zero of=tmpswap bs=1k count=300000
chmod 600 tmpswap
mkswap tmpswap
swapon tmpswap
"binutils" rpm 版本的问题
7.1 和 7.2 随带的 binutils rpm 包使 9i 的 universial installer 不能跑起来,也没有更新的版本能解决这个问题,你可以有两个选择:
下载下面版本的 rpm 包,“降级” oracle 服务器上的 binutil :
ftp://ftp.redhat.com/pub/redhat/linux/7.0/en/os/i386/redhat/rpms/binutils-2.10.0.18-1.i386.rpm
安装:binutils-2.10.0.18-1.i386.rpm
#rpm –uvh --force --nodeps binutils-2.10.0.18-1.i386.rpm
安装完 oracle 后,别忘了把 binutil 升级回去。
另外一个简单的办法时在安装中等待出现下面的错误,然后手工修复:
"error invoking target install of makefile /opt/oracle/product/9.0.1/plsql/lib/ins_plsql.mk"
修复方法:
编辑 $oracle_home/bin/genclntsh 把
ld_self_contained="-z defs"
改成:
ld_self_contained=""
然后运行脚本:$oracle_home/bin/genclntsh:
$ $oracle_home/bin/genclntsh
created /opt/oracle/product/9.0.1/lib/libclntst9.a
然后选择重试。
安装 jdk
下载 jdk 1.3.1 或者 blackdown 1.1.8_v3(我总是使用 blackdown ,这是 oracle 以前推荐给 linux 用户的)。
根据 jdk 的文档,把 jdk 安装在 /usr/local 目录下并建立 jdk 的符号连接到 /usr/local/java:
#bzip2 -dc jdk118_v3-glibc-2.1.3.tar.bz2 tar xf - -c /usr/local
#ln -s /usr/local/jdk118_v3 /usr/local/java
建立 oracle 用户
groupadd dba
groupadd oinstall
useradd -g oinstall -g dba oracle
passwd oracle
建立 oracle 目录
mkdir /opt/oracle
mkdir /opt/oracle/product
mkdir /opt/oracle/product/9.0.1
chown -r oracle.oinstall /opt/oracle
mkdir /var/opt/oracle
chown oracle.dba /var/opt/oracle
chmod 755 /var/opt/oracle
设置 oracle 环境
以 oracle 用户进入,建立 $home/.bash_profile:
# oracle environment
export oracle_base=/opt/oracle
export oracle_home=/opt/oracle/product/9.0.1
export oracle_sid=test
export oracle_term=xterm
#export tns_admin= 设置这个变量,如果 sq.net.ora, tnsnames.ora等不在$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:/usr/openwin/lib
ld_library_path=$ld_library_path:/usr/td/lib:/usr/ucblib:/usr/local/lib
export ld_library_path
# set shell search paths:
path=/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:/usr/ccs/bin:/usr/openwin/bin:/opt/local/gnu/bin
path=$path:/opt/local/bin:/opt/nscpnav/bin:$oracle_home/bin
path=$path:/usr/local/samba/bin:/usr/ucb:
export path
# classpath must include the following jre locations:
classpath=$oracle_home/jre:$oracle_home/jlib:$oracle_home/rdbms/jlib
classpath=$classpath:$oracle_home.network/jlib
以下是我的$home/.bash_profile文件的内容
# .bash_profile# get the aliases and functionsif [ -f ~/.bashrc ]; then . ~/.bashrcfi# user specific environment and startup programspath=$path:$home/binbash_env=$home/.bashrcexport bash_env pathunset usernameexport oracle_base=/opt/oracle export oracle_home=/opt/oracle/product/9.0.1 export oracle_sid=test export oracle_term=xterm export nls_lang=american; export ora_nls33=$oracle_home/ocommon/nls/admin/data ld_library_path=$oracle_home/lib:/lib:/usr/lib:/usr/openwin/lib ld_library_path=$ld_library_path:/usr/td/lib:/usr/ucblib:/usr/local/lib export ld_library_path path=/bin:/usr/bin:/usr/sbin:/etc:/opt/bin:/usr/ccs/bin:/usr/openwin/bin:/opt/local/gnu/bin path=$path:/opt/local/bin:/opt/nscpnav/bin:$oracle_home/bin path=$path:/usr/local/samba/bin:/usr/ucb: export path classpath=$oracle_home/jre:$oracle_home/jlib:$oracle_home/rdbms/jlib classpath=$classpath:$oracle_home.network/jlib export classpath
启动 runinstaller
oracle 不再支持字符模式的安装,因此必须设置 display 变量,假设节点名为 oracleserver,那么 oracleserver 必须允许 runinstaller 显示 x 信息。如果你不在远程安装数据库,可以跳过下面的第一和第二步。
第一步:yourdesktop:user$ xhost +oracleserver
第二步:从 oracleserver 的控制台上以 oracle 用户执行:
oracleserver:oracle$ export display=yourdesktop:0.0
第三步a:从第一张 cd ,执行 runinstaller (不要 cd 到 /mnt/cdrom !)
oracleserver:oracle$ mount /mnt/cdrom
oracleserver:oracle$ /mnt/cdrom/runinstaller
第三步b:或者从下载点:
oracleserver:oracle$ disk1/runinstaller
(注意:使用我的这种安装方式,不用设置display变量)
运行 oracle 安装
下面是我回答 runinstaller 的问题: what would you like as the base directory (inventory location): /opt/oracle/orainventory
unix group name (permission for updating oracle software): oinstall
full path name of the oracle home: /opt/oracle/product/9.0.1
jdk home directory: /usr/local/java
注意:
如果没有“降级” binutils 包的话,安装到第三张 cd 时,你会看到下面的错误:
"error invoking target install of makefile /opt/oracle/product/9.0.1/plsql/lib/ins_plsql.mk"
解决的办法请看后面的“oracle 安装错误”。
你可能还会碰到 "oracle.net configuration assistant" 挂起的问题,请参考后面的”oracle 安装中重要的技巧和提示“。
启动 oracle 9i 数据库
9i 中已经没有 svrmgrl 了,所有的管理工作都听过 sqlplus 来完成:
dba$ sqlplus /nolog
sql> connect / as sysdba
sql> startup
'www.knowsky.com
oracle 安装中重要的技巧和提示
如果遇到 gunzip 出错,检查文件的校验和:
$ md5sum linux9i_disk1.cpio.gz linux9i_disk2.cpio.gz linux9i_disk3.cpio.gz
f1a99eb8c8aca1d69a9eeaa8858570d7 linux9i_disk1.cpio.gz
f2444c0fa53c898e7d2f78c184829d7d linux9i_disk2.cpio.gz
ec655402d8bc547ed031f14122da574b linux9i_disk3.cpio.gz
不要 cd 到 /mnt/cdrom 执行 ./runinstaller !
否则你将不能在安装时弹出 cd,因为 unmount 不能把挂接着的 cd 卸下来。
如果忘记了设置 display 环境变量或者忘记赋予数据库服务器在桌面 pc 上显示 x 信息的权限(例如: xhost +oracleserver),将得到下面的错误:
xlib: connection to ":0.0" refused by server
xlib: client is not authorized to connect to server
解决的办法是:rm -rf /tmp/orainstall
如果不这样做,安装程序将挂在那里,没有任何错误信息。同时也要检查 runinstaller 是否在后台停止了运行。
当 runinstaller 开始配置工具时,"oracle.net configuration assistant" 会挂起,简单的解决办法是停止其配置,重新配置或者继续安装,当其他安装结束后,再来一次“retry"。
如果在安装中系统停止了反应,可能就是没有足够的交换空间了。如果发生这样的事情,只能等待到系统反应为止。
oracle 的安装还需要运行 make 等程序,在生产环境中,你或许没有安装编译器和其他开发工具,所以,需要临时安装下面的几个包:
cpp, egcs, egcs-c++, glibc-devel, kernel-headers 。
如果不能成功安装 9i 而需要重来的话,需要清除下面的文件和目录:
rm -rf /etc/orainst.loc /etc/oratab /tmp/orainstall
rm -rf $oracle_base/*
/tmp/
oracle 安装错误
下面是别人关于 oracle 安装时碰到的问题和解决的办法,我并没有遇到其中的大多数问题,因此不能确定这些解答是否正确,如果你有好的解决办法或者其他问题,可以写信给我,我将会加入到这个文件中。
首先检查/tmp/orainstall 中的错误日志,如果遇到 make 的错误,检查: $oracle_home/install/make.log 。
"error invoking target install of makefile /opt/oracle/product/9.0.1/plsql/lib/ins_plsql.mk"
"error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins-precomp.mk"
"error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins.net-client"
"error invoking target install of makefile /opt/oracle/product/9.0.1/precomp/lib/ins-oemagent"
编辑 $oracle_home/bin/genclntsh 把
ld_self_contained="-z defs"
改成:
ld_self_contained=""
然后运行脚本:$oracle_home/bin/genclntsh:
$ $oracle_home/bin/genclntsh
created /opt/oracle/product/9.0.1/lib/libclntst9.a
$
在错误对话框中点击 重试。
"error in setting permissions of file/directory /opt/oracle/jre/1.1.8/bin/i686/native_threads/.extract_args.
当错误框打开时,手工找到并从安装 jre 的目录下拷贝文件 .extract_args 到 runinstaller 提示文件丢失的地方。
安装jdk1.3.1
我使用的安装包是j2sdk-1_3_1-linux-i386-rpm.bin
#chmod +x j2sdk-1_3_1-linux-i386-rpm.bin
#./ j2sdk-1_3_1-linux-i386-rpm.bin
这样就会生成rpm安装包
#rpm –ivh j2sdk-1_3_1-linux-i386-rpm
安装成功后,jdk将被安装在/usr/java/jdk1.3.1目录下
编辑/etc/profile文件,加入如下几行:
java_home=/usr/java/jdk1.3.1
export java_home
classpath=/usr/java/jdk1.3.1/lib:/usr/java/jdk1.3.1/jre/lib
export classpath
path=$path:/usr/java/jdk1.3.1/bin:/usr/java/jdk1.3.1/jre/bin
然后推出。jdk安装设置就完成了。
验证jdk的安装:
#java -version
会提示java的版本是1.3.1的。
安装tomcat。
下载tomcat的安装文件:jakarta-tomcat.tar.gz
#tar zxvf jakarta-tomcat.tar.gz
#cp –r jakarta-tomcat /usr/tomcat (将解压的文件夹复制到/usr下)
#cd /usr/tomcat/bin
#./startup.sh (启动tomcat)
验证tomcat正常运行
在ie浏览器输入tomcatserver:8080">http://tomcatserver:8080
如果出现tomcat的界面就是成功了!!!很简单的!!!
如果要连接oracle,需要编辑/ust/tomcat/conf目录下的server.xml文件。还要有oracle的驱动程序!
终于写完了!!!!累!!!!!!
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器