- 论坛徽章:
- 0
|
http://www.puschitz.com/InstallingOracle9i.shtml
CODE:
[Copy to clipboard]
感谢这些参考文章的作者们,感谢热衷于free share的人们!
数据库版本:Oracle9i R2 (9.2.0.1.0) OS Linux9 内核 2.4.20-8
1. 创建用户与组:
-------------------------
切换为 Root 用户并执行下列命令
$ su -
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
2. 创建目录。
--------------------------
我们将把所有东西都安装到在 /opt/ora9 目录下:
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
3. 预安装(系统配置):
---------------------------
3.1 安装这些兼容性库:
compat-gcc-7.3-2.96.118.i386.rpm
compat-libgcj-7.3-2.96.118.i386.rpm
compat-libgcj-devel-7.3-2.96.118.i386.rpm
nss_db-compat-2.2-20.i386.rpm
您可以在安装 CD 上找到这些程序包。
第一个文件在 CD1 的 RedHat RPMS 目录中
另外 3 个文件在 CD2 的 RPMS 目录中
3.2 设置内核参数以便能够成功启动:
把这些行添加到 /etc/sysctl.conf
如果您有更多 RAM,也可以更改这些值:
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
把这些行添加到 /etc/security/limits.conf
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
重启系统以使这些内核更改生效,如果不允许重启,您可以在运行时通过执行下列命令更改内核参数:
# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
4. 预安装(oracle 环境):
----------------------------
以 oracle 用户身份登录:
su - oracle
将下列行放置在 ~/.bashrc:
#oracle 9i
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
#
#根据您本国的情况更改这个 NLS 设置,建议采用E文
#示例:
# german_germany.we8iso8859p15, american_america.we8iso8859p2 etc.
export NLS_LANG='AMERICAN.ZHS16CGB231280'
上面是的设置安装过程是英文的,如果您需要其它的国家设置,请参考这里的支持设置,并对 NLS_LANG 变量进行相应更改。
5. 安装:
------------------------
以 Root 用户登录并允许用户 oracle 向 X 显示器写入:
su -
xhost +本机IP(不带空格)
登录为 oracle 用户:
su - oracle
开始安装。不要切换到您的 CD-ROM 安装目录,因为您将无法在系统需要时卸下第一张 CD 以插入其它 CD。
/mnt/cdrom/install/linux/runInstaller
在安装期间,系统会提示您插入其它安装盘。打开一个新的控制台,用命令 umount /dev/cdrom(以 Root 用户身份)卸下当前的盘片,替换该盘片。如果 Redhat9 没有自动安装它,那么使用命令 mount /dev/cdrom 将其装上
安装期间将产生两个错误:
--------------------------------------------------------------------------
(此为对原作补充改进部分)
* 第一个错误 在显示 Install successful 之后, 进行 Linking Oracle9i Database 9.2.0.1.0 进度条跑到 69% 的时候, 终于盼来期待已久的第一个错误对话框:
Error in invoking target install of makefile
/opt/oracle/product/9.2.0/network/lib/ins_oemagent.mk
不用慌, 这是我第二次解决这个问题, 请往下看:
这个问题的原因在于 Red Hat 9.0 所用的 glibc-2.3.2-11.9, 这个版本里的有一个函数发生了变化, 导致 Oracle安装时调用出错. 而低版本的 glibc-2.3.2-5 里, 这个函数还是原来的样子. 所以,
解决方法:
把 Red Hat 的 glibc 降级 (不用担心会影响系统或其它应用程序, 降级完, 安装好 Oracle 我们再升级回去, 一切 OK 的).
到这里下载低版本的 glibc-2.3.2-5:
http://www.puschitz.com/rh9_gcs_download
CODE:
[Copy to clipboard]
然后:
rpm -Uvh --force glibc-2.3.2-5.i686.rpm glibc-common-2.3.2-5.i386.rpm \
glibc-devel-2.3.2-5.i386.rpm
如果以上安装过程期间有任何依赖错误, 记得把依赖的软件包都记录下来 (包括它们的版本号), 然后先把它们卸载, 再执行上面的命令. 记下来是为了后面重新恢复.
降级完了? 按错误对话框里的 Retry, 看看是不是问题解决了?^_^
* 第二个错误出现
不用太久的期待, 在进度条跑到 84% 的时候, 我们最后一个错误终于又等到了:
Error in invoking target install of makefile
/opt/oracle/product/9.2.0/ctx/lib/ins_ctx.mk
镇定, 我们看解决方案:
编辑 $ORACLE_HOME/ctx/lib/env_ctx.mk, 找到 "INSO_LINK =", 添加 "$(LDLIBFLAG)dl" 到这一行中
原来是:
INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa
$(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi
$(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
添加后成为:
INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl $(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa
$(LDLIBFLAG)sc_ex $(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch $(LDLIBFLAG)sc_fi
$(LLIBCTXHX) $(LDLIBFLAG)c -Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)
Retry!
进度条是不是跑得让你兴奋?!^_^
在 Link Successful 之后, 会弹出一个 Setup Privileges 的对话框, 要求我们以 root 权限执行:
/opt/oracle/product/9.2.0/root.sh
Do it!
执行完毕, 我们就摁 ok
-------------------------------------------------------------------------
现在,您将能够用下面的命令启动您的代理程序了
$ /opt/ora9/product/9.2/bin/agentctl start
7. 启动数据库
------------------------------
如果您的安装程序在第 5 部分的最后一步被挂起,不要担心。等一段时间看它是否响应,如不响应则终止它。
在一个 shell 脚本(如 setvar.sh)中添加下面几行
#oracle 9i
export ORACLE_BASE=/home1/orahome
export ORACLE_HOME=/home1/orahome/ora92
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
保存此文件并在命令提示符运行
$source setvar.sh
现在转至 $ORACLE_HOME/bin
使用任意编辑器编辑 dbca 脚本
$kwrite dbca
找到 JRE_HOME 环境变量。它指向 JDK 1.8,后者是安装 CD 的一部分。更改该变量并使其指向您的 linux 安装的 JDK1.3 或 1.4,转至文件末尾,该变量用于调用 Java 程序。从路径中删除 bin 目录,并将 jre 可执行文件更名为 java 文件。这就像使用我们自己的 JDK 调用 java 程序一样。
启动
$./dbca
8. 启动数据库实例
打开一个 sqlplus 会话并以 sys/passwd 作为系统数据库管理员登录
sql>create spfile from pfile='full path of the .ora file created by the dbca utility ';
Eg /home1/orahome/admin/dl226b/pfile/initdl226b.ora
sql>shutdown immediate;
sql>startup;
如您对以上有任何疑问,请联系我。email: qintel后面是163.com,我将欢迎和您一起探讨。 最后真诚的希望您能指出本文的错误,以使更多的新手在学习安装oracle时少走弯路。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/13724/showart_81396.html |
|