时间:2021-07-01 10:21:17 帮助过:39人阅读
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 本文?指?大家安?以下?容: - Oracle 10g (10.1.0) on Red Hat Enterprise Linux Advanced Server 3 (RHELAS3) - Oracle 10g (10.1.0) on Red Hat Enterprise Linux Advanced Server 2.1 (RHELAS2.1)
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
本文?指?大家安?以下?容:
- Oracle 10g (10.1.0) on Red Hat Enterprise Linux Advanced Server 3 (RHELAS3)
- Oracle 10g (10.1.0) on Red Hat Enterprise Linux Advanced Server 2.1 (RHELAS2.1)
- Oracle 10g (10.1.0) on Red Hat 9 (RH9)
- Oracle 10g (10.1.0) on Red Hat Fedora Core 1 (FC1)
?OTN上下?Oracle10g for Linux 版
http://otn.oracle.com/software/products/database/oracle10g/index.html
下?的文件ship.db.cpio.gz作如下?理:
如果你是在windows os下?的文件,可以通?linux的samba功能直接拷?ship.db.cpio.gz至你的linux目?下.
做一下CRC (cyclic redundancy check)?查:
$cksum ship.db.cpio.gz
?ship.db.cpio.gz放在/tmp下,解?ship.db.cpio.gz
$gunzip ship.db.cpio.gz
得到Disk1??的目?,?就是oracle10g For Linux的安?文件
===========
再做以下?查:
$grep MemTotal /proc/meminfo
?查swap空?的大小,
$grep SwapTotal /proc/meminfo
??保你的swap大小??存的2倍左右,???於oracle的安?和使用有好?,否?在建立?料???出??,我的?存?1.5g , 我的swap??2.9G
如果你安?linux??先?有?定swap至足?大?照如下?定?行
$su - root
#dd if=/dev/zero of=tmpswap bs=1k count=900000
#chmod 600 tmpswap
#mkswap tmpswap
#swapon tmpswap
=======
安?Oracle Universal Installer 需要在/tmp下至少400 MB 的自由空?.
?查/tmp:
$df /tmp
如果你在/tmp下?有足?空?, 你可以在另一?分?中??的建立一?tmp目??看如下做法:
$su - root
#mkdir //tmp
#chown root.root //tmp
#chmod 1777 //tmp
#export TEMP=/ # 被oracle使用
#export TMPDIR=/ # 用於linux?用程序
?你安?完Oracle10g, ??Oracle?移除??性的tmp目?,如下作法:
$su - root
#rmdir //tmp
#unset TEMP
#unset TMPDIR
=====
?查linux上的安?包(RPMS),主要?查?compat-gcc, compat-libstdc++等等兼容性,因?在X-WINDOWS下安?ORACLE10g需要用到窗口api函?接口.
?查linux核心RPMS
$uname ?a
?果??是2.4.9以上的版本才行.
?查glibc RPMs
?於RedHat ELAS 2.1需要如下?更
$su ? root
#rpm -Uvh glibc-2.2.4-32.11.i686.rpm glibc-common-2.2.4-32.11.i386.rpm
?查gcc, make, and binutils RPMs
#rpm -q gcc make binutils
查出以下RPMs是否被安?:
- ?於RHELAS3 和RHELAS2.1: make-3.79 或以上版本
- ?於RHELAS3 and RHELAS2.1: binutils-2.11.90.0.8-12 或以上版本
- ?於RHELAS3: gcc-3.2.3-2或以上版本
- ?於RHELAS2.1: gcc-2.96-108.1或以上版本
RHELAS3 系?中, make和binutils RPMs 已?被安?.然而, ?有以下一些RPMs 需要安?,你能在RHELAS3安?碟中的第3?找到?些RPMs,?然也可以下?新版的??.
$su - root
#rpm -Uvh gcc-3.2.3-20.i386.rpm
glibc-devel-2.3.2-95.3.i386.rpm
glibc-headers-2.3.2-95.3.i386.rpm
glibc-kernheaders-2.4-8.34.i386.rpm
RHELAS2.1系?中, 在"RedHat 2.1 Advanced Server"安?中,如果你?有选?"Software Development" ,?不?安?binutils 和gcc的RPMs,?了?足oracle安??於x-windows的需要相依性,需要?行以下指令
$su - root
#rpm -ivh gcc-2.96-108.1.i386.rpm
binutils-2.11.90.0.8-12.i386.rpm
cpp-2.96-108.1.i386.rpm
glibc-devel-2.2.4-32.11.i386.rpm
kernel-headers-2.4.9-e.3.i386.rpm
RH9系?中, make RPM 已?被安?. ?有以下包需要再?,?注意oracle不支持在RH9上安?,你??努力去找到一些合?的RPM , 以下需安?的包?先在你的RH9的CD中找找,如?有可以在google.com中搜索到.
$su - root
#rpm -Uvh gcc-3.2.2-5.i386.rpm
glibc-devel-2.3.2-5.i386.rpm
cpp-3.2.2-5.i386.rpm
glibc-kernheaders-2.4-8.10.i386.rpm
binutils-2.13.90.0.18-9.i386.rpm
FC1系?中, make RPM 已?被安?. ?有以下包需要再?. 注意FC1的情??RH9?似都不被ORACLE支持, 你??努力去找到一些合?的RPM , 以下需安?的包?先在你的RH9的CD中找找,如?有可以在google.com中搜索到.
$su - root
#rpm -Uvh gcc-3.3.2-1.i386.rpm
glibc-devel-2.3.2-101.i386.rpm
cpp-3.3.2-1.i386.rpm
glibc-headers-2.3.2-101.i386.rpm
glibc-kernheaders-2.4-8.36.i386.rpm
binutils-2.14.90.0.6-3.i386.rpm
?查openmotif RPM
$rpm -q openmotif (?放??基金?的?形介面,相?於linux下的Directx)
(以下各?文件?在RH的安?CD中找,或去google.com搜索,我??基本都能找到)
RHELAS3, 如果?有安?openmotif ,??行
$su - root
#rpm -ivh openmotif-2.2.2-16.i386.rpm (或更新版本)
RHELAS2.1, 如果?有安?openmotif ,??行
$su - root
#rpm -ivh openmotif-2.1.30-11.i386.rpm
RH9, ??行
$su - root
#rpm -Uvh openmotif-2.2.2-14.i386.rpm
FC1, ??行
$su - root
#rpm -Uvh openmotif-2.2.2-16.1.i386.rpm
?查setarch RPM
RHELAS3, ?行以下指令,查核是否?setarch-1.3-1 RPM 或更新版本:
#rpm -q setarch
setarch是RHEL3的一?新功能. 用於模拟一个3GB 的虚拟地址空间,以允许如此的应用程式能够正常运作,假如?有安???行:
$su - root
#rpm -Uvh setarch-1.3-1.i386.rpm
RHELAS2.1 和RH9, 不需要setarch RPM.
?於FC1, ?然用不到它,也??行:
$su - root
#rpm -Uvh setarch-1.0-1.i386.rpm
?查redhat-release RPM
查出redhat-release RPM 是否被安?:
$rpm -q redhat-release
??RPM?於RHEL系列的LINUX很重要,因?它?用於ORACLE的安???. ?有??包, Oracle10g ???定?OS不被支持.
- ?RHELAS3, ??行(在RHELAS3 disk 1中可找到此RPM):
$su - root
#rpm -ivh redhat-release-3AS-1.i386.rpm
- ? RHELAS2.1, ??行(在RHELAS3 disk 1中可找到此RPM):
$su - root
#rpm -ivh redhat-release-as-2.1AS-4.noarch.rpm
但是?於RH9 和FC1 ,你只要??一下/etc/redhat-release ??文件就行了,
$su - root
#cp /etc/redhat-release /etc/redhat-release.backup
#cat > /etc/redhat-release << EOF
#Red Hat Enterprise Linux AS release 3 (Taroon)
#EOF
?得安?完Oracle10g要?原?文件?容:
$su - root
#cp /etc/redhat-release.backup /etc/redhat-release
好了,做完以上的??工作,我???始令人激?的Oracel10g安?! 安?前我??需?定一下?Oracle相?的?核??
先看看所有?核??:
$su - root
#sysctl -a
安??行指令在/tmp/Disk1下,我?不建?直接?行
runInstaller -ignoreSysPrereqs
?於Oracle10g, 需要?定?以下??值,可以?定更大一?的值:
查核?果可?行右?括?中?容
shmmax = 2147483648 (cat /proc/sys/kernel/shmmax)
这意味着系统的共享内存达到4G,这是不合适的。一般,SHMMAX的设置可略大于本机内存配置。
事实上,缺省安装的RedHat 6.0核心运行Oracle 8.0.5是没有问题的,一般情况下可不对这些参数作出调整。
如确需调整,在完成修改后,要按文档要求重生成核心,并用lilo命令指定用新的核心进行引导。
shmmni = 4096 (cat /proc/sys/kernel/shmmni)
shmall = 2097152 (cat /proc/sys/kernel/shmall)
shmmin = 1 (ipcs -lm |grep "min seg size")
shmseg = 10 (被硬??在kernel中,缺省值更高)
semmsl = 250 (cat /proc/sys/kernel/sem | awk '{print $1}')
semmns = 32000 (cat /proc/sys/kernel/sem | awk '{print $2}')
semopm = 100 (cat /proc/sys/kernel/sem | awk '{print $3}')
semmni = 128 (cat /proc/sys/kernel/sem | awk '{print $4}')
file-max = 65536 (cat /proc/sys/fs/file-max)
ip_local_port_range = 1024 65000
(cat /proc/sys/net/ipv4/ip_local_port_range)
NOTE: Do not change the value of any kernel parameter on a system where it is already higher than listed as minimum requirement.
On RHELAS3, RHELAS2.1, RH9, and on FC1 I had to increase the kernel parameters shmmax, semopm, and filemax to meet the minimum requirement.
Oracle also recommends to set the local port range ip_local_port_range for outgoing messages to "1024 65000" which is needed for high-usage systems. This kernel parameter defines the local port range for TCP and UDP traffic to choose from.
I added the following lines to the /etc/sysctl.conf file which is used during the boot process:
kernel.shmmax=2147483648
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
Adding these lines to the /etc/sysctl.conf file will cause the system to change these kernel parameters after each boot using the /etc/rc.d/rc.sysinit script which is invoked by /etc/inittab. But in order that these new added lines or settings in /etc/sysctl.conf become effective immediately, execute the following command:
su - root
sysctl -p
For more information on shmmax, shmmni, shmmin, shmseg, and shmall, see Setting Shared Memory.
For more information on semmsl, semmni, semmns, and semopm, see Setting Semaphores.
For more information on filemax, see Setting File Handles.
-------------------
<在/oracle/10.1.0/bin/dbshut 加入>
##自???Listner
if [ -f $ORACLE_HOME/bin/lsnrctl ] ; then
$ORACLE_HOME/bin/lsnrctl stop
fi
##自???Oracle Apache Jserv
if [ -f $ORACLE_HOME/Apache/Apache/bin/httpdsctl ] ; then
$ORACLE_HOME/Apache/Apache/bin/httpdsctl stop
fi
36.完成後???
$/oracle/10.1.0/bin/dbstart
$/oracle/10.1.0/bin/dbshut
37.??自??? Oracle
??oracle10g??script cp至/etc/rc.d/init.d
$cp oracle10g /etc/rc.d/init.d
再加入??服?程序中
#chkconfig --add oracle10g
#linuxconf
用linuxconf即可控制??的?次.
************
***oracle10g ?行?
#!/bin/sh
#
# chkconfig: 345 51 49
# description: starts the oracle dabase de
#
echo "Oracle 10g auto start/stop"
ORA_OWNER=oracle
ORA_HOME=/oracle/10.1.0/db
case "$1" in
'start')
echo -n "Starting Oracle10g: "
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
touch /var/lock/subsys/oracle10g
echo
;;
'stop')
echo -n "Shutting Oracle10g: "
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
rm -f /var/lock/subsys/oracle10g
echo
;;
'restart')
echo -n "Restarting Oracle10g: "
$0 stop
$0 start
echo
;;
*)
echo "Usage: oracle10g {start | stop | restart }"
exit 1
esac
exit 0