CentOS7.9上安装Oracle11g

数据库安装目录/apps

一、环境准备

1、安装依赖

在线安装
[root@localhost ~]#  yum install libnsl libnsl2-devel libaio-devel libcap-devel xorg-x11-utils xauth gcc make libstdc++-devel sysstat smartmontools glibc-compat-2.17

安装依赖

若服务器无法连接网络,可使用离线安装:在可以使用互联网的服务器上运行以下命令,将把相关依赖下载至/root/rpm目录下
[root@localhost ~]#  yum -y install yum-utils
[root@localhost ~]#  yumdownloader --destdir=/root/rpm --resolve libnsl libnsl2-devel libaio-devel libcap-devel xorg-x11-utils xauth gcc make libstdc++-devel sysstat smartmontools glibc-compat-2.17
--destdir 指定下载的软件包存放路径
--resolve 解决依赖关系并下载所需的包

在这里插入图片描述

2、查看libaiobaio版本

libaio库版本不能大于0.3.109,libaio版本太高,会造成编译错误

[root@localhost ~]# rpm -qa libaio
libaio-0.3.109-13.el7.x86_64[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)[root@localhost ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

在这里插入图片描述

若版本太高,需下载指定版本(libaio-0.3.109)
# 下载
[root@localhost ~]# wget http://mirrors.ustc.edu.cn/centos/7.9.2009/os/x86_64/Packages/libaio-0.3.109-13.el7.x86_64.rpm# 备份原来的libaio.so.1
[root@localhost ~]# mv /usr/lib64/libaio.so.1 /usr/lib64/libaio.so.1-bak# 解压
[root@localhost ~]# rpm2cpio libaio-0.3.109-13.el7.x86_64.rpm |cpio -idmv# 把解压后的文件拷贝到/usr/lib64下
[root@localhost ~]# cp -r /lib64/libaio.so.1 /usr/lib64
[root@localhost ~]# cp -r /lib64/libaio.so.1.0.1 /usr/lib64# 执行安装
[root@localhost ~]# rpm -ivh libaio-0.3.109-13.el7.x86_64.rpm --force --nodeps

3、修改host,绑定主机名

修改 vim /etc/hosts文件

# 设置主机名
[root@localhost ~]# hostnamectl set-hostname db && bash# 查看主机名
[root@db ~]# hostname
db# 配置本地解析
[root@db ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6172.16.32.13 db

在这里插入图片描述
在这里插入图片描述

4、关闭selinux

设置SELINUX= enforcing 为SELINUX=disabled

#  修改
命令方式:
[root@db ~]# vim /etc/selinux/config
命令方式:
[root@db ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config# 重启服务器、查看是否修改成功
[root@db ~]# setenforce 0
setenforce: SELinux is disabled

在这里插入图片描述

二、安装配置

1、创建组、用户

添加oinstall 、dba 组,新建oracle用户并加入oinstall、dba组中

[root@db ~]# groupadd oinstall
[root@db ~]# groupadd dba
[root@db ~]# useradd -g oinstall -G dba oracle
[root@db ~]# passwd oracle

2、修改内核参数

[root@db ~]# vim /etc/sysctl.conf
在文档最后加入以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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让参数生效: 
[root@db ~]# /sbin/sysctl -p

在这里插入图片描述
在这里插入图片描述

3、配置Oracle用户参数

[root@db ~]# vim /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、修改/etc/pam.d/login 文件

[root@db ~]# vim /etc/pam.d/login
在文档最后加入以下内容:
session  required   /lib64/security/pam_limits.so
session  required   pam_limits.so

在这里插入图片描述

5、修改/etc/profile 文件

[root@db ~]# vim /etc/profile
在文档最后加入以下内容:if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384ulimit -n 65536else    ulimit -u 16384 -n 65536fi      
fi# 重新加载配置
[root@db ~]# source /etc/profile

在这里插入图片描述

6、创建数据库相关目录

创建安装目录app、静默安装目录etc

[root@db ~]# mkdir -p /apps/oracle/app/
[root@db ~]# mkdir -p /apps/oracle/etc/
[root@db ~]# chown -R oracle:oinstall /apps/oracle
[root@db ~]# chmod 775 /apps/oracle

7、安装包上传、解压

上传oracle安装包到:/apps/oracle/app/下,并解压,将生成一个database目录

切换oracle用户、上传安装包并解压
[root@db ~]# su - oracle
[oracle@db app]$ unzip p13390677_112040_Linux-x86-64_1of7.zip
[oracle@db app]$ unzip p13390677_112040_Linux-x86-64_2of7.zip

在这里插入图片描述
拷贝/apps/oracle/app/database/response的.rsp文件到/apps/oracle/etc/目录下

[oracle@db app]$ cp /apps/oracle/app/database/response/* /apps/oracle/etc/

在这里插入图片描述

8、添加环境变量

# 切换oracle用户
[root@db ~]# su - oracle编辑环境变量,并生效
[oracle@db app]$ vim ~/.bash_profile内容如下:# oracle安装目录
export ORACLE_BASE=/apps/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0
# oracle实例SID名称
export ORACLE_SID=orcl
# 同SID
export ORACLE_TERM=orcl
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export LANG=C
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
# 同SID
export ORACLE_UNQNAME=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export PATH
export SQLPATH=/apps/oracle/labs[oracle@db app]$ source ~/.bash_profile# 验证是否生效
[oracle@db app]$ echo $ORACLE_HOME
/apps/oracle/app/product/11.2.0(与~/.bash_profile中配置一致即生效)

在这里插入图片描述

三、部署

1、修改db_install.rsp

编辑/apps/oracle/etc/目录下db_install.rsp,参考下述配置,根据实际编写

[oracle@db app]$ cat /apps/oracle/etc/db_install.rsp | grep -v "#" | grep -v "^$"
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=db
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/apps/oracle/app/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/apps/oracle/app/product/11.2.0
ORACLE_BASE=/apps/oracle/app
oracle.install.db.InstallEdition=EE
oracle.install.db.EEOptionsSelection=false
oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall
oracle.install.db.CLUSTER_NODES=
oracle.install.db.isRACOneInstall=
oracle.install.db.racOneServiceName=
oracle.install.db.config.starterdb.type=
oracle.install.db.config.starterdb.globalDBName=orcl
oracle.install.db.config.starterdb.SID=orcl
oracle.install.db.config.starterdb.characterSet=AL32UTF8
oracle.install.db.config.starterdb.memoryOption=true
oracle.install.db.config.starterdb.memoryLimit=
oracle.install.db.config.starterdb.installExampleSchemas=false
oracle.install.db.config.starterdb.enableSecuritySettings=true
oracle.install.db.config.starterdb.password.ALL=
oracle.install.db.config.starterdb.password.SYS=
oracle.install.db.config.starterdb.password.SYSTEM=
oracle.install.db.config.starterdb.password.SYSMAN=
oracle.install.db.config.starterdb.password.DBSNMP=
oracle.install.db.config.starterdb.control=DB_CONTROL
oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL=
oracle.install.db.config.starterdb.automatedBackup.enable=false
oracle.install.db.config.starterdb.automatedBackup.osuid=
oracle.install.db.config.starterdb.automatedBackup.ospwd=
oracle.install.db.config.starterdb.storageType=
oracle.install.db.config.starterdb.fileSystemStorage.dataLocation=
oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation=
oracle.install.db.config.asm.diskGroup=
oracle.install.db.config.asm.ASMSNMPPassword=
MYORACLESUPPORT_USERNAME=
MYORACLESUPPORT_PASSWORD=
SECURITY_UPDATES_VIA_MYORACLESUPPORT=
DECLINE_SECURITY_UPDATES=true
PROXY_HOST=
PROXY_PORT=
PROXY_USER=
PROXY_PWD=
PROXY_REALM=
COLLECTOR_SUPPORTHUB_URL=
oracle.installer.autoupdates.option=
oracle.installer.autoupdates.downloadUpdatesLoc=
AUTOUPDATES_MYORACLESUPPORT_USERNAME=
AUTOUPDATES_MYORACLESUPPORT_PASSWORD=

2、安装数据库

2.1、在路径:/apps/oracle/app/database/下执行命令

./runInstaller -silent -force -responseFile /apps/oracle/etc/db_install.rsp -ignorePrereq

在这里插入图片描述
2.2、切换root用户执行(有时候可能只有一个root.sh,也是正常的)

以 root 用户的身份执行以下脚本

[root@db ~]# /apps/oracle/app/oraInventory/orainstRoot.sh
[root@db ~]# /apps/oracle/app/product/11.2.0/root.sh

在这里插入图片描述

3、监听安装

[oracle@db database]$ cd /apps/oracle/app/product/11.2.0/bin
[oracle@db bin]$ ./netca  /silent /responsefile /apps/oracle/etc/netca.rsp

在这里插入图片描述

若报错

UnsatisfiedLinkError exception loading native library: njni11
java.lang.UnsatisfiedLinkError: /apps/oracle/app/product/11.2.0/lib/libnjni11.so: libclntsh.so.11.1: cannot open shared object file: No such file or directory
java.lang.UnsatisfiedLinkError: jniGetOracleHomeat oracle.net.common.NetGetEnv.jniGetOracleHome(Native Method)at oracle.net.common.NetGetEnv.getOracleHome(Unknown Source)at oracle.net.ca.NetCALogger.getOracleHome(NetCALogger.java:230)at oracle.net.ca.NetCALogger.initOracleParameters(NetCALogger.java:215)at oracle.net.ca.NetCALogger.initLogger(NetCALogger.java:130)at oracle.net.ca.NetCA.main(NetCA.java:427)Error: jniGetOracleHome
Oracle Net Services 配置失败。退出代码是1

解决方法

[oracle@db bin]$ cp /apps/oracle/appbase/stage/ext/lib/libclntsh.so.11.1 /apps/oracle/app/product/11.2.0/lib/

4、监听状态查看

[oracle@db bin]$ lsnrctl status

在这里插入图片描述

5、静默建库

5.1、编辑文件:vim /apps/oracle/etc/dbca.rsp

[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase" [CREATEDATABASE]
GDBNAME = "orcl"         #数据库的名字,与环境变量配置保持一致
SID = "orcl"             #对应的实例名字,与环境变量配置保持一致 
SYSPASSWORD = "sysdba"         #SYS管理员密码
SYSTEMPASSWORD = "sysdba"     #SYSTEM管理员密码
SYSMANPASSWORD = "sysdba"
DBSNMPPASSWORD = "sysdba"
CHARACTERSET = "ZHS16GBK"  [ADDINSTANCE]
DB_UNIQUE_NAME = "orcl"  #数据库的名字,与环境变量配置保持一致 [DELETEINSTANCE]
DB_UNIQUE_NAME = "orcl"  #数据库的名字,与环境变量配置保持一致 
INSTANCENAME = "orcl"    #数据库的名字,与环境变量配置保持一致 

5.2、执行建库命令:

[oracle@db bin]$ cd /apps/oracle/app/product/11.2.0/bin
[oracle@db bin]$ ./dbca -silent -responseFile /apps/oracle/etc/dbca.rsp

在这里插入图片描述

6、登录查看

[oracle@db bin]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Mon Apr 15 11:36:06 2024
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

在这里插入图片描述
在这里插入图片描述

四、系统服务注册

系统服务注册:
oracle.service

[Unit]
Description=Oracle Database 11g Startup/Shutdown Service
After=syslog.target network.target[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=oneshot
RemainAfterExit=yes
User=oracle
Environment="ORACLE_HOME=/apps/oracle/app/product/11.2.0"
ExecStart=/apps/oracle/app/product/11.2.0/bin/dbstart $ORACLE_HOME >> 2>&1 &
ExecStop=/apps/oracle/app/product/11.2.0/bin/dbshut $ORACLE_HOME 2>&1 &[Install]
WantedBy=multi-user.target

放置oracle.service于/etc/systemd/system/目录下
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/309636.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

环形链表的约瑟夫问题(牛客网)

/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** * param n int整型 * param m int整型 * return int整型*/struct ListNode * BuyNode(int n)//创建节点和成环{ struct ListNode *pheadNULL;struct ListNode *ptailN…

【安全】查杀linux上c3pool挖矿病毒xmrig

挖矿平台:猫池 病毒来源安装脚本 cat /root/c3pool/config.jsoncrontab -r cd /root/c3poolcurl -s -L http://download.c3pool.org/xmrig_setup/raw/master/setup_c3pool_miner.sh | LC_ALLen_US.UTF-8 bash -s 44SLpuV4U7gB6RNZMCweHxWug7b1YUir4jLr3RBaVX33Qxj…

有了一站式知识库服务平台,再也不用担心工作效率了!

你是否记得无数次在海量文件和邮件里搜索资料的烦恼?又或者是在急需某个信息时,却发现它埋藏在某个早已遗忘的文件夹深处?如果你的答案是肯定的,那么一站式知识库服务平台的出现,无疑是你提高工作效率的得力助手。 知识…

力扣面试150 反转字符串中的单词 API 双指针

Problem: 151. 反转字符串中的单词 &#x1f468;‍&#x1f3eb; 参考思路 &#x1f496; API 大法 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( n ) O(n) O(n) class Solution {public String reverseWords(String s){s s.trim();// 去除首尾空格List<String&…

软件无线电安全之HackRF One初探

HackRF介绍 HackRF是一款开源软件无线电&#xff08;SDR&#xff09;平台&#xff0c;由Great Scott Gadgets公司推出。它具有广泛的频率覆盖范围&#xff0c;从1 MHz到6 GHz&#xff0c;支持大部分常见的无线通信频段。采用软件定义无线电技术&#xff0c;HackRF提供了自定义…

CCleaner怎么清理软件缓存 CCleaner清理要勾选哪些 ccleanerfree下载

CCleaner软件是一款优秀的数据清理软件&#xff0c;其中没有硬盘和内存的设置&#xff0c;也不含任何广告软件&#xff0c;其出色的注册表清洁功能能够保证您的电脑更稳定运行。本文将围绕CCleaner怎么清理软件缓存&#xff0c;CCleaner清理要勾选哪些的相关内容进行介绍。 一、…

前端浏览器跨标签通信方式分享

跨标签通信也有很多实际的应用场景&#xff0c;比如&#xff1a; 共享登录状态&#xff1a;当用户在一个标签页中登录后&#xff0c;其他打开的标签页需要及时获取到登录状态&#xff0c;以保持一致的用户体验。在这种情况下&#xff0c;可以使用浏览器的localStorage或sessio…

【Linux网络编程】UDP协议

UDP协议 1.再谈端口号端口号划分认识知名端口号(Well-Know Port Number)两个问题netstatpidof 2.UDP协议2.1UDP的特点2.2面向数据报2.3UDP的缓冲区2.4UDP使用注意事项2.5基于UDP的应用层协议 喜欢的点赞&#xff0c;收藏&#xff0c;关注一下把&#xff01; 1.再谈端口号 端口…

神经网络模型底层原理与实现8-BERT

首先介绍什么是自监督学习&#xff1a; 普通的有监督学习是每个x对应有个y&#xff0c;x训练得到y&#xff0c;将y与y作比较&#xff0c;而自监督是没有对应y&#xff0c;直接把一部分样本x作为训练目标x&#xff0c;训练得x后和x对比 bert中如何创造x&#xff1a;以文字处理为…

Python爬虫-京东商品评论数据

前言 本文是该专栏的第68篇,后面会持续分享python爬虫干货知识,记得关注。 在本专栏之前,笔者有详细介绍京东滑块验证码的解决方法,感兴趣的同学,可以直接翻阅文章《Python如何解决“京东滑块验证码”(5)》进行查看。 而本文,笔者以京东商品详情页的评论数据为例,通过…

SpringBoot - Logback 打印第三方 Jar 日志解决方案

问题描述 最近碰到一个很苦恼的问题&#xff0c;就是第三方的 Jar 在自己项目里日志可以正常输出&#xff0c;但是一旦被引用到其他项目里&#xff0c;就日志死活打不出来…… 解决方案 这是原来的配置 - logback.xml <?xml version"1.0" encoding"UTF-8…

怎么看电脑显卡?跟着这篇文章轻松掌握

电脑显卡是决定图形性能的关键硬件之一&#xff0c;对于电脑的图形处理和游戏性能有着重要的影响。了解自己电脑的显卡型号和性能可以帮助用户更好地了解自己电脑的性能状况&#xff0c;以及是否需要升级显卡以提升性能。本文将介绍怎么看电脑显卡的三种方法&#xff0c;帮助用…

JVM—jps、jstat、jinfo、jmap、jstack的使用

JVM—jps、jstat、jinfo、jmap、jstack的使用 jps jps全称&#xff1a;Java Virtual Machine Process Status Tool 可以查看Java进程&#xff0c;相当于Linux下的ps命令&#xff0c;只不过它只列出Java进程。 jps:列出Jav程序ID和Main函数名称 jps -q:只输出进程ID jps -m …

rabbitmq安装erlang环境后没生效

引言 安装erlang环境后输入erl提示无效 首先&#xff0c;确定 Erlang 的可执行文件位于什么位置。默认情况下&#xff0c;它们通常位于 /usr/local/bin 或 /usr/bin 目录中。您可以使用 find 命令来查找 erl 可执行文件 的位置&#xff0c;例如&#xff1a; find /usr -name er…

技术周刊的转变:如何平衡热爱与现实?

大家好&#xff0c;我是那个自己打脸自己的猫哥&#xff0c;本来说周刊不做订阅制的&#xff0c;现在却推出了订阅专栏。今天想为自己辩护一下&#xff0c;同时聊聊技术周刊今后的发展计划。 首先回顾一下我过去的想法吧&#xff0c;然后再解释为什么会突然出现转变。 出于对…

【Docker】docker原理及使用-1

Docker目录 1️⃣概念2️⃣使用容器的好处2️⃣docker和普通软件启动方式的区别2️⃣docker和传统虚拟机的区别 1️⃣下载安装2️⃣安装步骤 1️⃣必须要掌握的核心概念1️⃣命令2️⃣例子2️⃣练习题目2️⃣进入一下python环境(简洁) 1️⃣解释一下 redis1️⃣docker底层隔离机…

亚马逊CloudFront使用体验

前言 首先在体验CloudFront之前&#xff0c;先介绍一下什么是CDN&#xff0c;以及CDN的基本原理。 CDN是Content Delivery Network&#xff08;内容分发网络&#xff09;的缩写&#xff0c;是一种利用分布式节点技术&#xff0c;在全球部署服务器&#xff0c;即时地将网站、应…

PotPlayer 图像截取

PotPlayer 图像截取 1. PotPlayer2. PotPlayer 下载2.1. PotPlayer 240305 3. 图像截取References 1. PotPlayer http://www.potplayercn.com/ PotPlayer 是 KMPlayer 原作者姜勇囍进入新公司 Daum 之后推出的&#xff0c;继承了 KMPlayer 所有的优点&#xff0c;拥有异常强大…

得帆用户有福了!全新社区论坛携手AI助手华丽上线,积分好礼等你拿!

盼望着&#xff0c;盼望着&#xff0c;春天的脚步近了&#xff0c;得帆云社区迎来全新升级&#xff0c;社区论坛携手AI知识库助手上线了&#xff01; 得帆云官方社区论坛&#xff1a; https://edu.definesys.cn/community/community-forum 您也可以点击本文末尾左下方“阅读…

postman接口测试(入门到精通)

下载&#xff1a; postman官方地址 测试外部接口&#xff1a;测试被测系统和外部系统之间的接口。&#xff08;只需要测试正例即可&#xff09; 测试内部接口&#xff1a; 1.内部接口只提供给内部系统使用。&#xff08;只需要测试正例即可&#xff09; 2.内部接口提供给外…