[terry笔记]Oracle10g/11g安装-redhat5.5

操作系统准备工作

其实真正的进入图形界面安装是简单的,只是前期的配置比较繁琐,如版本、空间、位置、软件包、用户、环境变量、内核参数,这里主要讨论前期配置。

10g与11g的单实例安装基本一样,主要区别在系统的软件包和某些系统参数,本文中分别叙述。

支持的版本:
     oracle10g的版本只支持到RHEL4,建议安装官方认可的操作系统版本。
    如果是在RHEL5上安装10g,需要修改一下系统中的版本识别文件。
    因为oracle安装包中的代码有检测操作系统的脚本。
 
     [root@ora mnt]# grep ^Linux install/oraparam.ini
     Linux=redhat-3,SuSE-9,redhat-4,UnitedLinux-1.0,asianux-1,asianux-2
 
   解决方法,用vi改一下
     [root@ora mnt]# cat /etc/redhat-release
     Red Hat Enterprise Linux Server release 5.5 (Tikanga)
     [root@ora mnt]# vim /etc/redhat-release
     [root@ora mnt]# cat /etc/redhat-release     
     Red Hat Enterprise Linux Server release 4.5 (Tikanga)
 
空间需求
    内存至少512M交换分区至少1G
     oracle软件安装位置1.3G
    数据库安装位置至少1G
     /tmp要有足够400M的剩余
    如果这些目录都是隶属于根文件系统那根需要有3G空闲才能安装(1.3+1+0.4)
    上述都属于最小要求这是远远不够后期运行添加数据使用的.
    并且随着后期运行oracle自身产生的文件会逐渐增大请保留足够的空间需求
 
    检查方法
     [root@ora ~]# df -h
    文件系统     类型     容量已用  可用已用%挂载点
     /dev/sda2     ext3     15G  2.3G   12G  17% /
     /dev/sda1     ext3     99M   12M   83M  12% /boot
     tmpfs        tmpfs    506M     0  506M   0% /dev/shm
     [root@ora ~]# grep -E 'MemTotal|SwapTotal' /proc/meminfo
     MemTotal:      1035108 kB
     SwapTotal:     1076344 kB
 
软件包检查,使用root执行下列脚本
10.2.0.1.0:
for i in binutils compat-gcc-34 compat-libstdc++-296 control-center \
          gcc gcc-c++ glibc glibc-common glibc-devel libaio libgcc \
          libstdc++ libstdc++-devel libXp make openmotif22 setarch
do
         rpm -q $i &>/dev/null || F="$F $i"
done ;echo $F;unset F
 
11.2.0.3.0:
for i in binutils compat-gcc-34 compat-libstdc++-296 control-center \
          gcc gcc-c++ glibc glibc-common glibc-devel libaio libgcc \
          libstdc++ libstdc++-devel libXp make openmotif22 setarchelfutils-libelf-devel\
           elfutils-libelf-devel-static sysstat libaio-devel
do
         rpm -q $i &>/dev/null || F="$F $i"
done ;echo $F;unset F
 
    如果这个命令执行后有输出包名字,则利用rpm或者yum(推荐)进行安装,这里不在阐述。
    如果没有输出信息则说明所需要的软件包已经都在系统中了
 
建立oracle用户和组 建议指定GID和UID方式(尤其集群环境)
     [root@ora ~]# groupadd -g 1000 oinstall
     [root@ora ~]# groupadd -g 1001 dba
     [root@ora ~]# useradd -u 1000 -g oinstall -G dba oracle
     [root@ora ~]# passwd oracle
 
主机名和解析地址
     [root@ora ~]# hostname
      ora.terry.com
     [root@ora ~]# ifconfig eth0 | head -n 2
     eth0      Link encap:Ethernet  HWaddr 00:0C:29:9F:DF:4A 
               inet addr:192.168.1.100  Bcast:10.10.10.255  Mask:255.255.255.0
     [root@ora ~]# grep -v '^#' /etc/hosts
     127.0.0.1 localhost.localdomain localhost
      192.168.1.100 ora.terry.com ora
 
修改操作系统参数
添加到
vim /etc/sysctl.conf 文件底端 
10.2.0.1.0
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
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
加载参数 sysctl -p
 
11.2.0.3.0
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
加载参数 sysctl -p

 

参数解释

kernel.shmmax ##Maximum size of shared memory segment (bytes) 可使用的最大内存,建议配置到大于数据库内存

kernel.shmall ##Total amount of shared memory available (bytes or pages)

kernel.shmmni ##Maximum number of shared memory segments system-wide

kernel.shmall*kernel.shmmni = ##能够分配的内存大小



kernel.sem = SEMMSL SEMMNS SEMOPM SEMMNI

SEMMSL ##Maximum number of semaphores per set 每个信号对象集的最大信号对象数;

SEMMNS ##Maximum number of semaphores system-wide 系统范围内最大信号对象数;

SEMOPM ##每个信号对象支持的最大操作数;

SEMMNI ##Maximum number of semaphore identifiers 系统范围内最大信号对象集数。

其中 SEMMNS的值等于 SEMMSL*SEMMNI



fs.file-max ##系统中所允许的文件句柄最大数目。

net.ipv4.ip_local_port_range ##应用程序可使用的IPv4端口范围。

net.core.rmem_default ##套接字接收缓冲区大小的缺省值

net.core.rmem_max ##套接字接收缓冲区大小的最大值

net.core.wmem_default ##套接字发送缓冲区大小的缺省值

net.core.wmem_max ##套接字发送缓冲区大小的最大值

shell限制
[root@ora ~]# grep -v '^#' /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

在system-auth中添加一行
[root@ora ~]# grep 'limit' /etc/pam.d/system-auth
session     required      pam_limits.so
 
建立oracle软件安装文件目录
[root@ora ~]# mkdir -p /u01/oracle
[root@ora ~]# chown -R oracle:oinstall /u01/
 
设置oracle环境变量
[root@ora ~]# vi /home/oracle/.bash_profile


export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
export ORACLE_SID=kkterry
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

登陆oracle用户并echo $ORACLE_SID、echo $ORACLE_HOME进行检查

ORACLE_BASE  oracle产品基目录
ORACLE_HOME 数据库目录
ORACLE_SID  操作系统和oracle实例关联的纽带
PATH  将安装后的oracle命令追加到执行搜索路径
LD_LIBRARY_PATH 动态库的位置
 
 
运行安装命令

现在root下执行xhost+,然后使用oracle用户登录,并以绝对路径执行安装程序 runInstaller

[root@ora ~]# xhost +

[root@ora ~]# su - oracle

[oracle@ora ~]# /mnt/database/runInstaller

10g安装界面有可能乱码,退出界面后执行export LANG=C,然后再次执行/mnt/database/runInstaller

图形界面进行安装这里不再叙述。

首次安装后会让root执行两个脚本:

[root@ora ~]# /u01/oracle/oraInventory/orainstRoot.sh
更改权限/u01/oracle/oraInventory 到 770.
更改组名/u01/oracle/oraInventory 到 oinstall.
脚本的执行已完成
[root@ora ~]# /u01/oracle/product/11.2.0/root.sh
Running Oracle10 root.sh script...
 
The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/oracle/product/11.2.0
 
Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...
 
 
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root.sh script.
Now product-specific root actions will be performed.

执行完后按照图形界面点击下去,没有报错就算安装成功。

有些情况下会出现报出oem安装配置失败,可能是因为网络等原因,可以忽略,以后再配置。

你可能感兴趣的:(oracle10g)