Linux下安装oracle10g 标准文档

Linux 下安装 oracle10g 标准文档
 
system:Linux5.5(64bit)
Author:hx10
Date:2010/7/26 hangzhou
Blog: http://hx100.blog.51cto.com
 
1. 硬件需求
RAM 最小 512MB   推荐 1G
SWAP 最小 1GB       推荐 RAM 大小的两倍
官方文档的标准如下
RAM
Swap Space
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
在实际环境中,单个 swap 分区不要超过 2G ,但是可以划分多个 swap 分区,针对 PC-SERVER 服务器,一般看物理 CPU 有几个,就分多少个 2G SWAP 空间。
临时空间 /tmp 最小 400MB     推荐 1GB
磁盘空间     最小      1.5G 用于 ORACLE 软件, 1.5G 用于启动数据库
                推荐      1.5G 用于 ORACLE 软件, 1.5G 用于启动数据库
操作系统版本   参照 ORACLE 文档
2 OFA 最优灵活体系结构(从 ORACLE 8 开始引入)
提供了一种结构化方法,用于定位 ORACLE 需要与使用的各种文件
易于管理数据库各种文件的存储位置, 诸如备份以及还原数据库
OFA 还提供了能够监视与调整性能的基本功能(诸如减少多种文件之间的竞争)
在一台电脑上运行多个 ORACLE 版本时,如果每个版本都遵循 OFA 原则,那么多个版本之间就不会得重写另一个版本所需的文件。
 
3. oracle 创建用户和组(用户名为 oracle ,当然也可是其他用户名)
A. ORACLE 创建用户和组
 
# mkdir /u01            //安装oracle软件
# mkdir /u02           //存放oracle数据文件
 
# groupadd  oinstall
# groupadd  dba
# useradd -g oinstall -G dba -d /u01/oracle  oracle
# passwd oracle
 
#chown oracle:oinstall /u02
B. oracle用户设置环境变量
#su – oracle
$vim ~/.bash_profile
在末尾增加
# User specific environment and startup programs
alias sqlplus='rlwrap sqlplus'
alias rman='rlwrap rman'
export TMP=/u01/oracle/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.1
export EDITOR=/usr/bin/vim
export ORACLE_SID=zjcsc
export PATH=$ORACLE_HOME/bin:/usr/bin:$PATH
export PATH=$PATH:/usr/bin/:/bin:/usr/bin/X11:/usr/local/bin
export PATH=$PATH:$ORACLE_BASE/common/oracle/bin
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/lib:/usr/lib:/usr/local/lib:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib
export LIBPATH=$LIBPATH:$ORA_CRS_HOME/lib:$ORACLE_HOME/lib
export CLASSPATH=$CLASSPATH:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/jlib:$ORACLE_HOME/JRE
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
 
C. 配置内核参数(具体参照联机文档)
#su – root
#vim /etc/sysctl.conf
在最末尾增加
kernel.shmmax = 4294967295
kernel.shmall = 268435456
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
#sysctl -p ( 使参数配置立即生效 )
解释如下:
kernel.shmmax = 4294967295   //该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,这里设置为4G 4*1024*1024*1024-1=4294967295
kernel.shmall = 268435456 //该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改,这里设置256m     256*1024*1024=268435456
kernel.shmmni = 4096   //这个内核参数用于设置系统范围内共享内存段的最大数量。该参数的默认值是 4096 。通常不需要更改
kernel.sem = 250 32000 100 128    //表示设置的信号量
fs.file-max = 65536    //表示文件句柄的最大数量。文件句柄设置表示在linux系统中可以打开的文件数量
net.ipv4.ip_local_port_range = 1024 65000  //端口范围
net.core.rmem_default = 4194304  //  默认的接收窗口大小
net.core.rmem_max = 4194304  //  接收窗口的最大大小
net.core.wmem_default = 262144  //  默认的发送窗口大小
net.core.wmem_max = 262144  //  发送窗口的最大大小
D. 限制 oracle 用户对资源的访问
D1. 限制用户访问资源
# vim /etc/security/limits.conf 在文件之后加入如下内容
#Add this line
oracle              soft    nproc   2047
oracle              hard    nproc   16384
oracle              soft    nofile   1024
oracle              hard    nofile   65536
D2. 限制用户 SHELL 对资源的访问
#vim /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
 
E. 验证用户
#vim /etc/pam.d/login
session    required   pam_limits.so
session    required   /lib/security/pam_limits.so
 
4. 安装必要的软件包
使用 yum 方式安装能省去很多麻烦,推荐(因为我们的重点在于 DB ,不在于 OS
 [root@ocp ~]#
yum -y install binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel openmotif openmotif-devel libXp libXp-devel
  (因为 ORACLE10g 不支持 RHEL5 ,标注软件同样必须安装)
对于 Linux4.7 ,官方需要的软件包如下:
binutils-2.15.92.0.2-13.EL4
compat-db-4.1.25-9
compat-libstdc++-296-2.96-132.7.2
control-center-2.8.0-12
gcc-3.4.3-22.1.EL4
gcc-c++-3.4.3-22.1.EL44
glibc-2.3.4-2.9
glibc-common-2.3.4-2.9
gnome-libs-1.4.1.2.90-44.1
libstdc++-3.4.3-22.1
libstdc++-devel-3.4.3-22.1
make-3.80-5
pdksh-5.2.14-30
sysstat-5.0.5-1
xscreensaver-4.18-5.rhel4.2
setarch-1.6-1
检查发现,缺少 sysstat-5.0.5-1 这个包,挂载光盘,按照如下格式安装:
# rpm –ivh sysstat-5.0.5-19.el4.i386.rpm
(2). 安装 Oracle 软件
先设置共享当前 X11 的访问权,即当前屏幕
[root@ocp ~]# xhost +
#su - oracle
定义 DISPLAY 变量,让显示输出到 X11 上,即当前 0.0 个显示设备上
[oracle@ocp ~]$ export DISPLAY=:0.0
$cd /var/oracle/oracle10g2
$./runinstaller   (-ignoreSysPrereqs) 跳过检查,因为 ORACLE 10G 不支持 RHEL5
 解压文件:
gunzip 10201_database_linux_x86_64.cpio.gz
cpio -idm <10201_database_linux_x86_64.cpio
重点注意:安装 oracle 的服务器不要修改 /etc/sysconfig/i18n 这个字体库,如果修改主机名的话,保证下面这 2 个文件是这种格式:
1 [oracle@oracle10g database]$ cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
192.168.0.7     localhost.localdomain   localhost       oracle10g
2 [oracle@oracle10g database]$ cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=oracle10g
安装系统的时候,最好使用英文模式,能避免很多问题的出现
小结:安装时经常出现的错误,主要集中在
A.SWAP 空间不够 --- 可通过新增 swap 分区或是文件来解决
B.SELINUX 的限制,导致安装完成后无法访问库文件,改变 setenforce=0 SELINUX 处于交互模式,或是禁用,但本人认为最好的方式是根据 SELINUX 的提示,更改 context 值。
C. 没有正确安装和使用的另外一个原因是所需的软件包没有正确完整的安装。
另外,有些企业的 IT 希望能够让 ORACLE 服务器开机就启动,那么下面这些内容可能对你有用:
使用 vim 打开 /etc/oratab (此文件是由 $ORACLE_HOME/root.sh 创建,所以 oracle 用户同样有权限修改)修改如下内容
orcl:/var/oracle/product/10.2.1:N   --- >  orcl:/var/oracle/product/10.2.1:Y
 
然后使用 root 身份进入修改 /etc/rc.local, 加入以下内容:
su - oracle <<EOF
lsnrctl start LISTENER
sqlplus /nolog<<EOS
connect sys/oracle as sysdba
startup
alter system register;
EOS
EOF
现在,保存退出,你会发现下次重开机, oracle 服务器就自动启动了,当然在进入系统时,鉴于 DB 的规模,而需要不同的时间来初始化这样一个环境。
同样的,如果需要对 EM, listener, isqlplus 等也进行自动启动,可以依上来设置。
但一般企业中不会进行自动启动的设置,这违反了一些管理原则。
附:登录 sqlplus 的时候,会提示命令不存在,需要安装一个 rlwrap
官方下载地址 :http://utopia.knoware.nl/~hlub/uck/rlwrap/
安装过程 :
[root@oradb temp]# tar -xvf rlwrap-0.28.tar
[root@oradb temp]# cd rlwrap-0.28
[root@oradb rlwrap-0.28]# ./configure
这一步需要 readline 的库,如果报错如下
checking for readline in -lreadline... no
configure: error:
You need the GNU readline library(ftp://ftp.gnu.org/gnu/readline/ ) to build
this program!
需要下载 readline, 地址为: ftp://ftp.gnu.org/gnu/readline/ 下载后编译安装,然后继续,或者 yum -y install readline-devel
[root@oradb rlwrap-0.28]# make
[root@oradb rlwrap-0.28]# make install

你可能感兴趣的:(oracle,linux,职场,Oracle安装,休闲)