返回顶部

欢迎来到菜鸟大明儿哥的博客

我们一起交流学习,不断提升自我

Oracle10g安装 for Linux

PS:装习惯11g以上版本,感觉安装10g坑还是多了一些,本文OS以RHEL6.5为例。

一、安装系统

首先安装Linux系统,根据Oracle官方文档的建议,在机器内存小于1G的情况下,swap分区大小应该设置为内存的2倍大,若内存大于2G则swap分区设置为与内存大小一样。

为防止Oracle安装过程中出现乱码,建议使用英文作为系统语言,进行Oracle的安装工作。

 

二、安装Oracle 10g软件之前的准备

2.修改Linux发行版本信息

由于Oracle 10g发行的时候,RedHat Enterprise Linux 5没有发行,所以Oracle 10g并没有对RedHat Enterprise Linux 5确认支持,我们有两种方法可以让Oracle 10g支持RedHat Enterprise Linux 5。

方法一:

我们需要手工修改Linux的发行注记,让Oracle 10g支持RedHat Enterprise Linux 5。

编辑/etc/redhat-release文件

# vi /etc/redhat-release

将其中的内容Red Hat Enterprise Linux Server release 5 (Tikanga)修改为Red Hat Enterprise Linux AS release 4 (Nahant Update 4)

方法二:

还有文章说修改Oracle安装包中install/oraparam.ini文件的内容,也可以让Oracle 10g支持RedHat Enterprise Linux 5,修改方法如下:

# vi install/oraparam.ini

在其中的Certified Versions段落增加redhat-5

#[Certified Versions] 
Linux=redhat-3,SuSE-9,redhat-4,redhat-5,UnitedLinux-1.0,asianux-1,asianux-2]

再添加 
[Linux-redhat-5.0-optional] 
TEMP_SPACE=80 
SWAP_SPACE=150 
MIN_DISPLAY_COLORS=256

经我测试,发现方法二在安装之前的系统检测过程可以通过,但是在安装过程中的系统支持检测无法通过,不知道是不是我设置的有问题,希望有高手可以给我点提示。

3.修改系统内核参数

# vi /etc/sysctl.conf

kernel.shmall = 2097152                    //  该参数表示系统一次可以使用的共享内存总量(以页为单位)。缺省值就是2097152,通常不需要修改kernel.shmmax = 2147483648            //  该参数定义了共享内存段的最大尺寸(以字节为单位)。缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G 
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=262144        //  默认的接收窗口大小 
net.core.rmem_max=262144             //  接收窗口的最大大小 
net.core.wmem_default=262144      //  默认的发送窗口大小 
net.core.wmem_max=262144           //  发送窗口的最大大小

修改好内核参数后,执行如下命令使新的设置生效

# /sbin/sysctl -p

4.创建Oracle用户、组、安装目录

在这里我只讨论单主机环境,不考虑RAC环境的配置。

(1) 创建Oracle用户组

# groupadd oinstall 
# groupadd dba

(2) 创建Oracle用户

# useradd -m -g oinstall -G dba oracle

(3) 设置Oracle用户口令

# passwd oracle

(4) 创建Oracle安装目录以及数据存放目录

# mkdir -p /u01/app/oracle 
# mkdir -p /oradata

(5) 修改目录权限

# chown -R oracle:oinstall /u01/app/oracle/ /oradata/ 
# chmod -R 755 /u01/app/oracle/ /oradata/

5.添加以下内容到/etc/security/limits.conf

# vi /etc/security/limits.conf

oracle soft nproc 2047 
oracle hard nproc 16384 
oracle soft nofile 1024 
oracle hard nofile 65536

6.添加以下内容到/etc/pam.d/login

# vi /etc/pam.d/login

session required /lib/security/pam_limits.so 
session required pam_limits.so

7.添加以下内容到/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

8.配置Linux主机

检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。

修改主机名

hostname testdb

vim /etc/sysconfig/network

hostname=testdb

 

9.配置oracle用户环境变量

# su - oracle 
$ vi ~/.bash_profile

增加如下内容:

export ORACLE_BASE=/DBSoftware/app/oracle   // 上面创建的Oracle安装文件夹 
export ORACLE_SID=orcl 
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export PATH=$PATH:$ORACLE_HOME/bin 
export LD_LIBARY_PATH=$ORACLE_HOME/lib

export PATH 
umask 022

保存后使用如下命令,使设置生效:

$ source ~/.bash_profile

三、安装Oracle,并进行相关设置

1.解压缩安装文件

Oracle的安装包有这样几种格式:

(1) zip      10201_database_linux32.zip

这种格式最好解压缩,直接使用命令unzip 文件名即可

(2) cpio.gz

这种格式有这样几种解压缩方式

a.  # zcat XXXX.cpio.gz | cpio -idmv 
b.  # gunzip XXXX.cpio.gz解压出XXXX.cpio文件然后再 # cpio -idvm < XXXX.cpio

解压缩完成后,设置oracle帐户可以操作安装文件所在的目录

chown -R oracle:oinstall 安装文件所在目录

 

四、安装Oracle软件

1.检查、安装Oracle依赖包

我们使用yum方式为例,个人感觉比rpm方式更简单一些

配置yum源

cd /etc/yum.repos.d/

vim yum.repo

 

[RHEL6.5]

name=Red Hat Enterprise Linux 6.5                            

baseurl=file:///mnt/cdrom                                      

enabled=1                                                        

gpgcheck=1 

 

 

mkdir  /mnt/cdrom

#建议挂载点

mount  /dev/cdrom  /mnt/cdrom/

 

清除原有缓存

yum clean all

 

yum repolist

 

 

 

yum install -y binutils-* compat-db-* control-center* gcc-* gcc-c++-* glibc-* glibc-common-* gnome-libs-* libstdc++-* libstdc++-* make-* pdksh-* sysstat-* xscreensaver-* make-* compat-db* control-center-* gcc-* gcc-c++-* gdb-6.1post-* glibc-* glibc-common-* glibc-devel-* glibc-devel-* compat-db-* compat-gcc-* compat-gcc-c++-* compat-libstdc++-* compat-libstdc++-devel-* gnome-libs-* libstdc++-* libstdc++-devel-* openmotif-* sysstat-* setarch-* libaio-* libaio-devel-*

注意:需要安装32位包,这个很重要,否则会报错,无法启动图形安装界面

cd /mnt/cdrom/Packages

yum localinstall –y libXp-1.0.0-15.1.el6.i686.rpm

yum localinstall -y libXp-devel-1.0.0-15.1.el6.i686.rpm

yum install -y glibc-*.i686

 

报错1

Public key for freetype-devel-2.3.11-14.el6_3.1.x86_64.rpm is not installed

此时要导入rpm的签名信息即可

root登录,执行下面命令
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

 

如果我的Linux版本是CentOS 6

于是我执行下面命令
#rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

 

 

 ./runInstaller

报错2

Checking operating system version: must be redhat-3, SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2

                                      Failed <<<<

 

操作系统版本过高,需要加上参数ignoreSysPrereqs

./runInstaller –ignoreSysPrereqs

 

 

报错3

Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/java/j2sdk1.4.2_19/jre/lib/i386/libawt.so: libXtst.so.6: cannot open shared object file: No such file or directory

 

        at java.lang.ClassLoader$NativeLibrary.load(Native Method)

 

        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)

 

        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1503)

 

        at java.lang.Runtime.loadLibrary0(Runtime.java:788)

 

        at java.lang.System.loadLibrary(System.java:834)

 

        at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)

 

        at java.security.AccessController.doPrivileged(Native Method)

 

        at java.awt.Toolkit.loadLibraries(Toolkit.java:1437)

 

        at java.awt.Toolkit.<clinit>(Toolkit.java:1458)

 

        at java.awt.Font.<clinit>(Font.java:136)

 

        at com.google.code.kaptcha.util.Config.getTextProducerFonts(Config.java:102)

 

        at com.google.code.kaptcha.text.impl.DefaultWordRenderer.renderWord(DefaultWordRenderer.java:35)

 

        at com.google.code.kaptcha.impl.DefaultKaptcha.createImage(DefaultKaptcha.java:43)

 

        at TestLinuxFont.main(TestLinuxFont.java:27)

 

需要安装依赖包(包含32位包)

#yum install libXp

#yum install libXt

#yum install libxtst

yum install libXp*.i686

#yum install libXt*.i686

 

安装中遇到下面错误可以先点继续,之后再执行relink all

 

 

出现安装界面后,根据界面提示进行相关的设置,我的建议是在安装过程中不创建数据库,只安装程序,监听和创建数据库等安装完成后再进行相关的操作。

安装过程中,需要使用root权限执行两个脚本。

 

$ORACLE_HOME/bin/relink all

 

 报错4 安装过程中会遇到此错误

ORA-27125: unable to create shared memory segment

 

[root@pastdb01 oradata]# id oracle

uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba)

 

[root@pastdb01 oradata]# more /proc/sys/vm/hugetlb_shm_group
0

 

echo 502 >/proc/sys/vm/hugetlb_shm_group

 

[root@pastdb01 oradata]# more /proc/sys/vm/hugetlb_shm_group
502

 

 如果需要重新安装,需要删除安装的软件残留

1.cd/u01/app

rm -rf *

 

2.cd /usr/local/bin/

 

 rm -rf *

 

3.cd /etc/

 

 

[root@pastdb01 etc]# more oraInst.loc
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall

rm -rf   oraInst.loc

 

五、建库及监听

dbca

一般常用的字符集是ZHS16GBK和Unicode UTF-8

 

netca

 netstat -atln    检查监听端口是否打开 
$ lsnrctl status    检查TNS监听状态

 

 

posted @ 2021-04-08 15:06  菜鸟大明儿哥  阅读(879)  评论(0编辑  收藏  举报