Oracle8iR3(8.1.7)+PHP4+Apache在RedHat7.1上的安装实例

一.Oracle8iR3的安装
1.        准备安装环境
在http://www.oracle.com 上下载最新的Oracle8iR3版for linux的数据库linux81701.tar。
需要的glibc兼容包都在RedHat7.1的两张安装盘上:
                compat-glibc-6.2-2.1.3.2.rpm
                compat-libs-6.2-3.rpm
                compat-egcs-6.2-1.1.2.14.rpm
将以上的软件包以root的身份正确安装。
到http://www.blackdown.org/ 上下载Oracle创建数据库时用到的JDK,文件名称为:jdk118_v3-glibc-2.1.3.tar.bz2 不要下在最新的jdk包,只有此包能够支持Oracle8iR3。将文件下载到/usr/local目录下,并解压此文件:
        # tar xvlf jdk118_v3-glibc-2.1.3.tar.bz2
        #l n ?s /usr/local/jdk118_v3 /usr/local/java
这样安装Oracle8i的软件环境已经准备好了。
2.建立安装组和帐号
以root身份登录到系统中:
添加用户组
# groupadd oinstall
# groupadd dba
# groupadd oper
建立安装帐号
# useradd oracle-g oinstall ?G dba,oper
#passwd oracle (设置密码)
创建oracle8i的安装点
mkdir /u01
改变安装点的属主和属性
# chown oracle.dba /u01
#chmod 755 /u01
3.修改安装帐户的运行环境
以oracle帐户登录到系统中,编辑.bash_profile文件,添加以下内容:
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/8.1.7; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$PATHORACLE_HOME/bin; export PATH
CLASSPATH=.ORACLE_HOME/jdbc/lib/classes111.zip; export CLASSPATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
NLS_LANG=AMERICAN.AMERICA.UTF8; export NLS_LANG
LD_ASSUME_KERNEL=2.2.5; export  LD_ASSUME_KERNEL
. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh
注销oracle帐号并重新登录,用env检查环境变量是否正确。
4.解压Oracle8iR3的安装程序
以root身份登录,将Oracle安装包linux81701.tar拷贝到/usr/src目录并解包
        # tar xvf linux81701.tar
在/usr/src目录下生成Disk1子目录,退出。
5.安装Oracle8iR3
以oracle用户身份登录,运行Oracle Universal Install
$ cd /usr/src/Disk1
$ ./runInstaller
此时会出现图形窗口,单击Next按钮,检查Source path是否为/usr/src/Disk1/stage/products.jar,
而目的路径是否为上文中定义的$ORACLE_HOME环境值,再单击Next按钮;
在Unix Group Name中填入oinstall,单击Next按钮;
此时会弹出一个对话框提示需要运行orainstRoot.sh脚本,
打开新的terminal窗口
su root
(输入root口令)
cd $ORACLE_HOME
./orainstRoot.sh

暂时不关闭此窗口;
回到刚才的弹出对话框,单击Retry按钮;
选择Oracle 8i Enterprise Edition 8.1.7.0.1,单击Next按钮;
选择Typical,单击Next按钮;
此时安装程序提示输入global database name(全局数据库名),由用户自己定义;
检查ORACLE_SID是否与上文中环境参数中定义的值一致,单击Next按钮;
接下来提示输入数据库文件的位置,可以输入/u01,单击Next按钮;
此时安装程序提示确定JDK home directory,检查是否为/usr/local/java,单击Next按钮;
然后出现汇总窗口,单击Install按钮,软件正式开始安装;

当文件拷贝连接完成后,会弹出对话框要求运行root.sh,
回到刚才打开的terminal窗口,仍以root身份运行

cd $ORACLE_HOME
./root.sh

提示输入Path to your local bin directory时按Enter键即可;

exit (退出root权限)
exit (关闭terminal窗口)

返回对话框并单击OK按钮;

Oracle Net8 Configuration开始运行,选择"erform typical configuration"并单击Next按钮;
Database Configuration Assistant开始运行,当数据库创建完成时单击OK按钮;
Oracle会启动7777端口的webserver,无需干预;
出现End of Installation屏幕时单击exit按钮,安装过程结束.
6. 试运行
在terminal中运行
1)启动TNS Listener服务进程

lsnrctl start

2)加载并运行数据库实例

svrmgrl
SVRMGR>connect internal
SVRMGR>connected.
SVRMGR>startup
......
SVRMGR>quit

3)查询示例数据库

sqlplus scott/tiger@orcl
select * from emp;
......
二.PHP4的安装
从http://www.php.net 下载最新的源程序包:php-4.0.6.tar.gz 到/usr/local/src目录并解包:
# tar zxvf php-4.0.6.tar.gz
修改编译时要用到的库文件libpthread.so.0
# cd /lib
# rm libpthread.so.0
# ln ?s /usr/i386-glibc21-linux/lib/libpthread-0.8.so libpthread.so.0
开始配置PHP4的编译参数:
# cd /usr/local/src/php-4.0.6
# ./configure ?prefix=/usr --with-config-file-path=/etc --disable-debug --enable-inline-optimization --without-mysql --with-oci8=/u01/app/oracle/8.1.7 --enable-sigchild --with-apxs
当程序自动配置完成后,就可以编译程序了
#make
如果编译没有问题,就可以安装了
#make install
#cp php.ini-dist /etc/php.ini
重新启动apache,用下面的文件在浏览器中检测是否安装成功。
<?php
phpinfo()
?>
你的系统一切都OK了吗?反正我的是没有问题的。
记得把改过的库文件再改回去,以免出现编译程序的错误。
# rm /lib/libpthread.so.0
# ln -s /lib/libpthread-0.9.so /lib/libpthread.so.0