一、安装系统

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

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

二、安装Oracle前的系统准备工作

1.检查需要的软件包

可以使用rpm -qa|grep 软件包关键词命令进行检测,一般情况下会需要手动安装如下的软件包:

From RedHat AS5 Disk 1(32 Bit)

# rpm -Uvh setarch-2* 
  # rpm -Uvh make-3* 
  # rpm -Uvh glibc-2* 
  # rpm -Uvh libaio-0*

From RedHat AS5 Disk 2(32 Bit)

# rpm -Uvh compat-libstdc -33-3* 
  # rpm -Uvh compat-gcc-34-3* 
  # rpm -Uvh compat-gcc-34-c -3* 
  # rpm -Uvh gcc-4* 
  # rpm -Uvh libXp-1*

From RedHat AS5 Disk 3(32 Bit)

# rpm -Uvh openmotif-2* 
  # rpm -Uvh compat-db-4*

[将上面的换成如下:]

在CentOS 6.4 64位系统上安装Oracle 10g

确认你的操作系统是34位还是64位,本教程只支持64位安装!!

命令:$getconf LONG_BIT

A.      初始化网络

1. 设置网络参数

编辑/etc/sysconfig/network-scripts/ifcfg-eth0,初始化网络参数(根据实际情况编辑)。

编辑/etc/hosts,加入主机名和IP(主机名用hostname或者uname –n 命令查看,两条命令的结果必须相同)

2. 设置系统服务

禁用一些不必要的系统服务

chkconfig iptables off

chkconfig ip6tables off

chkconfig cups off

chkconfig firstboot off

chkconfig wpa_supplicant off

chkconfig postfix off

3. 安装常用软件及必需软件

安装kernel-devel和kernel-headers,并且在更新系统时,禁止更新kernel:

yum -y install kernel-devel kernel-headers && echo exclude=kernel* >> /etc/yum.conf

更新系统:

yum -y update

安装常用软件:

yum -y install autoconf automake binutils-devel bison cpp dos2unix ftp gcc gcc-c++ lrzsz python-devel

安装Oracle必需软件:

yum -y install compat-db compat-gcc-34 compat-gcc-34-c++ compat-libstdc++-33 glibc-* glibc-*.i686 libXpm-*.i686 libXp.so.6 libXt.so.6 libXtst.so.6 libgcc_s.so.1 ksh libXp libaio-devel numactl numactl-devel unixODBC unixODBC-devel

如果使用DVD安装介质的话,会很方便。

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环境的配置,在以后我会专门写一篇如何配置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 /DBSoftware/app/oracle 
# mkdir -p /DBData/oradata

(5) 修改目录权限

# chown -R oracle:oinstall /DBSoftware/app/oracle/ /DBData/oradata/ 
# chmod -R 755 /DBSoftware/app/oracle/ /DBData/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监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。

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 安装文件所在目录

2. 用oracle帐户进入安装文件所在目录,执行如下命令即可看到安装界面:

$ ./runInstaller

如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:

# export DISPLAY=:0.0 
# xhost + 
$ ./runInstaller

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

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

3. 安装完成后,将/etc/redhat-release文件中的内容修改回Red Hat Enterprise Linux Server release 5 (Tikanga)

4.创建监听以及创建数据库

(1) 创建监听程序

使用Oracle提供的NET CONFIGURATION ASSISTANT创建TNS监听

$ netca

基本上就是一直Next就可以了,当然你也可以在这期间修改TNS的监听端口号

TNS监听创建完成后可以使用如下命令进行检查:

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

确认监听已经成功启动后,即可执行Database Configure Assistant进行数据库的创建,执行命令如下:

$ dbca

在创建数据库的过程中,建议将数据库的字符集设置为Unicode UTF-8,防止出现乱码。

四、数据库的启动脚本(转载自[url]http://82584.blog.51cto.com/72584/110131[/url]

# vi /etc/rc.d/init.d/oracle

================================ Script File Start ================================

#!/bin/bash 

# chkconfig: 35 95 1 
# description: init script to start/stop oracle database 10g, TNS listener, EMS 
# match these values to your environment:

export ORACLE_BASE=/DBSoftware/app/oracle 
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export PATH=/u01/app/oracle/bin:$ORACLE_HOME/bin:$PATH 
export ORACLE_SID=orcl 
export ORACLE_USER=oracle

# see how we are called: 
case $1 in 
    start) 
        su - "$ORACLE_USER"<<EOO 
        lsnrctl start 
        sqlplus /nolog<<EOS 
        connect / as sysdba 
        startup 
    EOS 
    emctl start dbconsole 
    EOO 
    touch /var/lock/subsys/$scriptname 
    ;; 
    stop) 
        su - "$ORACLE_USER"<<EOO 
        lsnrctl stop 
        sqlplus /nolog<<EOS 
        connect / as sysdba 
        shutdown immediate 
    EOS 
    emctl stop dbconsole 
    EOO 
    rm -f /var/lock/subsys/scriptname 
    ;; 
*) 
echo "Usage: $0 {start|stop}" 
;; 
esac

================================ Script File End ================================

授权 :chown root.root /etc/rc.d/init.d/oracle

修改文件属性:chmod 755 /etc/rc.d/init.d/oracle

以后启动/关闭Oracle可以使用如下命令操作:

# service oracle start     //  启动监听、数据库以及em 
# service oracle stop      //  关闭监听、数据库以及em

当然你也可以把Oracle作为系统服务,随系统启动等等。

oracle 10g的更多相关文章

  1. 安装Oracle 10g

    本文仅用于学习交流,商业用途请支持正版!转载请注明: http://www.cnblogs.com/mxbs/p/6217052.html 准备: Oracle 10g for Win(32-Bit) ...

  2. Oracle 10g安全加固(审计、监听密码)

    环境: Linux 6.4 + Oracle 10.2.0.4 1. Oracle 10g 审计功能 2. 对数据库监听器的关闭和启动设置密码 1. Oracle 10g 审计功能 Oracle 10 ...

  3. ORACLE 10g 数据库体系结构图

    ORACLE 10g 的数据库体系结构图(ORACLE 10g(Release 2)ARCHITECTURE),非常的全面.系统.高屋建瓴的整体介绍了ORACLE 10g 的数据库体系结构.如果能全面 ...

  4. RHEL6 64位系统安装ORACLE 10g 64bit 数据库

    记得去年4月份的时候,为公司部署测试环境和UAT环境时,在红帽RHEL6 64位系统安装ORACLE 10g 64位数据库时遇到了许多小问题,当时匆匆忙忙也没记录一下这些问题,前几天在虚拟机安装ORA ...

  5. windows 7/10下安装oracle 10g

    有段时间没搞oracle了,最近要给别人在win 7下装个oracle 10g,特记录备忘下. 使用http://download.oracle.com/otn/nt/oracle10g/10201/ ...

  6. ORACLE 10g AWR报告设置总结

      1:查看.修改AWR报告快照数据的采样间隔.保存策略 SQL> COL DBID FOR 999999999999 SQL> COL SNAP_INTERVAL FOR A26 SQL ...

  7. CENTOS 6.4 安装oracle 10g,手工建库及升级到10.2.0.5

    一. 数据库软件安装 参照官方手册 1.安装rpm包 注这里的yum直接用163的yum yum -y install binutils compat-libstdc++-33 compat-libs ...

  8. [转]oracle 10g数据泵之impdp-同时导入多个文件

    要了解impdp,请先了解导出,我之前作过导出的笔记:oracle 10g数据泵之expdp.这两个笔记也许只对程序员有用,通常用于把正式区的数据导入到测试区,对数据库管理员也许帮助不大,他们使用这些 ...

  9. ORACLE 10g下载地址

    ORACLE 10g下载地址 oracle 下载还需要用户名我自己注册了个方便大家使用下载 密码是这个 一般不会动了 大家也不用帮我找回密码了 每次都改 也很麻烦的如果有需要可以帮我浏览下 右侧的需要 ...

  10. 中科院Oracle 10G 数据库系统培训视频教程(828MB )

    中科院Oracle 10G 数据库系统培训视频教程(828MB  )第一章.安装及体系结构概述 Oracle数据库基础知识第二章.SQL*PLUS 基础.实例的创建启动与关闭第三章.SQL语言基础第四 ...

随机推荐

  1. List应用举例

    1.集合的嵌套遍历 学生类: package listexercise; /** * Created by gao on 15-12-9. */ public class Student { priv ...

  2. 利用 img 和 script 发送跨域请求

    利用img.src可以发送http请求,但是发送http请求不是img.src的真正用意. 同样,用script.src去请求jsonp格式的接口数据也不是script元素的最初设计用途. 但是这些歪 ...

  3. Junit使用教程(四)

    一.会用Spring测试套件的好处 在开发基于Spring的应用时,如果你还直接使用Junit进行单元测试,那你就错过了Spring为我们所提供的饕餮大餐了.使用Junit直接进行单元测试有以下四大不 ...

  4. C++ STL之查找算法

    C++STL有好几种查找算法,但是他们的用法上有很多共同的地方: 1.除了binary_search的返回值是bool之外(查找的了返回true,否则返回false),其他所有的查找算法返回值都是一个 ...

  5. 使用设置报头x-Frame-Options限制iframe网页嵌套

    x-frame-options的出现一部分是为了防止一些别有用心的者制作钓鱼网站,现在支持的浏览器有一下: chrome 4.1.249.1042 firefox 3.6.9(1.9.2.9) IE ...

  6. git中手动删除的文件如何在git中删除

    在日常开发中,我们可能或手动删除(delete键删除的)一些文件,然而我们本来应该是用git rm fileName命令删除的,但是现在我们手动删除了,那么要如何在git里面讲那些手动删除的文件删除呢 ...

  7. Effective C++学习笔记 条款04:确定对象被使用前已先被初始化

    一.为内置类型对象进行手工初始化,因为C++不保证初始化它们. 二.对象初始化数据成员是在进入构造函数用户编写代码前完成,要想对数据成员指定初始化值,那就必须使用初始化列表. class A { pu ...

  8. 栈中的push实现

  9. ASP.NET MVC 学习5、登陆页面改为SSO验证

    单点登录(SSO,single sign-on)是一个会话或用户身份验证过程,用户只需要登录一次就可以访问所有相互信任的应用系统,二次登录时无需重新输入用户名和密码.简化账号登录过程并保护账号和密码安 ...

  10. UVa 11762 (期望 DP) Race to 1

    设f(x)表示x转移到1需要的次数的期望,p(x)为不超过x的素数的个数,其中能整除x的有g(x)个 则有(1-g(x)/p(x))的概率下一步还是转移到x,剩下的情况各有1/p(x)的概率转移到x/ ...