一硬件要求
内存 & swap
Minimum: GB of RAM
Recommended: GB of RAM or more
检查内存情况
# grep MemTotal /proc/meminfo
# grep SwapTotal /proc/meminfo
硬盘
由于CentOS安装后差不多有~G再加上Oracle等等的安装所以请准备至少G的硬盘空间
检查磁盘情况
# df h
二软件
系统平台CentOS (x_)
CentOSx_binDVDiso
Oracle版本Oracle g R
_database_linux_x_cpio
补丁p_
p__Linuxxzip
三系统安装注意
系统安装时一定要安装桌面模式否则无法安装oracle另外请勿开启SELinuxoracle官方不建议使用SELinuxCentOS的防火墙也请暂时关闭减少安装时的困扰为防止Oracle安装过程中出现乱码建议使用英文作为系统语言进行Oracle的安装工作
本文中所描述的系统命令未经特殊标示均为“#”代表root权限“$”代表oracle权限
四安装Oracle前的系统准备工作
首先请先以root账号登入作一些前置设定作业
关闭防火墙禁用SELinux
# setup
# vi /etc/selinux/config
修改SELINUX=disabled然后重启
如果不想重启系统使用命令setenforce
安装依赖包
Oracle官方文档要求的安装包
查看Oracle相关包是否已经安装
用yum方式安装所需的包
# yum y install binutils compatlibstdc++ compatlibstdc++i elfutilslibelf elfutilslibelfdevel gcc gccc++ glibc glibci glibccommon glibcdevel glibcdeveli glibcheaders ksh libaio libaioi libaiodevel libaiodeveli libgcc libgcci libstdc++ libstdc++i libstdc++devel make sysstat
最后还需要安装libXp这个Library这个一定要安装否则安装Oracle时会出现java Exception
# yum install libXp
创建Oracle用户与组
在这里只讨论单主机环境不考虑RAC环境的配置
执行以下指令以新增oracle安装时所需要的使用者与群组
() 建立群组oinstall
# groupadd oinstall
() 建立群组dba
# groupadd dba
() 新增使用者oracle并将其加入oinstall和dba群组
# useradd m g oinstall G dba oracle
() 测试oracle账号是否建立完成
# id oracle
() 建立oracle的新密码
# passwd oracle
将oracle使用者加入到sudo群组中
# vi /etc/sudoers
找到
root ALL=(ALL) ALL
这行并且在底下再加入
oracle ALL=(ALL) ALL
输入wq!(由于这是一份只读文档所以需要再加上!)并且按下Enter
配置系统内核参数
# vi /etc/sysctlconf
修改和添加以下内容
kernelshmall = //表示系统一次可以使用的共享内存总量(以页为单位)缺省值就是通常不需要修改
kernelshmmax = //定义了共享内存段的最大尺寸(以字节为单位)缺省为M对于oracle来说该缺省值太低了通常将其设置为G
kernelshmmni = //用于设置系统范围内共享内存段的最大数量该参数的默认值是 通常不需要更改
kernelsem = //表示设置的信号量
netipvip_local_port_range =
netcorermem_default= //默认的接收窗口大小
netcorermem_max= //接收窗口的最大大小
netcorewmem_default= //默认的发送窗口大小
netcorewmem_max= //发送窗口的最大大小
会有一些与目前的参数重复的就修改成文件上提供的
编辑完之后储存然后执行
# sysctl –p
启用刚刚所做的变更
编辑/etc/security/limitsconf
# vi /etc/security/limitsconf
添加以下四行
oracle soft nproc
oracle hard nproc
oracle soft nofile
oracle hard nofile
编辑/etc/pamd/login
# vi /etc/pamd/login
添加以下两行
session required /lib/security/pam_limitsso
session required pam_limitsso
修改/etc/profile
# vi /etc/profile
将以下代码新增到profile档案中
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit p
ulimit n
else
ulimit u n
fi
fi
修改Linux发行版本信息
由于Oracle g发行的时候CentOS 没有发行所以Oracle g并没有对CentOS 确认支持需要修改文件让Oracle g支持CentOS
我们需要手工修改Linux的发行注记让Oracle g支持CentOS
编辑/etc/redhatrelease文件
# vi /etc/redhatrelease
将其中的内容CentOS release (Final)修改为redhat
创建Oracle安装文件夹以及数据存放文件夹
#mkdir /opt/oracle
#mkdir /opt/oracle/
#chown R oracle:dba /opt/oracle
配置Linux主机
检查/etc/hosts文件中是否有localhost的记录(指向即可)若没有的话在后面配置Oracle监听的时候会出现一些问题导致无法启动监听在此手工添加此记录即可
第一阶段到此完毕接下来完成这些设定之后请先注销root账号并且以oracle账号再次登入系统
配置oracle用户环境变量
$ cd /home/oracle
$ vi bash_profile
修改并加入以下内容
ORACLE_BASE=/opt/oracle //上面创建的Oracle安装文件夹
ORACLE_HOME=$ORACLE_BASE/
ORACLE_SID=orcl
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
保存后使用如下命令使设置生效
$ source /home/oracle/bash_profile
五安装Oracle并进行相关设置
解压缩安装文件
将下载的_database_linux_x_cpio放至即将安装oracle的文件夹/opt/oracle
回到终端模式并且进入到oracle文件夹
$ cd /opt/oracle
解压缩_database_linux_x_cpio
$ cpio idmv < _database_linux_x_cpio
接着会看到一连串的解压缩动作
解压缩完成会在同一个文件夹中看到database的文件夹请进入到database文件夹中
$ cd database
准备执行数据库安装如果你的centos是中文环境安装时会出现中文乱码请下以下指令
$ export LANG=en_US
接着执行
$ /runInstaller
如果无法看到安装界面请使用root帐户执行如下命令后再运行安装程序
# export DISPLAY=:
# xhost +
$ /runInstaller
遇到错误Exception in /lib/i/libawtso: libXpso: cannot open shared object file: No such file or directory
解决
# yum y install libXpi
分析看报错信息"/lib/i/libawtso: libXpso: cannot open shared object file: No such file or directory"libXp需要安装i的包而不能安装X的包上面认为位的linux需要安装位的libXp包所以导致这个问题
再次执行
$ /runInstaller
遇到错误Exception in /lib/i/libawtso: libXtso: cannot open shared object file: No such file or directory
解决
# yum y install libXti
再次执行
$ /runInstaller
遇到错误Exception in /lib/i/libawtso: libXtstso: cannot open shared object file: No such file or directory
解决
# yum y install libXtsti
再次执行
$ /runInstaller
开始执行安装程序
由于相关的前置作业已经在之前做好了在这个步骤只需要将UNIX DBA Group选择为dba以及输入SYS SYSTEM等账号共享的database Password即可然后选择Next即可
同样的将群组选择为dba群组按Next