【参考资料】Linux(CentOS 7.0)安装Oracle11g R2

简介:

// 注释     # root用户   $oracle用户

1. 关闭安全措施  

# chkconfig iptables off // 永久关闭防火墙

# serviceiptables stop // 暂时关闭防火墙,重启系统后会自动打开

# sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config // 关闭Selinux


2. 验证硬件

2.1 内存:

要求:内存最小1G,推荐2G或者更高。

查看命令:# grep MemTotal /proc/meminfo

 

2.2 Swap:

要求:

RAW Swap
1G至2G 1.5倍
2G至16G 同RAW相等
16G以上 16G

查看命令:# grep SwapTotal /proc/meminfo

          # free


3. 验证软件

3.1 操作系统

  • Asianux Server 3 SP2

  • Oracle Linux 4 Update 7

  • Oracle Linux 5 Update 2 (with Red Hat Compatible Kernel)

  • Oracle Linux 5 Update 5

  • Oracle Linux 6

  • Oracle Linux 6 (with Red Hat Compatible Kernel)

  • Red Hat Enterprise Linux 4 Update 7

  • Red Hat Enterprise Linux 5 Update 2

  • Red Hat Enterprise Linux 5 Update 5 (with the Oracle Unbreakable Enterprise Kernel for Linux)

  • Red Hat Enterprise Linux 6

  • Red Hat Enterprise Linux 6 (with the Oracle Unbreakable Enterprise Kernel for Linux)

  • SUSE Linux Enterprise Server 10 SP2

  • SUSE Linux Enterprise Server 11

CentOS7本文按照Red Hat Enterprise Linux 6来配置。

 

# cat /proc/version // 查看版本

 

3.2 内核

  • On Oracle Linux 4 and Red Hat Enterprise Linux 4 2.6.9 or later

  • On Oracle Linux 5 Update 2 with Red Hat Compatible Kernel 2.6.18 or later

  • On Oracle Linux 5 Update 5 with Red Hat Compatible Kernel 2.6.18 or later

  • On Oracle Linux 5 Update 5 with Unbreakable Enterprise Kernel 2.6.32-100.0.19 or later

  • On Oracle Linux 6 2.6.32-100.28.5.el6.x86_64 or later

  • On Oracle Linux 6 with Red Hat Compatible Kernel 2.6.32-71.el6.x86_64 or later

  • On Red Hat Enterprise Linux 5 Update 2 2.6.18 or later

  • On Red Hat Enterprise Linux 5 Update 5 2.6.18 or later

  • On Red Hat Enterprise Linux 5 Update 5 with Unbreakable Enterprise Kernel 2.6.32 or later

  • On Red Hat Enterprise Linux 6 2.6.32-71.el6.x86_64 or later

  • On Red Hat Enterprise Linux 6 with Unbreakable Enterprise Kernel 2.6.32-100.28.5.el6.x86_64 or later

  • On Asianux Server 3 2.6.18 or later

  • On SUSE Linux Enterprise Server 10 2.6.16.21 or later

  • On SUSE Linux Enterprise Server 11 2.6.27.19 or later

# uname -r   //查看内核

 

3.3 验证需要的包:

# rpm -qa binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers glibc-static kernel-headers pdksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel libstdc++-static make numactl-devel sysstat unixODBC unixODBC-devel // 验证命令26个包

  • kernel-headers-3.10.0-123.el7.x86_64

  • gcc-c++-4.8.2-16.el7.x86_64

  • numactl-devel-2.0.9-2.el7.x86_64

  • glibc-headers-2.17-55.el7.x86_64

  • glibc-common-2.17-55.el7.x86_64

  • binutils-2.23.52.0.1-16.el7.x86_64

  • unixODBC-devel-2.3.1-10.el7.x86_64

  • libaio-0.3.109-12.el7.x86_64

  • make-3.82-21.el7.x86_64

  • elfutils-libelf-0.158-3.el7.x86_64

  • elfutils-libelf-devel-0.158-3.el7.x86_64

  • sysstat-10.1.5-4.el7.x86_64

  • glibc-static-2.17-55.el7.x86_64

  • glibc-devel-2.17-55.el7.x86_64

  • glibc-2.17-55.el7.x86_64

  • elfutils-libelf-devel-static-0.158-3.el7.x86_64

  • libaio-0.3.109-12.el7.i686

  • gcc-4.8.2-16.el7.x86_64

  • libgcc-4.8.2-16.el7.i686

  • libstdc++-static-4.8.2-16.el7.x86_64

  • libaio-devel-0.3.109-12.el7.x86_64

  • libstdc++-4.8.2-16.el7.x86_64

  • libaio-devel-0.3.109-12.el7.i686

  • unixODBC-2.3.1-10.el7.x86_64

  • libstdc++-devel-4.8.2-16.el7.x86_64

  • compat-libstdc++-33-3.2.3-71.el7.x86_64

  • libgcc-4.8.2-16.el7.x86_64

  • libgomp-4.8.2-16.el7.x86_64

#rpm -ivh 安装包名 // 安装程序包

 注:

(1)安装glibc-2.17-55.el7.i686.rpm时,因为依赖包相互依赖,需要与依赖包同时安装:
  rpm -ivh glibc-2.17-55.el7.i686.rpm nss-softokn-freebl-3.15.4-2.el7.i686.rpm
(2)RHEL7中缺少包compat-libstdc++-33,可以在RHEL6中找到.
(3)在Oracle数据库软件安装时,ksh实际是用的pdksh,但ksh也是可以使用的,只是安装时会有警告,pdksh是一个早期的软件包,可以在以下网站找到.    http://rpm.pbone.net/

 

4. 创建组和用户

# groupadd dba
# groupadd oinstall
# useradd -m -g oinstall -G dba oracle
# passwd oracle
// 如果nobody用户不存在(id nobody命令查看),则创建:
# useradd nobody

 

5. 配置内核

注:配置大于系统数据需要配置更改,否则不需要配置。

要求配置:

参数 最小值 文件 命令
semmsl
semmns
semopm
semmni
50
32000
100
128
/proc/sys/kernel/sem # /sbin/sysctl -a | grep sem
shmall 2097152 /proc/sys/kernel/shmall # /sbin/sysctl -a | grep shm
shmmax 4294967296 /proc/sys/kernel/shmmax
// 最大共享内存,官方文档建议是内存的1/2
// 我的服务器是8G内存,所以为4*1024*1024*1024
// 最小值为536870912(1G内存/2)
# /sbin/sysctl -a | grep shm
shmmni 4096 /proc/sys/kernel/shmmni # /sbin/sysctl -a | grep shm
file-max 6815744 /proc/sys/fs/file-max # /sbin/sysctl -a | grep file-max
ip_local_port_range 9000 65500 /proc/sys/net/ipv4/ip_local_port_range # /sbin/sysctl -a | grep ip_local_port_range
rmem_default 262144  /proc/sys/net/core/rmem_default # /sbin/sysctl -a | grep rmem_default
rmem_max 4194304 /proc/sys/net/core/rmem_max # /sbin/sysctl -a | grep rmem_max
wmem_default 262144 /proc/sys/net/core/wmem_default # /sbin/sysctl -a | grep wmem_default
wmem_max  1048576 /proc/sys/net/core/wmem_max # /sbin/sysctl -a | grep wmem_max
aio-max-nr 1048576

# vi /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


保存后生效命令:

# /sbin/sysctl -p

 

6. 创建安装目录

# mkdir -p /opt/oracle/product/11.2.0.1
# chown -R oracle:oinstall /opt/oracle

# mkdir /var/oracle
# chown oracle:oinstall  /var/oracle
# chmod 755 /var/oracle

 

7. 配置环境变量

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

 

使用Oracle用户登陆:
su - oracle
vi ~/.bash_profile
以下是配置文件的内容,里面已有的部分就不必在次添加了。
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
umask 022
# +--------------------------+
# | SETUP ORACLE ENVIRONMENT |
# +--------------------------+

TMP=/tmp
TMPDIR=/tmp
export TMP TMPDIR
# 如果安装出现相关问题请屏蔽下面5行,
# 安装好后再取消屏蔽这些环境变量设置
export ORACLE_HOME=/opt/oracle/product/11.2.0.1    //跟之前创建的目录路径一直
export ORACLE_BASE=/opt/oracle
export ORACLE_SID=afcsc                            //根据自己的环境添加SID名称
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK          //显示英文字符环境,可解决安装图形界面乱码。
export PATH=$PATH:$ORACLE_HOME/bin
# +--------------------------+
# | LINUX STUFF |
# +--------------------------+
export LANG=AMERICAN_AMERICA.ZHS16GBK
unset USERNAME
# +-------------+
# | "GREETINGS" |
# +-------------+
echo ".bash_profile executed"

 

执行:source ~/.bash_profile

 

8. 设置进程数和最大会话数

编辑文件:

# vi /etc/security/limits.conf 加入以下语句:
oracle           soft    nproc           2047
oracle           hard    nproc           16384
oracle           soft    nofile          1024
oracle           hard    nofile          65536

 

9. 关联设置
编辑文件:vi /etc/pam.d/login 加入以下语句:
session    required     pam_limits.so
(注意:根据最后一条session规则的注释,应该加在最后一条规则之前)

9. 解压缩

将linux.x64_11gR2_database_1of2.zip和linux.x64_11gR2_database_2of2.zip移动到移动到/tmp目录下进行解压缩。

$ cd /tmp

$ unzip linux.x64_11gR2_database_1of2.zip

$ unzip linux.x64_11gR2_database_2of2.zip

 

10. 安装

$ cd /tmp/database/

$ ./runInstaller

 

注意:
选择advance install
数据库home设置为/opt/oracle/product/11.2.0.1
数据库全局名称设置为afcsc                         //跟之前.bash_profile内的值一致
字符集选Simplified Chinese ZHS16GBK

 

检查后会运行图形化安装界面。

安装过程中连接库时会出现两个错误:

 

  • 第一个:

/lib64/libstdc++.so中memcpy@GLIBC_2.4找不到。

问题:glibc是2.17的库,连接找的是2.14的库。

解决办法:改成静态链接。

查看 /usr/lib64/libc.a是否存在。

修改oracle安装目录下:$ORACLE_HOME/ctx/lib/ins_ctx.mk

ctxhx: $(CTXHXOBJ)
        $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)

修改为:

ctxhx: $(CTXHXOBJ)
        -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/libc.a

然后点击retry通过。

 

  • 第二个:

问题:undefinied reference symbol'B_DestroyKeyObject',查看日志,实际就是没有找到nnz11这个库。

解决办法:

修改/opt/oracle/product/11.2.0.1/sysman/lib/ins_emagent

$(MK_EMAGENT_NMECTL)

修改为:

$(MK_EMAGENT_NMECTL) -lnnz11

然后点击retry通过。

 

 

注:安装需要远程图形化连接安装oracle,具体方式和软件这里不说了。











本文转自 qq8658868 51CTO博客,原文链接:http://blog.51cto.com/hujizhou/1782154,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
Ubuntu 网络协议 Linux
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
1180 2
|
1月前
|
Oracle Cloud Native 关系型数据库
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
64 10
Oracle Linux 9.5 正式版发布 - Oracle 提供支持 RHEL 兼容发行版
|
1月前
|
监控 Oracle 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第8天】在 Linux 平台设置 Oracle 开机自启动有多种方法,本文以 CentOS 为例,介绍了两种常见方法:使用 `rc.local` 文件(较简单但不推荐用于生产环境)和使用 `systemd` 服务(推荐)。具体步骤包括编写启动脚本、赋予执行权限、配置 `rc.local` 或创建 `systemd` 服务单元文件,并设置开机自启动。通过 `systemd` 方式可以更好地与系统启动过程集成,更规范和可靠。
117 2
|
1月前
|
Oracle Ubuntu 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第7天】本文介绍了 Linux 系统中服务管理机制,并详细说明了如何在使用 systemd 和 System V 的系统上设置 Oracle 数据库的开机自启动。包括创建服务单元文件、编辑启动脚本、设置开机自启动和启动服务的具体步骤。最后建议重启系统验证设置是否成功。
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux系统之Centos7安装cockpit图形管理界面
【10月更文挑战第12天】Linux系统之Centos7安装cockpit图形管理界面
112 1
Linux系统之Centos7安装cockpit图形管理界面
|
2月前
|
存储 Oracle 关系型数据库
|
4月前
|
Linux C语言
成功解决 在Linux CentOS 7 中安装gcc
这篇文章介绍了如何在Linux CentOS 7系统中安装gcc (g++) 8工具集。由于CentOS 7默认的gcc版本是4.8,而这个版本与Qt 5.14、Qt 5.15或更高版本不兼容,可能会导致编译时出现系统头文件错误。文章中提到,即使在项目配置中添加了`CONFIG+=c++11`,如果仍然报错,那么很可能是gcc版本的问题。为了解决这个问题,文章提供了使用CentOS的Software Collections (scl)来安装更新版本的gcc的步骤。
成功解决 在Linux CentOS 7 中安装gcc
|
3月前
|
消息中间件 Java Linux
linux 之centos7安装kafka;;;;;待补充,未完成
linux 之centos7安装kafka;;;;;待补充,未完成
|
4月前
|
关系型数据库 MySQL Linux
Linux(CentOS7)搭建LAMP服务环境
本文介绍了在Linux (CentOS 7) 上搭建LAMP服务环境的详细步骤,包括安装Apache HTTPd、解决编译时依赖问题、配置Apache服务、安装PHP以及处理PHP与Apache集成时遇到的问题。同时,还涉及了防火墙设置和SELinux权限调整,确保Web服务能够正常运行。
106 2
|
4月前
|
关系型数据库 MySQL Linux
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)
该博客文章详细记录了在CentOS 7虚拟机上离线安装MySQL 5.6版本的完整过程,包括下载安装包、导入虚拟机、卸载MariaDB、配置文件设置、服务启动和权限配置等步骤。
在CentOs7虚拟机Linux离线安装mysql5.6(亲测可用)