原发于2005年05月17日, 星期二 20:56
拷过来竟然没回车,重新排了版,累呀
1. 从OTN上下载Oracle10g for Linux 版
如果是PC机,选择Oracle Database 10g Release 1 (10.1.0.3) for Linux x86对下载的文件ship.db.lnx32.cpio.gz做一下CRC (cyclic redundancy check)检查:
$cksum ship.db.lnx32.cpio.gz
将ship.db.lnx32.cpio.gz放在 /tmp下,解压ship.db.lnx32.cpio.gz
$gunzip ship.db.lnx32.cpio.gz
解压 ship.db.lnx32.cpio
$ cpio -idmv <>
Disk1/stage/Components/oracle.server/10.1.0.2.0/1/DataFiles/build.jar
Disk1/stage/Components/oracle.server/10.1.0.2.0/1/DataFiles
Disk1/stage/Components/oracle.server/10.1.0.2.0/1
Disk1/stage/Components/oracle.server/10.1.0.2.0
Disk1/stage/Components/oracle.server...
最终得到Disk1这样的目录,这就是oracle10g For Linux的安装文件
2.Oracle公司说系统必须具有512的内存和1GB或者两倍于内存的交换空间;对于具有2G内存的系统,交换空间可以在内存大小的1~2倍之间。因此我们需要检查一下内存和交换空间的大小。不过,在我的256M内存和768M交换空间的系统上也可以成功安装Oracle 10g,当然速度嘛...
检查物理内存:
$grep MemTotal /proc/meminfo
检查swap空间的大小,
$grep SwapTotal /proc/meminfo
请确保swap空间大小为内存的2倍左右,这样对于oracle的安装和使用有好处,否则在建立数据库时会出问题。
如果安装linux时预先没有设定swap至足够大请照如下设定执行(速度比较慢)
$su - root
#dd if=/dev/zero of=tmpswap bs=1k count=900000
#chmod 600 tmpswap
#mkswap tmpswap
#swapon tmpswap
3.安装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
4.检查linux上的安装包(RPMS),主要检查与compat-gcc, compat-libstdc++等等兼容性,因为在X-WINDOWS下安装ORACLE10g需要用到窗口api函数接口.
检查linux核心RPMS
$uname –a
结果应该是2.4.9以上的版本才行.
FC1系统中, make RPM 已经被安装. 还有以下包需要再装,先在你的FC1的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搜索,我试过基本都能找到)
FC1, 如果没有安装openmotif ,请执行
$su - root
#rpm -Uvh openmotif-2.2.2-16.1.i386.rpm
检查setarch RPM请执行:
$su - root
#rpm -Uvh setarch-1.0-1.i386.rpm
检查redhat-release RPM是否被安装:
$rpm -q redhat-release
这个RPM对于RHEL系列的LINUX很重要,因为它将用于ORACLE的安装认证. 没有这个包, Oracle10g 将会认定该OS不被支持.
对于RH9 和FC1 ,只要编辑一下/etc/redhat-release 这个文件就行了,
$su - root
#cp /etc/redhat-release /etc/redhat-release.backup
#cat > /etc/redhat-release <<>
#Red Hat Enterprise Linux AS release 3 (Taroon)
#EOF
记得安装完Oracle10g要还原该文件内容:
$su - root
#cp /etc/redhat-release.backup /etc/redhat-release
好了,做完以上的准备工作,我们该开始令人激动的Oracel10g安装!
安装执行指令在/tmp/Disk1下,不建议直接执行runInstaller –ignoreSysPrereqs
这样子会忽略其他系统可能导致Oracle10g无法正确运行的一些错误。
5.安装前我们还需设定一下与Oracle相关的内核参数
先看看所有内核参数:
$su - root
#sysctl -a
对于Oracle10g, 需要设定为以下参数值,可以设定更大一点的值:
查看结果可执行右边括号中内容
shmmax = 2147483648 (cat /proc/sys/kernel/shmmax)
这意味着系统的共享内存达到4G,这是不合适的。
一般,SHMMAX的设置可略大于本机内存配置。
如确需调整,在完成修改后,要按文档要求重生成核心,并用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)
注:如果系统中某一项内核参数已经比列出的要求值高,就不用改动了。在FC1中,我们要增加内核参数shmmax,semopm和filemax的值来达到系统的最小要求。
Oracle推荐把本地的端口范围ip_local_port_range设置为"1024 65000",这是大型系统必需的。使用vi等编辑软件把下面的几行添加到/etc/sysctl.conf中,这样每次启动时就会执行。kernel.shmmax=2147483648
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
为了使刚才加到/etc/sysctl.conf的几行马上生效,执行以下的命令:
su - root
sysctl -p
6.检查用于Oracle 10g的空间Oracle说安装Oracle for Linux大约需要2.5G的空间,安装后可以看出"General Purpose Database"的安装,Oracle使用了大约1.2G的磁盘空间,"General Purpose Database"的数据库文件等用掉710兆。
$ du -m -s /u011903 /u01
$ du -m -s /u01/app/oracle/oradata710 /u01/app/oracle/oradata
注:如果不想把Oracle 10g放到一个单独的文件系统中(我们通常的做法),就要确保“/”下有足够的空间,可以使用下面的命令检查根目录下的剩余空间:
df -k /
8.创建Oracle用户帐户和组。要创建Oracle用户帐户和组,执行下面的命令:
su - root
groupadd dba # 授予SYSDBA权限的用户组
groupadd oinstall # Oracle文件所有者的组
useradd -c "Oracle software owner" -g oinstall -G dba oracle
passwd oracle
9.设置Oracle用户的shell limits。如果只是安装一个小型的实验数据库,可以跳过这一步。如果大型的企业数据库,应当根据Oracle的推荐改变下面的两个值:
nofile = 65536 (查询请执行: ulimit -n)
nproc = 16384 (查询请执行: ulimit -u)
nofile表示可以打开文件描述符的最大数目,nproc表示单个用户可使用进程的最大数量。要查看所有的shell limits,请执行:
ulimit –a
10.创建Oracle目录对Oracle10g来说,只需为$ORACLE_BASE创建目录:
su - root
mkdir -p /u01/app/oracle
chown -R oracle.oinstall /u01
11.设置Oracle环境Oracle需要在一个设置正确的环境下安装和运行,环境变量的参数写在Oracle用户根目录下的文件“.bash_profile”中,编辑此文件:vi /home/oracle/.bash_profile在其中输入如下命令:
umask 022
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
LD_LIBRARY_PATH=/usr/lib:/usr/X11R6/lib
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1 #系统软件的安装目录ORACLE_SID=orc1 #数据库的SID,可自行设置LD_LIBRARY_PATH=$ORACLE_HOME/jdk/jre/lib/i386:
$ORACLE_HOME/jdk/jre/lib/i386/server:
$ORACLE_HOME/rdbms/lib: $ORACLE_HOME/lib:
$LD_LIBRARY_PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH LD_LIBRARY_PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID
确认修改后,存盘退出:
:w!
重新登陆Oralce用户,查看Oracle用户的环境变量是否生效:
set more
12.安装jdk1.3.1,以前安装过就可以跳过这一步了。
下载JDK1.3.1,网上很多,到java官方网站也找得到
以root身份登录Linux系统,进行如下操作:
bzip –d j2sdk-1.3.0-RC1-linux-i386.tar.bz2
这一命令把文件j2sdk-1.3.0-RC1-linux-i386.tar.bz2解压缩成tar这样的备份文件格式,然后再使用命令:
tar xvf j2sdk-1.3.0-RC1-linux-i386.tar.bz2
把文件释放到文件夹j2sdk-1.3.0-RC1-linux-i386.tar.bz2中,为了便于操作可以把文件夹名改成jdk.:
rename j2sdk-1.3.0-RC1-linux-i386.tar.bz2 jdk
13.所有配置完成了,现在开始安装Oracle 10g,远程安装没试过,单说本地安装。
以Oracle用户登录系统,启动本地x-windows,打开一个终端窗口,输入
#unset LANG #解决安装时中文字体问题,很重要的一步,不然中文都是框框
进入Disk1目录 :
$ cd /tmp/Disk1
输入:
$ ./runInstaller
需要注意的是:
在第5个安装界面,系统会弹出一个提示框,此时需要运行脚本“orainstRoot.sh”,打开 一个命令行终端,执行如下命令(这一个我没碰到):
$ su
# cd /u01/app/oracle/oraInventory
# ./orainstRoot.sh
# exit
# exit
在第22个安装界面,需要运行脚本“root.sh”,打开一个命令行终端,执行如下命令:
$ cd $ORACLE_BASE/product/10.1.0/db_1
$ su
# ./root.sh
# exit
# exit
安装过程速度较慢,需要耐心等待
14.安装后的任务
1.启动Oracle10g 数据库 $ sqlplus "scott/tiger as sysdba" 将出现如下连接数据库信息: SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3月 24 16:23:27 2004 Copyright (c) 1982, 2004, Oracle. All rights reserved.
连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production With the Partitioning, OLAP and Data Mining options
SQL>
表明登录数据库系统成功,运行startup命令启动数据库。
SQL> startup
ORACLE instance started.
Total System Global Area 336356520 bytes
Fixed Size 279720 bytes
Variable Size 268435456 bytes
Database Buffers 67108864 bytes
Redo Buffers 532480 bytes
Database mounted.
Database opened.
SQL>
表示数据库正常启动。
2. 关闭Oracle10g 数据库
$ sqlplus "scott/tiger as sysdba" //以sysdba用户登录数据库
成功登录数据库系统后,运行shudown命令关闭数据库。
SQL> shutdown
3. 启动Oracle10g监听程序 Oracle的监听程序主要是为客户端的连接提供接口,在控制台窗口键入如下命令:
$ lsnrctl
将出现如下监听程序信息:
LSNRCTL f or 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3月 -2004 16 :59:51 Copyright (c) 1991, 2004, Oracle. All rights reserved.
欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL>
表明登录监听程序控制台成功,运行start命令启动监听程序。
LSNRCTL> start
将出现监听程序的一系列启动和配置情况信息列表。
信息行的最后一行是“The command completed successfully”字样时,监听程序启动成功。
4. 关闭Oracle10g监听程序 运行stop命令关闭监听程序。
LSNRCTL> stop
2009年3月18日星期三
订阅:
博文评论 (Atom)
没有评论:
发表评论