1.   Centos及Oracle版本

Centos:CentOS release 6.4 (Final)

Oracle:linux.x64_Oracle_11gR2_database

2.   硬件环境要求

2.1          内存要求

  • 物理内存要求:

至少1G,查看物理内存命令:

# grep MemTotal /proc/meminfo

  • 虚拟内存要求:

物理内存4-8G,要求虚拟内存为2倍物理内存;

物理内存8-32G,要求虚拟内存为1.5倍物理内存;

物理内存32G,要求虚拟内存为32G;

查看虚拟内存命令:

# grep SwapTotal /proc/meminfo

增加虚拟内存示例:

# dd if=/dev/zero of=/swapadd bs=1024 count=2006424

# mkswap /swapadd

# swapon /swapadd

2.2 存储空间要求

/tmp目录下需至少1G空间

# df -h /tmp

如果不足1G需设置oracle用户的TMP和TMPDIR环境变量。

对数据库安装目录,需至少4.35G空间,对数据文件目录,需至少1.68G空间。

3.   软件环境要求

3.1          内核版本要求

需满足:2.6.18 or later

检查命令:

# uname -r

3.2     系统包要求

以下系统包或以上版本(32个)必须满足:

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3 (32 bit)

elfutils-libelf-0.125

elfutils-libelf-devel-0.125

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-24

glibc-2.5-24 (32 bit)

glibc-common-2.5

glibc-devel-2.5

glibc-devel-2.5 (32 bit)

glibc-headers-2.5

ksh-20060214

libaio-0.3.106

libaio-0.3.106 (32 bit)

libaio-devel-0.3.106

libaio-devel-0.3.106 (32 bit)

libgcc-4.1.2

libgcc-4.1.2 (32 bit)

libstdc++-4.1.2

libstdc++-4.1.2 (32 bit)

libstdc++-devel 4.1.2

make-3.81

numactl-devel-0.9.8.x86_64

sysstat-7.0.2

unixODBC-2.2.11

unixODBC-2.2.11 (32 bit)

unixODBC-devel-2.2.11

elfutils-libelf-devel-static-0.125

kernel-headers-2.6.18

libgomp-4.1.2

检查命令:

# rpm -q package_name

4.   创建用户组及用户

# /usr/sbin/groupadd oinstall

# /usr/sbin/groupadd dba

# /usr/sbin/useradd -g oinstall -G dba oracle

# passwd oracle

5.   配置内核参数

5.1 检查内核参数

下表为需要检查的内核参数、最小值、检查命令、及参数文件路径:

参数

最小值

检查命令

文件路径

semmsl

250

# /sbin/sysctl -a | grep sem

/proc/sys/kernel/sem

semmns

32000

semopm

100

semmni

128

shmall

2097152

# /sbin/sysctl -a | grep shm

/proc/sys/kernel/shmall

shmmax

4GB-1byte或物理内存的一半,两者最小值.

Default: 536870912

/proc/sys/kernel/shmmax

shmmni

4096

/proc/sys/kernel/shmmni

file-max

6815744

# /sbin/sysctl -a | grep file-max

/proc/sys/fs/file-max

ip_local_port_range

Minimum: 9000

Maximum: 65500

# /sbin/sysctl -a | grep ip_local_port_range

/proc/sys/net/ipv4/ip_local_port_range

rmem_default

262144

# /sbin/sysctl -a | grep rmem_default

/proc/sys/net/core/rmem_default

rmem_max

4194304

# /sbin/sysctl -a | grep rmem_max

/proc/sys/net/core/rmem_max

wmem_default

262144

# /sbin/sysctl -a | grep wmem_default

/proc/sys/net/core/wmem_default

wmem_max

1048576

# /sbin/sysctl -a | grep wmem_max

/proc/sys/net/core/wmem_max

aio-max-nr

Maximum: 1048576

# cat /proc/sys/fs/aio-max-nr

/proc/sys/fs/aio-max-nr

对于需要修改的参数,要在/etc/sysctl.conf(如果没有该文件则创建)中修改。如果该文件中存在参数配置,直接修改,否则增加新行。

以下是对SCB UPRR生产环境的分析:

Oracle推荐设置                            /etc/sysctl.conf是否需修改,如何修改

kernel.sem = 250 32000 100 128              ##修改,增加本行

kernel.shmall = 2097152                     ##满足,无需增加或修改

kernel.shmmax = 536870912                   ##满足,无需增加或修改

kernel.shmmni = 4096                        ##满足,无需增加或修改

fs.file-max = 6815744                       ##修改,增加本行

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 = 1048586                 ##修改,增加本行

fs.aio-max-nr = 1048576                     ##修改,增加本行

5.2 修改内核参数

经上述分析,SCB UPRR生产环境在/etc/sysctl.conf中无参数修改,但有参数增加,增加内容如下:

# vi /etc/sysctl.conf

kernel.sem = 250 32000 100 128

fs.file-max = 6815744

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 = 1048586

fs.aio-max-nr = 1048576

修改后,使设置生效:

# /sbin/sysctl -p

执行生效命令后,再次检查确认参数设置:

# /sbin/sysctl -a

6 用户限制设置

6.1用户文件限制检查

切换到安装用户oracle

# su - oracle

检查以下参数是否在推荐的范围内

Type

Item

Recommended Ranges

Command

soft

nofile

at least 1024

$ ulimit -Sn

hard

nofile

at least 65536

$ ulimit -Hn

soft

nproc

at least 2047

$ ulimit -Su

hard

nproc

at least 16384

$ ulimit -Hu

soft

stack

at least 10240 KB

$ ulimit -Ss

hard

stack

at least 10240 KB

at most 32768 KB

$ ulimit -Hs

6.2修改用户限制

$ su - root

在文件/etc/security/limits.conf中加入以下内容:

# vi /etc/security/limits.conf

oracle    soft    nofile    1024

oracle    hard    nofile    65536

oracle    soft    nproc     2047

oracle    hard    nproc     16384

在/etc/pam.d/login中增加以下内容:

vi /etc/pam.d/login

session    required    /lib/security/pam_limits.so

session    required    pam_limits.so

在/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

7 关闭SELinux

# vi /etc/sysconfig/selinux

#SELINUX=enforcing

SELINUX=disabled

8 创建安装目录

# mkdir -p /u01/app/

# chown -R oracle:oinstall /u01/app/

# chmod -R 775 /u01/app/

9 设置环境变量

# su - oracle

$ vi ~/.bash_profile

umask 022

export ORACLE_BASE=/u01/app/oracle

export ORACLE_SID=uprr

$ source /home/oracle/.bash_profile

$ unset ORACLE_HOME

$ unset TNS_ADMIN

注意,除了ORACLE_BASE和ORACLE_SID,( /etc/profile和.bash_profile中)不设置任何oracle相关环境变量(ORACLE_HOME, PATH, LD_LIBRARY_PATH等)。

检查环境变量:

$ env | more

检查用户文件权限掩码:

$ umask

10 静默安装软件

10.1 创建oraInst.loc

$ su - root

# vi /etc/oraInst.loc

inventory_loc=/u01/app/oracle/oraInventory

inst_group=oinstall

# chown oracle:oinstall /etc/oraInst.loc

# chmod 664 /etc/oraInst.loc

10.2 创建响应文件

# su - oracle

mkdir etc

cp linux.x64_Oracle_11gR2_database/database/response/* etc/

vi db_install.rsp

仅安装Oracle软件的响应文件UPRR_INSTALL_DB_SWONLY.rsp

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=build001

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/u01/app/oracle/oraInventory

SELECTED_LANGUAGES=en,zh_CN,zh_TW

ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1

ORACLE_BASE=/u01/app/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=false

oracle.install.db.DBA_GROUP=dba

oracle.install.db.OPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true

创建数据库的响应文件UPRR_DBCA.rsp

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "createDatabase"

[CREATEDATABASE]

GDBNAME = "uprr"

SID = "uprr"

TEMPLATENAME = "General_Purpose.dbc"

DATAFILEDESTINATION = "/u01/app/oracle/oradata"

RECOVERYAREADESTINATION= "/u01/app/oracle/flash_recovery_area"

CHARACTERSET = "AL32UTF8"

NATIONALCHARACTERSET= "UTF8"

NET配置的响应文件使用Oracle默认即可,无需修改,该文件在Oracle安装包的路径:

$cp database/response/netca.rsp /home/oracle/UPRR_NETCA.rsp

$ su - root

# chmod 700 /home/oracle/UPRR_INSTALL_DB_SWONLY.rsp

10.3 安装Oracle

安装:

# su - oracle

$ cd database

$ ./runInstaller -silent -debug -force -responseFile /home/oracle/UPRR_INSTALL_DB_SWONLY.rsp

备注:(可选参数-noconfig -IgnoreSysPreReqs)

出现类似如下提示表示安装完成:

#-------------------------------------------------------------------

...

/u01/app/oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/11.2.0/dbhome_1/root.sh

To execute the configuration scripts:

1. Open a terminal window

2. Log in as "root"

3. Run the scripts

4. Return to this window and hit "Enter" key to continue

Successfully Setup Software.

设置环境变量

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1

export TNS_ADMIN=$ORACLE_HOME/network/admin

export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin

export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib

export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/JRE/lib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib

export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib

export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

export ORACLE_OWNER=oracle

export SPFILE_PATH=$ORACLE_HOME/dbs

export ORA_NLS10=$ORACLE_HOME/nls/data

source /home/oracle/.bash_profile

11 静默配置网络

$ $ORACLE_HOME/bin/netca /silent /responseFile /home/oracle/UPRR_NETCA.rsp

/u01/app/oracle/product/11.2.0/dbhome_6/srvm/admin/getcrshome 没有可执行权限?

12 静默安装数据库

# su - oracle

$ $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/UPRR_DBCA.rsp

安装期间查看日志信息了解进度:

$ tail -100f $ORACLE_BASE/cfgtoollogs/dbca/$ORACLE_SID/$ORACLE_SID.log

建库后实例检查

$ ps -ef | grep ora_ | grep -v grep | wc -l

$ ps -ef | grep ora_ | grep -v grep

建库后监听检查

$ lsnrctl status

如果使用归档日志

$ sqlplus / as sysdba

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter database archivelog;

SQL> alter database flashback on; (如果要启用数据库闪回功能则执行)

SQL> alter database open;

SQL> execute utl_recomp.recomp_serial(); (重新编译所有可能失效对象)

SQL> alter system archive log current; (手工归档测试)

默认安装的数据库用户检查

SQL> set lines 256 pages 500

SQL> select USER_ID,USERNAME,ACCOUNT_STATUS,DEFAULT_TABLESPACE from dba_users order by 1;

centos静默式安装Oracle11g的更多相关文章

  1. CentOS Linux上安装Oracle11g笔记

    CentOS Linux上安装Oracle11g 到 otn.oracle.com 网站上下载 Linux版的oracle 11g 编辑 /etc/sysctl.conf : kernel.shmal ...

  2. centos上如何安装redis?|centos傻瓜式安装redis教程

    本文介绍centos安装redis,请不要安装2.4.3,是有问题的. 首先安装gcc yum -y install gcc yum -y install gcc-c++ yum install ma ...

  3. Linux(CentOS 7.0)安装Oracle11g R2

    // 注释 # root用户 $oracle用户 1. 关闭安全措施    # chkconfig iptables off // 永久关闭防火墙 # serviceiptables stop // ...

  4. CentOS 5 上安装Oracle11g

    原创作品,出自 "深蓝的blog" 博客.欢迎转载.转载时请务必注明下面出处.否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlo ...

  5. Linux CentOS 6.5 64位 静默安装Oracle11g 云主机

    本例: 通过SSH远程连接云主机,上传oracle11g安装包,在centos6.5上无图形化界面静默安装oracle11g. 涉及工具及环境: 1.本地环境windows7+ssh远程连接工具xSh ...

  6. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.6. 安装Oracle所依赖的必要包

    2.6. 安装Oracle所依赖的必要包 2.6.1. 检查Oracle所依赖的必要rpm包 [root@localhost /]#rpm -q binutils compat-libstdc elf ...

  7. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.4. 安装JDK

    2.4.安装JDK 2.4.1.准备JDK 在百度搜索:JDK下载 2.4.2.上传JDK put E:\软件安装文件\jdk-8u11-linux-x64.rpm /home/linuxrac1/D ...

  8. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.2安装操作系统CentOS5.4

    2.2. 安装操作系统CentOS5.4 两个虚拟机都安装,此步骤在创建虚拟机节点时: 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境所有链接: 1.资源 ...

  9. 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:4.安装Oracle RAC FAQ-4.1.系统界面报错Gnome

    1.错误信息:登录系统后,屏幕弹出几个错误对话框,无菜单.无按钮 GConf error: Failed to contact configuration server; some possible ...

随机推荐

  1. jQuery的remove和detach的区别

    1.remove([expr])   概述:从DOM中删除所有匹配的元素. 这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素.但除了这个元素本身得以保留之外,其他的 ...

  2. cookie,localStorage,sessionStorage

    1.cookie 由于HTTP是一种无状态的协议,服务器单从请求内容上无法判断客户身份.因此,cookie弥补这个缺陷,每次请求都携带cookie,这样服务器就能能知道不同的客户端请求了. 对于同一域 ...

  3. 高级应用与部署 —— 主程序与web目录分离

    在网站部署中,考虑网站的安全行问题,可以将您的网站主程序与web目录分离,使主程序在web目录之外,从而提高网站的安全性. 分离方法 1.将phpcms v9中程序主框架目录phpcms移动至web目 ...

  4. 基于.NET MVC的高性能IOC插件化架构(二)之插件加载原理

    上一篇博文简单介绍了下插件化的代码组成部分:http://www.cnblogs.com/gengzhe/p/4390932.html,源码地址:https://github.com/luohuazh ...

  5. 方便john破解linux密码批处理

    Title:方便john破解linux密码批处理 -- 2011-11-23 17:31 自定义文件HASH名和字典名批处理(单一文件): @echo offcolor 0asetlocal enab ...

  6. Eric Pement的单行awk命令收集

    超实用的. awk1line_zh-CN.txt 可惜中文版的网址好像不能访问了.. HANDY ONE-LINE SCRIPTS FOR AWK 30 April 2008 Compiled by ...

  7. S-Nim

    http://acm.hdu.edu.cn/showproblem.php?pid=1536 SG经典题,不多说 // File Name: hdu1536.cpp // Author: bo_jwo ...

  8. 组播MAC地址转换关系及唯一性处理

    组播地址与其对应的组播MAC换算关系如下:   组播MAC=组播MAC标识+组播IP后23位对应的二进制位(32位的IP地址取后23位导致32组IP地址对应的多播IP相同) (IANA把01:00:5 ...

  9. iOS UIView指定显示摸一个角弧形显示

    关键代码: UIBezierPath *maskPath = [UIBezierPath bezierPathWithRoundedRect: view.bounds byRoundingCorner ...

  10. C++ lambda 表达式传递的变量默认不可变

    我遇到例如以下问题: int count=0; listener->onTouchMoved=[count](Touch* t,Event* e){ count++; log("onT ...