安装Oracle 10G

 

硬件要求:

检查内容

最小值

检查命令参考

物理内存

512M

# grep MemTotal /proc/meminfo

交换空间

1.0 GB2倍内存

# grep SwapTotal /proc/meminfo

/tmp 空间

400 MB

# df -k /tmp

软件所需空间

2.5 GB

# df -k 

数据库文件

1.2 GB

# df -k 


软件要求与配置
操作系统版本:Red Hat Enterprise Linux AS release 3 (Taroon) Update 3
需要内核2.4.21-15EL

确认以下 rpm包都已经安装:
make-3.79.1
gcc-3.2.3-34
glibc-2.3.2-95.20
compat-db-4.0.14.5
compat-gcc-7.3-2.96.128
compat-gcc-c++-7.3-2.96.128
compat-libstdc++-7.3-2.96.128
compat-libstdc++-devel-7.3-2.96.128
openmotif21-2.1.30-8
setarch-1.3-1


可以通过以下指令察看本机当前的rpm包情况

  rpm -qa | grep compat 
 
rpm -qa | grep openmotif 
  rpm -qa | grep setarch

  gcc -v
  rpm -q glibc

如果个别包没有安装,请在系统安装光盘中找到具体的软件包(大多数在第三张光盘上),然后利用如下的命令来安装相应的包:
  
rpm -ivh compat…..rpm
注意:这些软件包之间是有依赖性的,先后的顺序要找好,否则会报告不能安装的错误。

 

设定核心参数
vi /etc/sysctl.conf
在该文件末尾加入如下内容:
#—————————————-
# Parameters for Oracle10g
kernel.shmall=2097152
kernel.shmmax=2147483648
kernel.shmmni=4096
kernel.sem=250 32000 100 128
fs.file-max=65536
net.ipv4.ip_local_port_range=1024 65000
#—————————————-
编辑完之后,保存,执行 /sbin/sysctl -p 命令使变更生效。

注意:上面kernel.shmmax/kernel.sem等是典型的核心参数配置,可能需要根据实际环境进行适当的变动。可参考以下表格获取当前设定值,若设定值较上例大,则保留设定值,而kernel.shmmax应设为系统内存的一半,该值即指定了内核允许的最大共享内存段(Segment)的大小,一般安装Oracle后,Oracle将为SGA申请一个段。若系统内存超过8G时安装出错,请参考附录大内存的处理。

参数

命令

semmsl,semmns,semom & semmni

/sbin/sysctl -a | grep sem

shmall,shmmax & shmmni

/sbin/sysctl -a | grep shm

file-max

/sbin/sysctl -a | grep file-max

ip_local_port_range

/sbin/sysctl -a | grep ip_local_port_range

 

创建用户和相关的组
groupadd dba
groupadd oinstall
useradd -g oinstall oracle
passwd oracle
mkdir –p /oracle/install
mkdir -p /oracle/app
mkdir -p /oracle/data
chown -R oracle:oinstall /oracle
chmod -R 775 /oracle/app /oracle/data

设定Shell限制
出于性能上的考虑,还需要增大oracle用户的限制,即增加nofile(可打开的文件描述符的最大数)nproc(单个用户可用的最大进程数量)

vi /etc/security/limits.conf 
添加如下的行:
oracle               soft    nproc   2047
oracle               hard   nproc   16384
oracle               soft    nofile   1024
oracle               hard   nofile   65536
 
添加如下的行到/etc/pam.d/login 文件:
session    required     /lib/security/pam_limits.so

编辑 /etc/profile 文件,添加如下部分:
if [ $USER = "oracle" ]; then 

if [ $SHELL = "/bin/ksh" ]; then 

ulimit -p 16384 

ulimit -n 65536 

else 

ulimit -u 16384 -n 65536 

fi 

fi
之后,执行$ ulimit 验证一下.

检查并调整环境变量

登录为oracle用户 
su – oracle 
cd 
vi .bash_profile

添加如下参数,具体值和现实环境有关。

export ORACLE_BASE=/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1
export ORACLE_SID=ora10
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export LC_CTYPE=en_US.UTF-8

然后执行 
source .bash_profile
使环境变量生效。

开始安装

mount安装盘,一般网上下载是压缩文件,执行
cp /mnt/cdrom/ship.db.cpio.gz /oracle/install
cd /oracle/install
gunzip ship.db.cpio.gz
cpio -idmv < ship.db.cpio
sh Disk1/unInstaller
如果不能出现安装画面,查看本文后面的FAQ

 

 

 

 

 

附录:

A. FAQ

1. 不能启动安装界面
运行runInstaller提示信息类似如下:
xlib:connection to "localhost:0.0" refused by server
xlib:client is not authorized to connect to server
Exception in thread "main" java.lang.InternalError:can’t connect to x11 window server using "localhost:0.0"
at …….
解决办法:设定你的DISPLAY环境参数。
export DISPLAY=<IP>:0.0
或者用root简单的执行一下# xhost + (要注意这样会有安全上的隐患)

2.安装界面显示很多"口口"样子的乱码
解决办法:查看locale输出
# locale
LANG=en_US.UTF-8
LC_CTYPE=zh_CN.GB18030
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

执行#export LC_CTYPE=en_US.UTF-8 然后重新调用安装程序.

3. IE登录Linux服务器上的em出现乱码
 Linux(Unix) 环境下成功安装了Oracle 10g,windows下用IE浏览器登录 10g em, 按钮是"口口"这样的方框.
解决办法: 参考 http://www.dbanotes.net/Oracle/Oracle-10g-font.properties.htm 或者是参考这个 http://www.linuxsir.org/bbs/showthread.php?s=&threadid=98591 后者比较彻底,前者比较"Quick & Dirty ".

4.创建数据库的时候出现ORA-03113的错误
解决办法: 查看核心参数是否调整正确.参考http://www.dbanotes.net/Oracle/ORA-03113.htm

5. RedHat 9 / FC1等系统10g不支持如何安装?
解决办法:10g不支持的Linux发行版上安装10g的解决方法
1) 运行runInstaller -ignoreSysPrereqs,这样会跳过检查
2)
摘自 www.puschitz.com 修改/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
安装完毕,执行如下操作:
#
su – root
#
cp /etc/redhat-release.backup /etc/redhat-release
3).
http://www.dbanotes.net/Oracle/10G-Beta-Install-Bug.htm
同样的思路,我们可以修改Oracle install/oraparam.ini文件达到目的

6 如何关掉那些 ocssd.bin 进程?
解决办法:编辑/etc/inittab文件(做好备份)
注释掉这一行:
h1:3:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1 </dev/null

B. 大内存的配置

首先说明,以下材料来自Install Oracle on RHEL AS 2.1的白皮书,可能AS 3对大内存的支持已经很好了,但是笔者此文主要来自查阅和编辑多篇文档,具体的安装限于硬件也没能测试。所以,如果在AS 3上出现了错误,不妨参考下文。
shmmax
最大值为4GB-1。为了创建大于1.7GBSGA,必须使用共享内存文件系统(shmfs)。指令如下,并可添加到/etc/rc.local中,也可以使用/etc/fstab来创建shmfs,在增加/dev/shm前先注释掉已有的/dev/shm条目。
mount -t shm shmfs -o size=32g /dev/shm

mount -t shm shmfs -o nr_blocks=8388608 /dev/shm
8GB系统上使用shmfsSGA可以最大调整到7GB。需要调整init.ora,增加:use_indirect_data_buffers=true
另一种使用大SGA的方法是使用Lower Mapped Base,可以从1.7GB增长到2.7GB。具体方法可参考Oracle白皮书。

C.大页面的配置

AS支持4MB的大页面(而不是一般的4KB),这样可以减少页表中的条目,将SGA锁定在内存中,多用于大SGA或多用户时。这一特性存在于Enterprise Kernel中。

大页面的数量可用cat /proc/meminfo查看。

配置步骤如下:

1. /etc/rc.local
  echo 2 > /proc/sys/kernel/shm-use-bigpages
shmfs中使用大页面)
  echo 1 > /proc/sys/kernel/shm-use-bigpages
SYSV中使用大页面)

  echo 0 > /proc/sys/kernel/shm-use-bigpages (不使用大页面)

2. /etc/lilo.confboot段中增加如下参数,重新配置LILO并重启系统
  append="bigpages=xxxxMB"
 
4GBSGA,可以设为4100MB;对2GB的,可以设为2100MB
8GB的机器上SGA最大为5.4GB

补充:
1
启动错误    
如果启动时出现错误信息:                                                         

ORA-01078:failucr in processing system parameter s

LRM-00109:could not  open parametet file “/u01/app/oracle/product/10.1.0/db_1/ dbs/initora10.ora”

执行:

cp /oracle/app/admin/oracle10/pfile/init.ora.142005154918 /oracle/app/product/10.1.0/db_1/ dbs/initora10.ora

 

2、自动启动Oracle

在启动脚本里加上:

su – $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart"

su – $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start"

 


来源:http://www.oracle.com/technology/global/cn/pub/articles/smiley_10gdb_install.html

 

发表评论