• 欢迎访问DBA的辛酸事儿,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站
  • 欢迎大家关注博主公众号:DBA的辛酸事儿
  • 博文中若有错误的地方,请大家指正,大家的指正是我前进的动力

CentOS 7部署Oracle 11g单实例详细步骤

Oracle SEian.G 来源:Garmin 4年前 (2021-03-10) 2160次浏览 已收录 0个评论
文章目录[隐藏]

本文主要介绍Oracle 11g数据库的安装的详细步骤;

1.简介

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。

2.下载

Oracle11g下载

3.版本

本次安装使用的系统版本:CentOS Linux release 7.6,oracle版本:11.2.0.4.0

4.安装前检查准备

4.1搭建yum 仓库

df -h
mount /dev/cdrom /mnt
cd /etc/yum.repos.d/
mkdir bak

先将其他的yum的repo源,使用本地镜像源,备份到bak目录中

mv * bak/

vi local.repo 
[centos]
name=centos
baseurl=file:///mnt
gpgcheck=0
enable=1

4.2关闭防火墙

systemctl stop firewalld

4.3安装数据库软件所需要的包

yum install binutils* -y
yum install compat* -y
yum install elfutils* -y
yum install gcc* -y
yum install glibc* -y
yum install kernel* -y
yum install ksh* -y
yum install libaio* -y
yum install libgcc* -y
yum install libgomp* -y
yum install libstdc* -y
yum install make* -y
yum install sysstat* -y
yum install unzip -y
yum install smartmontools -y
yum -y install xdpyinfo
yum install openssh-clients -y

4.4添加主机名

vi /etc/hosts
添加
192.168.19.10 lnode #主机名

4.5修改内核参数

vi /etc/sysctl.conf
添加
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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

修改后让内核参数生效
sysctl -p

4.6资源限制

vi /etc/security/limits.conf
添加
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

4.7创建dba,oinstall组和oracle用户

groupadd dba
groupadd oinstall
useradd -g oinstall -G dba oracle

设置密码

passwd oracle

4.8创建安装目录和授权

mkdir -p /u01/app/oracle
chown -R oracle:oinstall /u01

4.9添加oracle环境变量

su - oracle
vi .bash_profile
添加
export ORACLE_SID=orcl
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_TERM=xterm
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export CLASSPATH=$ORACLE_HOME/JRE:ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

保存,并使参数生效
source .bash_profile

4.10使用ftp工具将oracle软件上传到虚拟机/tmp上

[root@node tmp]# cd /tmp/
[root@node tmp]# ll p13390677_112040_Linux-x86-64_*
-rw-r--r--. 1 root root 1395582860 Aug 14  2019 p13390677_112040_Linux-x86-64_1of7.zip
-rw-r--r--. 1 root root 1151304589 Aug 14  2019 p13390677_112040_Linux-x86-64_2of7.zip

授权为oracle
chown -R oracle:oinstall p13390677_112040_Linux-x86-64_*

4.11切换到oracle用户

su - oracle
cd /tmp
分别解压
unzip p13390677_112040_Linux-x86-64_1of7.zip 
unzip p13390677_112040_Linux-x86-64_2of7.zip 

解压完成后得到database

drwxr-xr-x. 7 oracle oinstall        136 Aug 27  2013 database

4.12解压完毕后使用root安装一个rpm包

su - root
cd /tmp/database/rpm/
rpm -ivh cvuqdisk-1.0.9-1.rpm

4.13到此准备完毕,开始安装软件

使用Xmanager 软件连接虚拟机

[oracle@node database]$ ./runInstaller 

CentOS 7部署Oracle 11g单实例详细步骤
选择:是

CentOS 7部署Oracle 11g单实例详细步骤

去掉我希望通过我的Oracle支持获得安全更新。

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

选择:yes

CentOS 7部署Oracle 11g单实例详细步骤

选择:跳过软件安装,在next

CentOS 7部署Oracle 11g单实例详细步骤

选择:只安装数据库软件,在next

CentOS 7部署Oracle 11g单实例详细步骤

选择:安装单实例数据库,在next

CentOS 7部署Oracle 11g单实例详细步骤

确定是English,在选择next

CentOS 7部署Oracle 11g单实例详细步骤

选择:企业版,在next

CentOS 7部署Oracle 11g单实例详细步骤

确定oracle base目录 software location目录,这两个目录是在环境变量中设置的(注意权限,否则报错)
确定后选择next

CentOS 7部署Oracle 11g单实例详细步骤

确定软件安装目录以及归属,默认即可
选择:next

CentOS 7部署Oracle 11g单实例详细步骤

确定database adminstrastor group 为dba,database operator group为可选项

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

等待进度条

CentOS 7部署Oracle 11g单实例详细步骤

发现有三个告警,一个swap大小,两个包没有安装安装上

Swap大小只要有剩余没问题,一般生产上都是足够的,需要修改,所以忽略。

compat-libstdc-33-3.2.3-72.el7.x86_64和pdksh-5.2.14;

compat-libstdc-33-3.2.3-72.el7.x86_64在centos源中没有,便从别的源中下载下来了,为了在以后oracle不会出错,建议最好安装上

需要的可以在下面的百度网盘下载

链接:https://pan.baidu.com/s/1Y5RZR1fGVBPPCKlQro8q0Q

提取码:1234

下载后上传,使用root安装

[root@node tmp]# rpm -ivh compat-libstdc-33-3.2.3-72.el7.x86_64.rpm

pdksh-5.2.14的是oracle建议在oracle定制机上安装,我这里的不是,所以会报这个告警,可以忽略。

在安装compat-libstdc-33-3.2.3-72.el7.x86_64.rpm后,在次检查

CentOS 7部署Oracle 11g单实例详细步骤

CentOS 7部署Oracle 11g单实例详细步骤CentOS 7部署Oracle 11g单实例详细步骤

发现没有缺少compat-libstdc-33-3.2.3-72.el7.x86_64.rpm

选择:忽略全部,在next

CentOS 7部署Oracle 11g单实例详细步骤

选择:yes

CentOS 7部署Oracle 11g单实例详细步骤

选择:install

CentOS 7部署Oracle 11g单实例详细步骤

等待

当进度条达到86%时报错

CentOS 7部署Oracle 11g单实例详细步骤

这个原因是系统版本和oracle版本造成,在centos6不会报这错。

官方的解释说是先继续安装,然后再打补丁,这个bug19692824是在创建数据库的时候引发的。如果你在安装数据库软件的时候就报错。

建议使用下面的解决方法使用oracle用户。

修改$ORACLE_HOME/sysman/lib/ins_emagent.mk,将 $(MK_EMAGENT_NMECTL)修改为:

$(MK_EMAGENT_NMECTL) -lnnz11

建议修改前备份原始文件

cd $ORACLE_HOME/sysman/lib

cp ins_emagent.mk ins_emagent.mk.bak

vi ins_emagent.mk

进入vi编辑器后命令模式输入/NMECTL 进行查找,快速定位要修改的行在后面

追加参数-lnnz11 第一个是字母l 后面两个是数字

#===========================

$(SYSMANBIN)emdctl:

$(MK_EMAGENT_NMECTL) -lnnz11

#===========================

修改完成后

CentOS 7部署Oracle 11g单实例详细步骤

CentOS 7部署Oracle 11g单实例详细步骤

到最后弹出要使用root运行

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/db_1/root.sh

这两个脚本

[root@node ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.

[root@node ~]# /u01/app/oracle/product/11.2.0/db_1/root.sh
Performing root user operation for Oracle 11g 

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0/db_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:   <strong>此处回车</strong>
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

CentOS 7部署Oracle 11g单实例详细步骤

运行完成回来,选择ok

CentOS 7部署Oracle 11g单实例详细步骤

至此软件安装完成,选择关闭

5.下面开始安装实例

[oracle@node database]$ dbca

CentOS 7部署Oracle 11g单实例详细步骤

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

选择:创建数据库,在next

CentOS 7部署Oracle 11g单实例详细步骤

选择:一般用途或事务处理,在next

CentOS 7部署Oracle 11g单实例详细步骤

输入global database name和sid,在选择next

CentOS 7部署Oracle 11g单实例详细步骤

去掉企业管理器

CentOS 7部署Oracle 11g单实例详细步骤

去掉自动维护,在选择next

一般在生产上都有自己的管理和维护方式

CentOS 7部署Oracle 11g单实例详细步骤

设置管理员密码可以先简单设置,安装后在按照公司需求修改,在选择next

CentOS 7部署Oracle 11g单实例详细步骤

选择:yes

CentOS 7部署Oracle 11g单实例详细步骤

选择:使用oracle管理文件,再next

CentOS 7部署Oracle 11g单实例详细步骤

默认即可,有需求另外定制

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

CentOS 7部署Oracle 11g单实例详细步骤

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

(SGA and PGA)内存大小根据业务量设计

CentOS 7部署Oracle 11g单实例详细步骤

块大小和进程数也是根据需求设计

CentOS 7部署Oracle 11g单实例详细步骤

字符集也是根据需求,一般为utf-8

CentOS 7部署Oracle 11g单实例详细步骤

连接模式默认

CentOS 7部署Oracle 11g单实例详细步骤

此处设置数据文件,redo log文件,日志成员数的最大数,也是根据需求设置,后期可以修改。

CentOS 7部署Oracle 11g单实例详细步骤

此处设置redo log文件的大小,和添加个删除,后期可以修改。

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

选择:完成

CentOS 7部署Oracle 11g单实例详细步骤

选择ok

CentOS 7部署Oracle 11g单实例详细步骤

等待完成即可

CentOS 7部署Oracle 11g单实例详细步骤

选择exit

至此完成实例安装

6.检查

[oracle@node ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Tue Mar 9 21:06:23 2021

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select status from v$instance;

STATUS
------------
OPEN

7.配置监听

CentOS 7部署Oracle 11g单实例详细步骤

选择:监听配置,在next

CentOS 7部署Oracle 11g单实例详细步骤

选择:添加,在next

CentOS 7部署Oracle 11g单实例详细步骤

默认LISTENR,在选择next

CentOS 7部署Oracle 11g单实例详细步骤

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

使用默认端口1521

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

有需求就另外配另一个

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

选择:next

CentOS 7部署Oracle 11g单实例详细步骤

选择完成

8.使用PL/SQL工具连接测试

CentOS 7部署Oracle 11g单实例详细步骤CentOS 7部署Oracle 11g单实例详细步骤

连接成功

CentOS 7部署Oracle 11g单实例详细步骤


如果您觉得本站对你有帮助,那么可以收藏和推荐本站,帮助本站更好地发展,在此谢过各位网友的支持。
转载请注明原文链接:CentOS 7部署Oracle 11g单实例详细步骤
喜欢 (1)
SEian.G
关于作者:
用心去记录工作,用心去感受生活,用心去学着成长;座右铭:苦练七十二变,笑对八十一难
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址