CentOS7安装Oracle11g 11.2.0.4

一、安装环境

CentOS Linux release 7.2.1511 (Core)

Oracle Database 11g Release 2 (11.2.0.4)

二、安装前准备

2.1 修改主机名

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


   
   
  1. [root @xqzt ~] # hostnamectl set-hostname oracledb
  2. ####永久性修改
  3. [root @xqzt ~] #vi /etc/sysconfig/network
  4. NETWORKING=yes
  5. HOSTNAME= oracledb
  6. [root @xqzt ~] # hostname
  7. oracledb

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


   
   
  1. [root @xqzt ~] # vi /etc/hosts
  2. 172.17. 22.70 oracledb

2.3 关闭Selinux


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

2.4 firewall开启1521端口


   
   
  1. [root @sdba ~] # firewall-cmd --permanent --zone=public --add-port=1521/tcp
  2. success
  3. [root @sdba ~] # firewall-cmd --reload
  4. success

2.5下载Oracle 11g

2.6 检查硬件配置要求

最小内存 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

检查的命令

 

    
    
  1. #内存
  2. grep MemTotal /proc/meminfo
  3. #交换空间
  4. grep SwapTotal /proc/meminfo
  5. #磁盘空间
  6. df -ah

2.7 安装所需的软件包

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

packages for Oracle Linux 7


   
   
  1. binutils - 2.23.52.0.1 - 12.el7.x86_64
  2. compat -libcap1 - 1.10 - 3.el7.x86_64
  3. gcc - 4.8.2 - 3.el7.x86_64
  4. gcc - c + + - 4.8.2 - 3.el7.x86_64
  5. glibc - 2.17 - 36.el7.i686
  6. glibc - 2.17 - 36.el7.x86_64
  7. glibc -devel - 2.17 - 36.el7.i686
  8. glibc -devel - 2.17 - 36.el7.x86_64
  9. ksh
  10. libaio - 0.3.109 - 9.el7.i686
  11. libaio - 0.3.109 - 9.el7.x86_64
  12. libaio -devel - 0.3.109 - 9.el7.i686
  13. libaio -devel - 0.3.109 - 9.el7.x86_64
  14. libgcc - 4.8.2 - 3.el7.i686
  15. libgcc - 4.8.2 - 3.el7.x86_64
  16. libstdc + + - 4.8.2 - 3.el7.i686
  17. libstdc + + - 4.8.2 - 3.el7.x86_64
  18. libstdc + + -devel - 4.8.2 - 3.el7.i686
  19. libstdc + + -devel - 4.8.2 - 3.el7.x86_64
  20. libXi - 1.7.2 - 1.el7.i686
  21. libXi - 1.7.2 - 1.el7.x86_64
  22. libXtst - 1.2.2 - 1.el7.i686
  23. libXtst - 1.2.2 - 1.el7.x86_64
  24. make - 3.82 - 19.el7.x86_64
  25. sysstat - 10.1.5 - 1.el7.x86_64

Oracle ODBC Drivers

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


   
   
  1. unixODBC-2.3.1-6.el7.x86_64 or later
  2. unixODBC-2.3.1-6.el7.i686 or later
  3. unixODBC-devel-2.3.1-6.el7.x86_64 or later
  4. unixODBC-devel-2.3.1-6.el7.i686 or later

安装软件包


   
   
  1. yum -y install binutils
  2. yum -y install compat -libcap1
  3. yum install -y gcc gcc - c + + glibc.i686 glibc.x86_64 glibc -devel.i686 glibc -devel.x86_64
  4. yum install -y libaio.i686 libaio.x86_64 libaio -devel.i686 libaio -devel.x86_64
  5. yum install -y libgcc.i686 libgcc.x86_64 libstdc + +.i686 libstdc + +.x86_64 libstdc + + -devel.i686 libstdc + + -devel.x86_64
  6. yum install -y libXi.i686 libXi.x86_64 libXtst.i686 libXtst.x86_64
  7. yum install -y make
  8. yum install -y sysstat
  9. yum install -y unixODBC.i686 unixODBC.x86_64 unixODBC -devel.i686 unixODBC -devel.x86_64

ksh无用  yum install -y ksh  需要安装pdksh,另外还需要安装elfutils-libelf-devel


   
   
  1. wget http:/ /mirror.centos.org/centos /5/os /x86_64/CentOS/pdksh- 5.2. 14- 37.el5_8. 1.x86_64.rpm
  2. rpm -ivh pdksh- 5.2. 14- 37.el5_8. 1.x86_64.rpm
  3. yum install -y elfutils-libelf-devel

否则会提示缺少package

 

image

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

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

 

 


   
   
  1. [root @oracledb ~] # groupadd -g 200 oinstall
  2. [root @oracledb ~] # groupadd -g 201 dba
  3. [root @oracledb ~] # useradd -u 440 -g oinstall -G dba -d /home/oracle oracle
  4. [root @oracledb ~] # passwd oracle

2.9 更改kernel参数


   
   
  1. [root @oracledb ~ ] # vi /etc/sysctl.conf
  2. #末尾添加如下
  3. net.ipv4.ip_local_port_range = 9000 65500
  4. fs.file - max = 6815744
  5. kernel.shmall = 10523004
  6. kernel.shmmax = 6465333657
  7. kernel.shmmni = 4096
  8. kernel.sem = 250 32000 100 128
  9. net.core.rmem_default = 262144
  10. net.core.wmem_default = 262144
  11. net.core.rmem_max = 4194304
  12. net.core.wmem_max = 1048576
  13. fs.aio - max -nr = 1048576

执行以下命令使更改生效

[root@oracledb ~]# sysctl -p
   
   

2.10 修改系统资源限制


   
   
  1. [root@oracledb ~] # vi /etc/security/limits.conf
  2. oracle soft nproc 2047
  3. oracle hard nproc 16384
  4. oracle soft nofile 1024
  5. oracle hard nofile 65536

   
   
  1. [root@oracledb ~] # vi /etc/profile
  2. if [ $USER = "oracle" ]; then
  3. if [ $SHELL = "/bin/ksh" ]; then
  4. ulimit -p 16384
  5. ulimit -n 65536
  6. else
  7. ulimit -u 16384 -n 65536
  8. fi
  9. fi

   
   
  1. [root @oracledb ~] # vi /etc/pam.d/login #下面添加一条pam_limits.so
  2. session required pam_limits.so

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

创建如下的目录


   
   
  1. [oracle @oracledb /] $ tree /u01/
  2. /u01/
  3. └── oracle
  4. ├── app
  5. └── oradata

root创建


   
   
  1. [root @oracledb ~] # mkdir –p /u01/oracle
  2. [root @oracledb ~] # chown –R oracle:oinstall /u01

oracle创建


   
   
  1. [root@localhost ~] # su - oracle
  2. [oracle@localhost ~]$ chmod 755 /u01/oracle
  3. [oracle@localhost ~]$ mkdir /u01/oracle/app
  4. [oracle@localhost ~]$ chmod 755 /u01/oracle/app/
  5. [oracle@localhost ~]$ mkdir /u01/oracle/oradata
  6. [oracle@localhost ~]$ chmod 755 /u01/oracle/oradata/
  7. [oracle@localhost ~]$ vi ./.bash_profile
  8. # 在文件末尾添加
  9. umask 022
  10. export ORACLE_BASE=/u01/oracle/app

2.12 设置oracle环境变量


   
   
  1. [oracle@oracledb ~]$ vi ~/.bash_profile
  2. export ORACLE_BASE=/u01/oracle/app
  3. export ORACLE_HOME= $ORACLE_BASE/product/11.2.0/dbhome_1
  4. export PATH= $PATH: $ORACLE_HOME/bin
  5. export ORACLE_SID=orcl
  6. [oracle@oracledb ~]$ source .bash_profile #立即生效

三、安装Oracle Database

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

[2] 解压安装文件


   
   
  1. unzip p13390677_112040_Linux-x86-64_1of7. zip
  2. unzip p13390677_112040_Linux-x86-64_2of7. zip
  3. unzip p13390677_112040_Linux-x86-64_3of7. zip
  4. unzip p13390677_112040_Linux-x86-64_4of7. zip
  5. unzip p13390677_112040_Linux-x86-64_5of7. zip
  6. unzip p13390677_112040_Linux-x86-64_6of7. zip
  7. unzip p13390677_112040_Linux-x86-64_7of7. zip
  8. 注:普通单机安装仅需 12,其余为非必需功能组件压缩包。

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

安装VNC

yum install tigervnc-server

   
   

开启端口


   
   
  1. [root @oracledb ~] # firewall-cmd --permanent --zone=public --add-port=5901/tcp
  2. success
  3. [root @oracledb ~] # firewall-cmd --reload
  4. success

运行安装程序

/u01/11.2.0.4/database/runInstaller

   
   

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

clip_image001

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

clip_image002

[6]选择服务器版本

clip_image003

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

clip_image004

[8]高级模式安装

clip_image005

[9] 选择语言

clip_image006

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

clip_image007

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

clip_image008

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

clip_image009

[13]选择数据库用途

clip_image010

[14]数据库名及服务名

clip_image011

[15]开启自动内存管理

clip_image012

[16]设置默认编码为UTF8

clip_image013

[17]示例方案

clip_image014

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

clip_image015

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

clip_image016

[20]自动备份设置

clip_image017

[21]设置数据库用户名和密码[注意:密码不要以数字开头,否则后面会报错ORA-00922: 选项缺失或无效]

clip_image018

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

clip_image019

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

clip_image020

安装完缺少的package,重新检查

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

clip_image022

[25] 静待oracle安装

clip_image023

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


   
   
  1. [root @oracledb oracle] # /usr/oracle/oraInventory/orainstRoot.sh
  2. [root @oracledb oracle] # /usr/oracle/app/product/11.2.0/dbhome_1/root.sh

clip_image024

clip_image025

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

clip_image026

[28] 环境变量配置


   
   
  1. [oracle@oracledb oracle]$ vi ~/.bash_profile
  2. # 在文件末尾添加
  3. export ORACLE_BASE=/usr/oracle/app
  4. export ORACLE_HOME= $ORACLE_BASE/product/11.2.0/dbhome_1
  5. export PATH= $PATH: $ORACLE_HOME/bin
  6. export ORACLE_SID=orcl

[29]开放控制台端口,

四、配置自启动

在Linux系统中,安装好oracle数据库服务后,并不像在Windows系统下一样,oracle服务在默认情况下会随系统的启动自动启动。Linux系统中,是需要用户去手动进行设置,才能实现oracle开机自动启动的。


   
   
  1. 查看ORACLE_HOME是否设置
  2. $ echo $ORACLE_HOME
  3. /u01/app /oracle/product /11.2.0/dbhome_1

   
   
  1. 使用dbstart命令启动数据库比较方便,但是在linux上安装好oracle之后,第一次使用dbstart命令可能会报如下错误:
  2. [oracle @njdzjkdb dbhome_1] $ cd bin/
  3. [oracle @njdzjkdb bin] $ ll | grep dbs
  4. -rwxr-x---. 1 oracle oinstall 6088 11 2000 dbshut
  5. -rwxr-x---. 1 oracle oinstall 13892 1211 16: 01 dbstart
  6. [oracle @njdzjkdb bin] $ dbstart
  7. ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener Usage:
  8. /u01/app /oracle/product /11.2.0/db_1/bin/dbstart ORACLE_HOME
  9. 错误提示:ORACLE_HOME_LISTNER 没有设置
  10. 原因:
  11. dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题,分别打开两个文件找到:用vi编辑dbstart,ORACLE_HOME_LISTNER= $1,修改为
  12. ORACLE_HOME_LISTNER= $ORACLE_HOME
  13. 前提是 $ORACLE_HOME环境设置正确
  14. [oracle @njdzjkdb bin] $ vi dbstart
  15. --dbstart为开机自启动脚本,让系统开机就去执行dbstart脚本文件,它会去读oratab文件,读到Y就会把对应的实例开机自启动
  16. --调整或确认监听路径,如ORACLE_HOME_LISTNER= /u01/app /oracle/product /11.2.0/dbhome_1或ORACLE_HOME_LISTNER= $ORACLE_HOME根据设置的监听调整路径

使用vi编辑器编辑文件/etc/oratab


   
   
  1. dbca建库时都会自动创建/etc/oratab文件
  2. #vi /etc/oratab
  3. 将“orcl:/u01/app/oracle/product/12.1.0/dbhome_1:N”,
  4. 改为“orcl:/u01/app/oracle/product/12.1.0/dbhome_1:Y”。
  5. 修改完成后,保存退出
  6. --<N|Y>选项代表开机是否自启动

**说明:**orcl为实例名;/u01/app/oracle/product/12.1.0/dbhome1为oracle安装目录;会因安装的情况不同而有所不同。

编辑/etc/rc.d/rc.local启动文件,添加数据库启动脚本dbstart


   
   
  1. #vi /etc/rc.d/rc.local
  2. 末尾添加:
  3. su oracle -lc "/u01/app/oracle/product/12.1.0/dbhome_1/bin/lsnrctl start"
  4. su oracle -lc /u01/app/oracle/product/12.1.0/dbhome_1/bin/dbstart
  5. 或启动指定实例
  6. su - oracle -lc "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start ORCL"
  7. su - oracle -lc /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart
  8. --命令中-c代表执行脚本,脚本dbstart中指定启动的实例,脚本lsnrctl中启动配置的监听

**说明:**/u01/app/oracle/product/12.1.0/dbhome1为oracle的安装目录,要根据实际情况进行修改。

修改DB启动配置文件


   
   
  1. #vim /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart
  2. 找到ORACLE_HOME_LISTNER这行
  3. # First argument is used to bring up Oracle Net Listener
  4. ORACLE_HOME_LISTNER= $1
  5. $1修改为如下(你的路径):
  6. ORACLE_HOME_LISTNER= /u01/app /oracle/product /11.2.0/dbhome_1

由于版本变迁,centos7 的/etc/rc.local不会开机执行,所以要手动给/etc/rc.d/rc.local添加执行权限,以下是官方说明。


   
   
  1. #!/bin/bash
  2. # THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
  3. #
  4. # It is highly advisable to create own systemd services or udev rules
  5. # to run scripts during boot instead of using this file.
  6. #
  7. # In constrast to previous versions due to parallel execution during boot
  8. # this script will NOT be run after all other services.
  9. #
  10. # Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
  11. # that this script will be executed during boot.

五、启用Scott

解锁scott账户方法

六、遇到的问题

问题1:交换空间太小

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

安装oracle 检查交换空间太小

image

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

Oracle 11gR2 安装少包情况

image

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

原因:Linux上没有安装Oracle安装时使用的字体

方法一: 上传字体库

字体库下载地址 http://download.csdn.net/detail/lidongtang/4182819

然后在Linux下执行以下命令,把字体库安装到相应位置即可


   
   
  1. mkdir -p /usr/share /fonts/zh_CN/TrueType
  2. cp zysong.ttf /usr/share /fonts/zh_CN /TrueType/

这样在安装的时候。Oracle就会提示中文了,而不再是中文乱码了。

方法二:使用英文安装

export LANG=en_US.utf-8

   
   

或者


   
   
  1. # vi /etc/sysconfig/i18n
  2. LANG= "en_US"(不会出现乱码)

clip_image027

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

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

解决办法: 不用root登陆,直接用oracle用户登陆系统

clip_image029

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

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

Exception String: Error in invoking target 'agent nmhs' of makefile '/u01/oracle/app/oracle/product/11.2.0/dbhome/sysman/lib/ins_emagent.mk'. 

google了一下,好像是oracle新版的bug,如下解决:
解决方案: 保留安装过程,另外开启一个终端窗口,将ins_emagent.mk文件中的$(MK_EMAGENT_NMECTL)更改为$(MK_EMAGENT_NMECTL) -lnnz11,然后在安装过程中点击Retry即可。
sed  -i  's/^\s$(MKEMAGENTNMECTL)\s∗$(MKEMAGENTNMECTL)\s*$/\1 -lnnz11/g'  /u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk

参考:

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

CentOS 6安装Oracle 11gR2数据库

Linux上Oracle 11g安装步骤图解

CentOS 6.5_x64安装Oracle 11g R2

Oracle 与 iptables 和 SELinux 禁用关系说明

CenotOS6中文环境下安装Oracle 11g 中文乱码 解决办法

oracle 11.2.0.4 Error in invoking target 'agent nmhs' ins_emagent.mk 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装 Oracle 9i 需要满足以下条件: - CentOS 7 系统已经安装并配置好了必要的软件包和组件。 - 系统已经为 Oracle 数据库安装了必要的软件包和组件。 - 系统已经创建了一个用户以便安装和管理 Oracle 数据库。 - 系统已经配置好了必要的内核参数和环境变量。 以下是在 CentOS 7 上安装 Oracle 9i 的步骤: 1. 下载 Oracle 9i 安装包。 2. 创建一个新用户以便安装和管理 Oracle 数据库。例如,我们可以创建一个名为 oracle 的用户: ``` sudo useradd -m -d /home/oracle -s /bin/bash oracle ``` 3. 将 oracle 用户添加到 dba 组中: ``` sudo usermod -a -G dba oracle ``` 4. 安装必要的软件包和组件: ``` sudo yum install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel -y ``` 5. 配置内核参数: 编辑 /etc/sysctl.conf 文件,将以下值添加到文件末尾: ``` fs.file-max = 65536 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 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 ``` 执行以下命令使更改生效: ``` sudo sysctl -p ``` 6. 配置环境变量: 将以下值添加到 oracle 用户的 ~/.bash_profile 文件中: ``` export ORACLE_BASE=/home/oracle/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/9.2.0 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib ``` 然后执行以下命令使更改生效: ``` source ~/.bash_profile ``` 7. 解压 Oracle 9i 安装包: 将下载的 Oracle 9i 安装包解压到 /tmp 目录中: ``` unzip linux_9204_database.zip -d /tmp ``` 8. 运行安装程序: 切换到 oracle 用户并进入安装程序所在的目录: ``` su - oracle cd /tmp/database ``` 执行安装程序: ``` ./runInstaller ``` 根据安装程序的指示完成安装过程。 注意:安装程序可能会提示您安装旧版本的软件包。如果您看到这个提示,请安装所需的软件包并重新运行安装程序。 9. 安装完成后,运行 Oracle 9i 数据库: ``` sqlplus /nolog SQL> connect sys as sysdba SQL> startup ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值