Centos 6下安装Oracle 11gR2

时间:2021-03-29 16:18:59

一、安装环境

CentOS release 6.7 (Final)

Oracle Database 11g Release 2

二、安装前准备

#修改主机名

修改/etc/sysconfig/network配置文件中的HOSTNAME变量

[root@xqzt ~]# hostname oracledb
####永久性修改
[root@xqzt ~]#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME= oracledb
[root@xqzt ~]# hostname
oracledb

#添加主机名与IP对应记录

[root@xqzt ~]# vi /etc/hosts
172.17.22.70 oracledb

#关闭Selinux

[root@oracledb ~]# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
[root@oracledb ~]# setenforce 0

#iptables开启1521端口

#写入修改
/sbin/iptables -I INPUT -p tcp --dport 1521 -j ACCEPT
#保存修改
/etc/init.d/iptables save
#重启防火墙,修改生效
service iptables restart

#下载Oracle 11g

http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

#检查硬件配置要求

最小内存 1 GB of RAM

虚拟内存容量

Available RAM

Swap Space Required

Between 1 GB and 2 GB

1.5 times the size of RAM

Between 2 GB and 16 GB

Equal to the size of RAM

More than 16 GB

16 GB

硬盘空间要求

数据库软件硬盘空间需求:

Installation Type

Requirement for Software Files (GB)

Enterprise Edition

3.95

Standard Edition

3.88

数据文件硬盘空间需求:

Installation Type

Requirement for Data Files (GB)

Enterprise Edition

1.7

Standard Edition

1.5

检查的命令

#内存
grep MemTotal /proc/meminfo
#交换空间
grep SwapTotal /proc/meminfo
#磁盘空间
df -ah

#安装所需的软件包

通过查看Oracle安装文档中列出的Package Requirements可以查看在不同平台上需要的软件包。

packages for Oracle Linux 6

binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)

Oracle ODBC Drivers

On Oracle Linux 6, Red Hat Enterprise Linux 6, and Asianux Server 4:

unixODBC-2.2.14-11.el6 (x86_64) or later
unixODBC-2.2.14-11.el6.i686 or later
unixODBC-devel-2.2.14-11.el6 (x86_64) or later
unixODBC-devel-2.2.14-11.el6.i686 or later

安装软件包(可行的)

yum -y install binutils compat-libcap1 compat-libstdc++.i686 compat-libstdc++.x86_64 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc.i686 glibc.x86_64 glibc-devel.i686 glibc-devel.x86_64 ksh libgcc.i686 libgcc.x86_64 libstdc++.i686 libstdc++.x86_64 libstdc++-devel.i686 libstdc++-devel.x86_64 libaio.i686 libaio.x86_64 libaio-devel.i686 libaio-devel.x86_64 libXext libXtst libX11 libXau libxcb libXi make sysstat unixODBC-devel.i686 unixODBC-devel.x86_64 unixODBC.i686 unixODBC.x86_64 compat-libstdc++-33.i686 compat-libstdc++-33.x86_64

下面的有问题

yum -y install  binutils compat-libcap1 compat-libstdc++ gcc gcc-c++ glibc glibc-devel ksh libgcc libstdc++ libstdc++ libaio libaio-devel make sysstat unixODBC unixODBC-devel

#创建安装oracle所需用户与用户组

root用户:创建Oracle安装组oinstall,数据库管理员组dba,及oracle用户

[root@oracledb ~]# groupadd -g 200 oinstall
[root@oracledb ~]# groupadd -g 201 dba
[root@oracledb ~]# useradd -u 440 -g oinstall -G dba -d /usr/oracle oracle
[root@oracledb ~]# passwd oracle

#更改kernel参数

[root@oracledb ~]# vi /etc/sysctl.conf

#末尾添加如下

net.ipv4.ip_local_port_range= 9000 65500
fs.file-max = 6815744
kernel.shmall = 10523004
kernel.shmmax = 6465333657
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.core.rmem_default=262144
net.core.wmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_max=1048576
fs.aio-max-nr = 1048576

执行以下命令使更改生效

[root@oracledb ~]# sysctl -p

#修改系统资源限制

[root@oracledb ~]# vi /etc/security/limits.conf
# 在文件末尾添加
oracle   soft   nproc   2047
oracle   hard   nproc   16384
oracle   soft   nofile   1024
oracle   hard   nofile   65536
 
[root@oracledb ~]# 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
 

[root@oracledb ~]# vi /etc/pam.d/login

   #下面添加一条pam_limits.so

    session    required    pam_limits.so

#创建安装目录及设置权限

[root@localhost ~]# su - oracle
[oracle@localhost ~]$ chmod 755 /usr/oracle
[oracle@localhost ~]$ mkdir /usr/oracle/app
[oracle@localhost ~]$ chmod 755 /usr/oracle/app/
[oracle@localhost ~]$ mkdir /usr/oracle/oradata
[oracle@localhost ~]$ chmod 755 /usr/oracle/oradata/ [oracle@localhost ~]$ vi ./.bash_profile # 在文件末尾添加
umask 022
export ORACLE_BASE=/usr/oracle/app

#设置oracle环境变量

[oracle@oracledb ~]$ vi ~/.bash_profile 

export ORACLE_BASE=/usr/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl [oracle@oracledb ~]$ source .bash_profile #立即生效

三、安装Oracle Database

[1]上传oracle安装文件到CentOS上

[2] 解压安装文件

unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip

[3] 以oracle用户登陆,运行以下命令

./runInstaller

[4]输入邮件地址及密码(oracle用户),以从oralce接收安全更新等信息

Centos 6下安装Oracle 11gR2

[5] 选择安装数据库软件并创建数据,也可以选择第二项仅安装数据库软件

Centos 6下安装Oracle 11gR2

[6]选择服务器版本

Centos 6下安装Oracle 11gR2

[7] 本实例中选择安装单实例数据库

Centos 6下安装Oracle 11gR2

[8]高级模式安装

Centos 6下安装Oracle 11gR2

[9] 选择语言

Centos 6下安装Oracle 11gR2

[10] 选择要安装的版本,这里选择 “Enterprise Edition”

Centos 6下安装Oracle 11gR2

[11] 指定Oracle Base 与 Software Location, 我们在oracle用户的profile文件里已设置此环境变量,此处保持默认

Centos 6下安装Oracle 11gR2

[12] 指定Inventory Directory, 本例保持默认

Centos 6下安装Oracle 11gR2

[13]选择数据库用途

Centos 6下安装Oracle 11gR2

[14]数据库名及服务名

Centos 6下安装Oracle 11gR2

[15]开启自动内存管理

Centos 6下安装Oracle 11gR2

[16]设置默认编码为UTF8

Centos 6下安装Oracle 11gR2

[17]示例方案

Centos 6下安装Oracle 11gR2

[18]启用Oracle企业管理控制台OEM

Centos 6下安装Oracle 11gR2

[19]选择数据库文件目录

Centos 6下安装Oracle 11gR2

[20]自动备份设置

Centos 6下安装Oracle 11gR2

[21]设置数据库用户名和密码[]

Centos 6下安装Oracle 11gR2

[22]指定oralce特权用户组,本例保持默认

Centos 6下安装Oracle 11gR2

[23] 接下来,oralce安装程序会对安装环境进行检查,

Centos 6下安装Oracle 11gR2

忽略

Centos 6下安装Oracle 11gR2

[24]显示安装信息如下。直接Finish, 开始安装。

Centos 6下安装Oracle 11gR2

[25] 静待oracle安装

Centos 6下安装Oracle 11gR2

[26]当出现以下窗口时,另开一个终端,以root用户登陆,并执行下面的命令。执行完毕后,点击OK

[root@oracledb oracle]# /usr/oracle/oraInventory/orainstRoot.sh

[root@oracledb oracle]# /usr/oracle/app/product/11.2.0/dbhome_1/root.sh

Centos 6下安装Oracle 11gR2

Centos 6下安装Oracle 11gR2

[27] 至此oracle 11g R2数据库安装完毕。

Centos 6下安装Oracle 11gR2

[28] 环境变量配置

[oracle@oracledb oracle]$ vi ~/.bash_profile

# 在文件末尾添加
export ORACLE_BASE=/usr/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_SID=orcl

四、配置自启动

参照CentOS 6下 Oracle11gR2 设置开机自启动

五、启用Scott

解锁scott账户方法

六、遇到的问题

问题1:交换空间太小

安装Oracle改变swap交换空间大小

安装oracle 检查交换空间太小

Centos 6下安装Oracle 11gR2

问题2:先决条件检查缺少package

Oracle 11gR2 安装少包情况

Centos 6下安装Oracle 11gR2

问题3:oracle 11g 安装及netca,dbca乱码之解决

oracle 11g 安装及netca,dbca乱码之解决

Centos 6下安装Oracle 11gR2

Centos 6下安装Oracle 11gR2

问题4:无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色

无法使用命令 /usr/bin/xdpyinfo 自动检查显示器颜色。请检查是否设置了 DISPLAY 变量。 未通过 <<<<

Centos 6下安装Oracle 11gR2

参考:

Oracle 11g 联机文档:Linux安装向导

CentOS 6安装Oracle 11gR2数据库

Linux上Oracle 11g安装步骤图解

CentOS 6.5_x64安装Oracle 11g R2

Oracle 与 iptables 和 SELinux 禁用关系说明