当前位置导航:炫浪网>>网络学院>>编程开发>>Oracle教程

Oracle11G for Linux 的安装(RHEL5)

服务器配置:
至强3.0GHZ *2
4G ECC DDR内存
300G SCSI Utrl 320 15K 硬盘 *2

前提:
内存和交换空间; 详情请看官方database\doc\install目录文档
Available RAM Swap Space Required
Between 1024 MB and 2048 MB 1.5 times the size of RAM
Between 2049 MB and 8192 MB Equal to the size of RAM
More than 8192 MB 0.75 times the size of RAM

一、准备服务器和操作系统:
1、物理内存:4G
2、交换空间4G
3、禁用secure Linux
4、已经安装下列包(为简单起见,安装RedHat AS 4时最好选择全部安装):
A、X Window System
B、GNOME Desktop Environment
C、Editors
D、Graphical Internet
E、Text-based Internet
F、Server Configuration Tools
G、Development Tools
H、Administration Tools
I、System Tools
二、安装前的准备工作

1.检查硬件
内存
# grep MemTotal /proc/meminfo
交换空间
# grep SwapTotal /proc/meminfo
磁盘空间
# df -ah
2、下载软件
Oracle Database 10g Release 2 (10.2.0.1) Software下载位置:
http://otn.oracle.com/software/products/database/oracle10g/index.html
3、修改host文件
查看/etc/hosts文件中必须包含a fully qualified name for the server

4. 安装软件包检查
1、检查下列包是否安装,若未安装则要先安装:
binutils-2.17.50.0.6-2.el5
compat-libstdc -33-3.2.3-61
elfutils-libelf-0.125-3.el5
elfutils-libelf-devel-0.125
glibc-2.5-12
glibc-common-2.5-12
glibc-devel-2.5-12
gcc-4.1.1-52
gcc-c -4.1.1-52
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.1-52
libstdc -4.1.1
libstdc -devel-4.1.1-52.e15
make-3.81-1.1
sysstat-7.0.0
unixODBC-2.2.11
unixODBC-devel-2.2.11

# rpm -qa | grep make gcc glibc compat openmotif21 setarch 等等

5.做个链接(老版本需求,新版本oracle11不要设置):
ln -s /usr/lib/libstdc .so.6.0.3 /usr/lib/libstdc .so.5
#检测存在如果不做此链接,在安装过程中建好数据库,将会出现不能链接不上数据库问题。

三.参数设置
1、设置核心参数
在/etc/sysctl.conf文件中加入下列行:
#kernel.core_uses_pid = 1
kernel.shmall = 2097152
kernel.shmmax = 2147483648 -- (以字节为单位,物理内存数量*1024*1024*2,为内存的2倍)
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=8388608
net.core.rmem_max=8388608
net.core.wmem_default=262144
net.core.wmem_max=262144
esc :wq!
# sysctl -p #运行下列命令改变核心参数

2、设置Shell Limits(系统资源限制),提高软件的运行效率

a.在/etc/security/limits.conf文件中加入下列红色行:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

b.在/etc/pam.d/login文件中加入下列行,如果里面没有的话:
session required /lib/security/pam_limits.so
session required pam_limits.so
c.在/etc/profile后加入以下语句:
vi /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
3.创建用户和组及相关目录
--创建dba/oper/oinstall组
/usr/sbin/groupadd dba
/usr/sbin/groupadd oper
/usr/sbin/groupadd oinstall
--创建oracle用户并设置用户所属组
/usr/sbin/usermod -g oinstall -G dba oracle
/usr/sbin/useradd -g oinstall -G dba oracle
passwd oracle
# id oracle
uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)
--创建相关安装目录

mkdir -p /opt/oracle/product
mkdir -p /opt/oracle/product/OraHome
mkdir -p /opt/oraInventory #(the default inventory folder)
mkdir -p /opt/oracle/oradata #(change the right file owner)
mkdir -p /var/opt/oracle

--设置目录所有者和权限
chown -R oracle.oinstall /opt/oracle
chown -R oracle.oinstall /opt/oracle/oradata
chown -R oracle.oinstall /opt/oracle/product/OraHome
chown -R oracle.dba /opt/oraInventory
chown oracle.dba /var/opt/oracle
chmod -R 775 /opt/oracle
chmod -R 755 /var/opt/oracle

4.设置安装环境变量
# su - oracle --su到oracle用户下,
更改用户的一些配置
$vi .bash_profile
添加以下参数,主要是配置oracle软件运环境参数
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/OraHome
export ORACLE_SID=orcl
export ORACLE_OWNER=oracle
export ORACLE_TERM=vt100
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH

注:
11g:ORA_NLS33=$ORACLE_HOME/nls/admin/data
10g:ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
9i:ORA_NLS33=/oracle/app/ora92/ocommon/nls/admin/data
保存退出
--执行以下命令让配置马上生效或以oracle用户登录使设置生效

$ source $HOME/.bash_profile

四.正式安装
以root身份打开另一个终端窗口
--这步至关重要,不执行这步在以oracle用户运行 # ./runInstaller时会启动不了图型安装界面
(经本人验证,不做这一步亦可,只需用oracle用户的桌面来启动安装程序。)
xhost
xhost localhost
用oracle用户登录。如果用的是X模式,要把DISPLAY设置如下:
DISPLAY=:0.0; export DISPLAY
# export DISPLAY=192.168.1.170:0.0
如果远程安装,需要启动cygwin
执行
# startx
方式一:
以root身份mount光驱
#mount /dev/cdrom /mnt
以oracle用户登录系统,进行Oracle的安装
#su – oracle
unzip linux_x86_11gR1_database.zip
cd database/
./runInstaller
./runInstaller -ignoreSysprereqs #低版本检测(可选)

方式二:
1、解压命令:unzip 10201_database_linux32.zip
2、解压后产生一个包含安装文件的目录database
注:,最好在根上建立一个文件夹,这个文件夹专门用来存放ORACLE的安装文件。但是需要注意的是,在安装ORACLE前,需要把这个文件夹的所有者修改成用户oracle,文件夹权限最好是修改成777,以免在安装过程中出现问题。
3、定制Oracle安装文件及权限(可选)
chmod 777 /oracle
chown -R oracle.oinstall /oracle
mount /media/cdrom
/media/cdrom/runInstaller

安装过程中:
在安装过程中输入合适的ORACLE_HOME和实例名。
完成后的画面中会有管理端入口地址和sqlplus入口地址。

选择高级安装
在选择安装类型中,选择定制
安装过程中需要以root身份运行
#/oracle/oraInventory/orainstRoot.sh
/opt/oracle/product/OraHome/root.sh
安装完毕后。

五.启动脚本生成和设置:
1.补充:
开机时让 RedHat Linux 自动启动Oracle,需要完成以下步骤:
运行 $ORACLE_HOME 下的 root.sh,会生成一个文件 /etc/oratab 。
编辑 /etc/oratab ,把所有的 instance 的重启动标志设置成 'Y',如:
ora10g:/home/oracle/OraHome_1:Y
做一个启动脚本 /etc/init.d/dbora ,如下所示:
#!/bin/sh
# description: Oracle auto start-stop script.
# chkconfig: - 20 80
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.
ORA_HOME=/home/oracle/OraHome_1
ORA_OWNER=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
;;
'restart')
$0 stop
$0 start
;;
esac
赋予执行权限
chown root.root /etc/rc.d/init.d/dbora
chmod 750 /etc/init.d/dbora

Initialize new service:
chkconfig dbora reset
chkconfig --list dbora
dbora 0:off 1:off 2:off 3:on 4:off 5:on 6:off

注意:当系统不在 runlevels 3 and 5时,使用
service dbora start 启动服务
service dbora stop 停止服务.
作成以下链接:
ln -s /etc/init.d/dbora /etc/rc0.d/K10dbora
ln -s /etc/init.d/dbora /etc/rc3.d/S99dbora
执行以下命令:
chkconfig --level 345 dbora on

2.vi $ORACLE_HOME/bin/dbstart
# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$ORACLE_HOME
如果没有ASM(自动存储),就把那一节内容删除,ASM要在加载实例前,先加载.
3.重新启动计算机 ,就可以了,启动会比较慢,因为要自动启动em,database,listener,agent
这样就OK了。下次开关机的时候,Oracle也会随之启动/停止。

相关内容
赞助商链接