虚拟机centos6.6安装Oracle11gR2

对于Oracle DBA来说,数据库的安装时最为基本的能力,但还有很多初学者对于一些安装的细节和流程不太熟悉。所以这次想要整理出来一套相对完整,详细的安装文档,供大家参考。

Linux下安装Oracle11gR2流程:

一、下载安装介质

二、检查配置安装环境

a) OS版本和kernel限制

b) 配置IP

c) 检查空间限制

d) 软件包需求

e) 内核参数

f) 用户和资源限制

g) 关闭防火墙

三、运行图形化安装

 

一、下载安装介质

现在大部分人手里都有安装介质,没有的话,可以在下面的链接下载:

我用的是Centos6.6系统

http://www.centoscn.com/CentosSoft/

oracle11gR2安装包(两个压缩文件)
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win64soft-094461.html

二、检查配置安装环境

a) 检查OS版本

oracle 11g 主要是内核版本的要求只支持 2.6.9 - 2.6.32之间版本的kernel也就是RHEL4 - RHEL5

查看OS版本命令:cat /proc/version

 虚拟机centos6.6安装Oracle11gR2

b) 配置IP并解析主机名

设置IP地址为静态(固定IP地址)

修改网卡配置文件,并且重启服务

 

 解析主机名

虚拟机centos6.6安装Oracle11gR2 

 

c) 检查内存和交换空间

1、内存需求

虚拟机centos6.6安装Oracle11gR2


2、swap空间

虚拟机centos6.6安装Oracle11gR2 

虚拟机centos6.6安装Oracle11gR2

3、tmp空间

 虚拟机centos6.6安装Oracle11gR2

d) 软件包需求

需要按装的软件包

 虚拟机centos6.6安装Oracle11gR2

配置yum,我用的是虚拟机,先挂载镜像,

 虚拟机centos6.6安装Oracle11gR2

编写yum配置文件:

vim /etc/yum.repos.d/yum.repo

 虚拟机centos6.6安装Oracle11gR2

配置好yum之后,直接执行如下命令:

yum -y install binutils compat-libstdc++-33 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 pdksh ksh libaio.i686 glibc.i686 compat-libstdc++-33.i686 libaio-devel.i686 libgcc.i686 libstdc++.i686 unixODBC.i686 unixODBC-devel.i686

 

e) 修改内核参数,PAM限制资源

修改/etc/security/limits.conf文件,在结尾添加:

 

oracle              soft    nproc   2047

oracle              hard    nproc   16384

oracle              soft    nofile  1024

oracle              hard    nofile  65536

oracle              soft    stack   10240

 

修改/etc/sysctl.conf文件

 

fs.aio-max-nr = 1048576

fs.file-max = 6815744  

kernel.shmall = 2097152

kernel.shmmax = 536870912

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304     

net.core.wmem_default = 262144

net.core.wmem_max = 1048576     

刷新内核参数,使参数立即生效

Sysctl -p

各参数详解:

kernel.shmmax:是核心参数中最重要的参数之一,用于定义单个共享内存段的最大值。设置应该足够大,能在一个共享内存段下容纳下整个的SGA ,设置的过低可能会导致需要创建多个共享内存段,这样可能导致系统性能的下降。至于导致系统下降的主要原因为在实例启动以及ServerProcess创建的时候,多个小的共享内存段可能会导致当时轻微的系统性能的降低(在启动的时候需要去创建多个虚拟地址段,在进程创建的时候要让进程对多个段进行“识别”,会有一些影响),但是其他时候都不会有影响。

 

官方建议值:

32位linux系统:可取最大值为4GB(4294967296bytes)-1byte,即4294967295。建议值为多于内存的一半,所以如果是32为系统,一般可取值为4294967295。32位系统对SGA大小有限制,所以SGA肯定可以包含在单个共享内存段中。

 

64位linux系统:可取的最大值为物理内存值-1byte,建议值为多于物理内存的一半,一般取值大于SGA_MAX_SIZE即可,可以取物理内存-1byte。例如,如果为12GB物理内存,可取12*1024*1024*1024-1=12884901887,SGA肯定会包含在单个共享内存段中。

kernel.shmall: 该参数控制可以使用的共享内存的总页数。Linux共享内存页大小为4KB,共享内存段的大小都是共享内存页大小的整数倍。一个共享内存段的最大大小是16G,那么需要共享内存页数是16GB/4KB=16777216KB /4KB=4194304(页),也就是64Bit系统下16GB物理内存,设置kernel.shmall = 4194304才符合要求(几乎是原来设置2097152的两倍)。这时可以将shmmax参数调整到16G了,同时可以修改SGA_MAX_SIZE和SGA_TARGET为12G(您想设置的SGA最大大小,当然也可以是2G~14G等,还要协调PGA参数及OS等其他内存使用,不能设置太满,比如16G)

 

kernel.shmmni:该参数是共享内存段的最大数量。shmmni缺省值4096,一般肯定是够用了。

 

fs.file-max:该参数决定了系统中所允许的文件句柄最大数目,文件句柄设置代表linux系统中可以打开的文件的数量。

 

fs.aio-max-nr:此参数限制并发未完成的请求,应该设置避免I/O子系统故障。推荐值是:1048576 其实它等于 1024*1024 也就是 1024K 个。

 

kernel.sem:以kernel.sem = 250 32000 100 128为例:

       250是参数semmsl的值,表示一个信号量集合中能够包含的信号量最大数目。

       32000是参数semmns的值,表示系统内可允许的信号量最大数目。

       100是参数semopm的值,表示单个semopm()调用在一个信号量集合上可以执行的操作数量。

       128是参数semmni的值,表示系统信号量集合总数。

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

net.core.rmem_default:表示套接字接收缓冲区大小的缺省值。

net.core.rmem_max:表示套接字接收缓冲区大小的最大值。

net.core.wmem_default:表示套接字发送缓冲区大小的缺省值。

net.core.wmem_max:表示套接字发送缓冲区大小的最大值。

 

f) 修改用户资源限制和创建目录

创建组:

groupadd -g 501 oinstall

groupadd -g 502 dba

groupadd -g 503 oper(可以不添加)

创建用户:

useradd -g oinstall -G dba oracle

给Oracle创建密码:

passwd oracle

设置oracle环境变量

vi ~oracle/.bash_profile

export ORACLE_BASE=/u01/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0

export ORACLE_SID=ora11g

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

创建安装目录
mkdir -p /u01/oracle
chown -R oracle:oinstall /u01/

 

解压安装包并将解压好的目录放到根目录下,方便Oracle用户访问:

 虚拟机centos6.6安装Oracle11gR2

用Oracle用户执行安装命令:

 虚拟机centos6.6安装Oracle11gR2

    g)关闭iptables和selinux

  虚拟机centos6.6安装Oracle11gR2

修改SELINUX=disabled

虚拟机centos6.6安装Oracle11gR2


三、安装流程

1.安全更新

可以通过metalink(my oracle support是metalink新名)获取更新的信息metalink账号通过购买ORACLE数据产品附赠如果没有直接点下一步跳过

   虚拟机centos6.6安装Oracle11gR2

2.安装选项

选择安装方式

安装数据库软件并创建新数据库

仅安装数据库软件

升级数据库

根据个人需求来选择,这里选择了安装软件并创建数据库

 虚拟机centos6.6安装Oracle11gR2

3.安装的数据库应用类型
桌面版 企业版

 虚拟机centos6.6安装Oracle11gR2

4.数据库类型

单机 或 集群

 虚拟机centos6.6安装Oracle11gR2

5.安装路线

基本设置 和 高级自定义设置,选择高级安装,会有很多自定义的设置

 虚拟机centos6.6安装Oracle11gR2

6.产品语言

这里只添加了英语

 虚拟机centos6.6安装Oracle11gR2

7.版本

企业版 标准版 标准版1 这里我们安装企业版,会多出一些功能

 虚拟机centos6.6安装Oracle11gR2

8.安装路径

前期设置好 ORACLE_BASE  ORACLE_HOME 会自动查找

 虚拟机centos6.6安装Oracle11gR2

9.产品清单
用于记录安装了哪些产品
卸载时会使用这份记录

 虚拟机centos6.6安装Oracle11gR2

 

10.数据库用途

OLTP 在线交易系统

OLAP 在线决策支持系统

 虚拟机centos6.6安装Oracle11gR2

 

11.数据库标识
前期设置好 ORACLE_SID 会自动获取

 虚拟机centos6.6安装Oracle11gR2

 

12. 数据库选项设置
1.)内存设置
11G的内存自动管理包括(SGA+PGA)

 虚拟机centos6.6安装Oracle11gR2

 

2.)字符集选项

建立数据库时设定后 不建议后期更改
后期更改要严格遵守字符集的子集和超集关系
只能向超集更新
初次设置建议采用AL32UTF8
并且在一个公司内部所有数据库采用相同字符集
这样后期导入导出工具也能兼容

 虚拟机centos6.6安装Oracle11gR2

 

3.)安全性
11G新特性
口令区分大小写
失败登陆10次后锁定账号
可以在安装完成后在数据库中修改参数开启和关闭

 虚拟机centos6.6安装Oracle11gR2

 

13. GC和DC配置

管理多台数据库的GC
和单机的EM管理DC
EM默认是安装的,这里只是设置故障通知邮件

 虚拟机centos6.6安装Oracle11gR2

14.数据库文件存储类型
文件系统
ASM(oracle自动存储管理)

 虚拟机centos6.6安装Oracle11gR2


15.数据库自动备份调度系统

 虚拟机centos6.6安装Oracle11gR2

 

16.管理账户的密码
设置的密码要求复杂度
有警告可以跳过

 虚拟机centos6.6安装Oracle11gR2

 虚拟机centos6.6安装Oracle11gR2

17.系统管理组
已经在上面建好
会自动检测

 虚拟机centos6.6安装Oracle11gR2

18.安装先决条件检查

安装11.2.0.1版本,会有很多32位的安装包,因为已经安装过64位的包,所以可以忽略。这里面一般会报关于内核参数或者包没有安装的错误,招着上面的提示修改或者安装就行。

 虚拟机centos6.6安装Oracle11gR2

 

 

 

 

 

19.所有选项预览

选择 完成 即可执行安装

 

 

 

虚拟机centos6.6安装Oracle11gR2 

以root用户执行脚本,第二个脚本需要Enter,
一定要先执行脚本 再回来点 确定


虚拟机centos6.6安装Oracle11gR2

里面提示的EM的地址。

 虚拟机centos6.6安装Oracle11gR2

 

 到此数据库就算是完成安装,希望对大家能有所帮助。