centos安装oracle11g

news2024/11/14 20:33:28

版本:Oracle 11.2.0.4

创建用户

root执行以下命令

#创建database用户组
groupadd database
#创建oracle用户并放入database组中
useradd oracle -g database
#设置oracle密码
passwd oracle

密码我设置的是database@2023

安装oracle安装程序依赖程序包

root用户执行以下命令

yum -y install binutils compat-libcap1  compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXp

如果乱码或者不想用中文界面安装,安装前运行以下命令,临时使用英文环境。

LANG=en_US

上传并解压安装包

上传安装包到 CentOS7服务器 /home/oracle/目录。

[oracle@localhost ~]$ pwd
/home/oracle
[oracle@localhost ~]$ ls
p13390677_112040_Linux-x86-64_1of7.zip  p13390677_112040_Linux-x86-64_2of7.zip

只需要*1of7.zip,*2of7.zip 两个压缩包即可。

如果没有unzip工具,安装unzip
root执行以下面

yum install unzip

oracle用户,执行下面命令,解压安装包

#解压第1个zip
unzip p13390677_112040_Linux-x86-64_1of7.zip
#解压第2个zip
unzip p13390677_112040_Linux-x86-64_2of7.zip

解压出 database
文件如下:

[oracle@localhost ~]$ ls
database  p13390677_112040_Linux-x86-64_1of7.zip  p13390677_112040_Linux-x86-64_2of7.zip

安装oracle

准备工作已经结束了,接下来的安装工作就跟在windows下安装oracle差不多了。基本就是根据界面提示就可以一路“下一步(N)”就可以完成了。
需要稍微注意的就是:

  1. 桌面类与服务器类的选择
  2. 超级管理员密码的设置
  3. 先决条件检查

oracle用户进入~/database/目录。

#进入安装目录
cd ~/database/
#运行安装程序
./runInstaller

配置安全更新

根据需要设置
在这里插入图片描述

下载软件更新

跳过软件更新(S)。
在这里插入图片描述

网络安装选项

选择“创建和配置数据库(C)”
在这里插入图片描述

桌面类 or 服务器类

在这里插入图片描述

安装类型

在这里插入图片描述

典型安装

在这里插入图片描述

典型安装配置

主要设置一下密码,其他默认即可。这里密码要在大写字母+小写字母+数字组合。比如:我设置的是Database123。
在这里插入图片描述

创建产品清单

默认即可。
在这里插入图片描述

执行先决条件检查

执行修补并再次检查(F) 可以自动修复
在这里插入图片描述
执行修补并再次检查(F)
在这里插入图片描述
root权限执行:

/tmp/CVU_11.2.0.4.0_oracle/runfixup.sh

执行完后,点击上面对话框中的确定(O) 这里发现大部分都修复了。如下:
在这里插入图片描述
剩下的警告尽量解决,如果自己知道影响不大直接点右上角 ☐全部忽略即可。
比如:我的虚拟机内存,比预期值差30MB左右,影响不大直接忽略也可以。
解决方法也很简单,加大内存即可。

解决 包:pdksh-5.2.14 警告

#下载安装包
wget  http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

如果没有wget就安装一下 yum install wget

如果下载不动 请看

https://blog.csdn.net/qq_45748758/article/details/131896211

执行安装操作。

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

执行结果如下,与已经安装的冲突了,安装失败了。

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm 
警告:pdksh-5.2.14-37.el5_8.1.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID e8562897: NOKEY
错误:依赖检测失败:
	pdksh 与 (已安裝) ksh-20120801-142.el7.x86_64 冲突

卸载冲突

rpm -e ksh-20120801-142.el7.x86_64

再次安装

rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

全过程如下:

[root@localhost ~]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm 
警告:pdksh-5.2.14-37.el5_8.1.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID e8562897: NOKEY
错误:依赖检测失败:
	pdksh 与 (已安裝) ksh-20120801-142.el7.x86_64 冲突
[root@localhost ~]# rpm -e ksh-20120801-142.el7.x86_64
[root@localhost ~]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
警告:pdksh-5.2.14-37.el5_8.1.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID e8562897: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:pdksh-5.2.14-37.el5_8.1          ################################# [100%]

重新检测,发现警告消失了!!!

Swap分区设置

若检查中无此项,可忽略!

如果Swap空间不符合要求,oracle 安装文件检查发现swap 空间不足。
大小一般设置为一般为内存的1.5倍。

(root权限)查询当时Swap分区设置情况。

swapon -s

在这里插入图片描述
或者使用free工具来查看内存和Swap情况。

free -m

结果如下单位(MB):

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1475         439         171          13         865         877
Swap:          2047           0        2047

创建Swap文件

接下来我们将在文件系统上创建swap文件。我们要在根目录/下创建一个名叫swapfile的文件,当然你也可以选择你喜欢的文件名。该文件分配的空间将等于我们需要的swap空间。
一般内存的1.5倍以上就好了。也可以根据安装程序的提示来。
在这里插入图片描述
root执行以下命令,创建swap分区,
在这里插入图片描述

#创建swap文件 bs=2300的设置的值一般为内存的1.5倍以上 
dd if=/dev/zero of=/var/swap bs=2500 count=1000000
#需要更改swap文件的权限,确保只有root才可读
chmod 600 /var/swap
#告知系统将该文件用于swap
mkswap /var/swap
#开始使用该swap
swapon /var/swap
#使Swap文件永久生效,/etc/fstab加入配置
echo "/var/swap   swap    swap    sw  0   0" >> /etc/fstab

如果上面创建后发现,大小创建错误了。如何重置呢?

swapoff -a
rm /var/swap

上面命令就可以删除了,然后重新创建合适的swap文件就行了。

所有警告消失了

在这里插入图片描述

概要

这里显示了安装配置的概要部分,检查一下是否正确。没问题就开始安装吧!
在这里插入图片描述

安装产品

在这里插入图片描述

进度70% ins_emagent.mk错误弹框

在这里插入图片描述
编辑:
/home/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk
约176行,可以搜索$(MK_EMAGENT_NMECTL) 关键字快速找到。
在这里插入图片描述
修改完成后,点击重试(R)
在这里插入图片描述

复制数据库文件

上面的问题解决后,安装一会儿就会出现如下的界面。耐心等待即可。
在这里插入图片描述

数据库创建完成

经过一段时间的等待,终于弹出如下界面
在这里插入图片描述

执行配置脚本

在这里插入图片描述
根据上图提示,root 执行上面两个脚本就可以了。
执行结果如下:

[root@localhost ~]# /home/oracle/app/oraInventory/orainstRoot.sh 
更改权限/home/oracle/app/oraInventory.
添加组的读取和写入权限。
删除全局的读取, 写入和执行权限。

更改组名/home/oracle/app/oraInventory 到 database.
脚本的执行已完成。
[root@localhost ~]# /home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh 
Performing root user operation for Oracle 11g 

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

Enter the full pathname of the local bin directory: [/usr/local/bin]: 
   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.
[root@localhost ~]# 

执行完成这两个脚本,点击确定
在这里插入图片描述

Oracle Database 的安装已成功

在这里插入图片描述

防火墙放行1521

默认端口是1521

# 防火墙放行1521oracle端口
firewall-cmd --add-port=1521/tcp
firewall-cmd --add-port=1521/tcp --permanent

配置环境变量

切换到oracle用户操作。
编辑配置文件

su oracle
vi ~/.bash_profile

文件末尾加入以下内容,ORACLE_HOME中换成你实际安装的路径

export ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/dbhome_1/
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin

使用配置文件立即生效。

source ~/.bash_profile

启动oracle

su oracle
sqlplus /nolog
SQL> connect /as sysdba
SQL> startup

启动监听

lsnrctl start

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在 WSL2 中使用 NVIDIA Docker 进行全栈开发和深度学习 TensorFlow pytorch GPU 加速

WSL2使用NVIDIA Docker进行全栈开发和深度学习 1. 前置条件 1.1. 安装系统 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 跳过 1.2. 处理好网络环境 安装过程中需要访问国际网络,自行处理好。建议开启 tu…

驾驶员监控系统DMS系统功能规范

概述 文档范围 该文档阐述了DMS系统的功能场景、系统组成、接口需求等。 目的 该功能规范为DMS系统及周边件的开发提供参考。 缩写与定义 英文缩写 英文全称 中文描述 DMS: Driver Monitoring System 驾驶员监控系统 MPU: Micro Processor Unit 微处理器单元 IECU: …

windows安装mysql8.0.34的压缩包

文章目录 目录 文章目录 前言 一、下载安装包zip格式 二、使用步骤 总结 前言 一、下载安装包zip格式 MySQL :: Begin Your Download 二、使用步骤 解压缩之后在解压之后的目录里创建data和my.ini my.ini内容 # 设置mysql客户端连接服务端时默认使用的端口 port3306#默认…

<C++> STL_list

1.list的介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向 其前一个元素和后一个元素。list与…

YOLO目标检测——火灾和非火灾数据集下载分享

火灾和非火灾数据集应用场景:火灾预测和预警、火灾风险评估、火灾事故研究、智能消防系统等等 数据集点击下载:YOLO火灾和非火灾数据集1000图片.rar

uni-app里使用webscoket

实现思路和vue中是一样的。如果想看思路可以看这篇文章:websocket 直接上可以运行的代码: 一、后端nodeJS代码: 1、新建项目文件夹 2、初始化项目: npm init -y 3、项目里安装ws npm i ws --save 4、nodeJS代码&#xff1…

新仿百度文库网站源码 免费文库网站源码 文档分享平台源码 实现文档上传下载及在线预览

仿百度文库是一个以PHPMySQL进行开发的免费文库网站源码。主要特点如下: 界面仿照百度文库,使用户在使用时更加熟悉和舒适。支持文档的上传、下载和在线预览功能,方便用户分享和获取各种文档资料。用户可以对自己需要的文档进行悬赏&#xf…

单片机基础知识 06 (中断-2)

一. 定时器中断概念 51单片机的内部有两个16位可编程的定时器/计数器,即定时器T0和定时器T1。 52单片机内部多一个T2定时器/计数器。 定时器/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。 TMOD是定时器/计数器…

算法通过村第四关-栈白银笔记|手写栈操作

文章目录 前言1. 栈的基础概要1.1 栈的特征1.2 栈的操作1.3 Java中的栈 2. 栈的实现(手写栈)2.1 基于数组实现2.2 基于链表实现2.3 基于LinkedList实现 总结 前言 提示:我自己一个人的感觉很好 我并不想要拥有你 除非你比我的独处更加宜人 --…

2023年6月GESP C++ 四级试卷解析

一、单选题(每题2分,共30分) 1.高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 A.编辑 B.保存 C.调试 D.编译 【答案】D 【考纲知识点】编程环境(一级) 【解析】本题…

MVSNet 代码注释版 下载 (pytorch版)(注释非常详细,较源码结构有调整,使用起来更方便)

MVSNet 代码注释版 下载 (注释非常详细,代码结构有所调整,使用起来更方便) 本代码不仅进行了详细注释,还对源码做了相应调整,可以更方便用户使用, 结构上,更加清晰; 代…

docker,nvidia-docker安装

卸载先前的docker Docker 的旧版本被称为 docker,docker.io 或 docker-engine 。如果已安装,请卸载它们: sudo apt-get remove docker docker-engine docker.io containerd runc使用 Docker 仓库进行安装 设置仓库 更新 apt 包索引 sudo…

【vue2-helper插件】提供Mixins和组件库相关的类型提示、智能补全、跳转等功能~

Vue2-helper - 为你的 Vue2 开发增添智慧 ✨ 🚀 辅助Vue2开发中的Mixins、组件库、Vue-router的智能补全、语义高亮、跳转支持、Hover 提示等,提升Vue2开发体验。 功能特色 ✨ ✅ 配置式缓存设计:秒级切换体验,让开发如丝般顺滑…

算法通关村——解析堆在数组和链表的应用

1. 堆 1.1 什么是堆? 堆是将一组数据以完全二叉树的形式存储在数组里面。一般有大根堆和小根堆。 小根堆:任意节点的值小于等于它的左右孩子,最小值在堆顶。 大根堆:任意节点的值大于等于它的左右还是,最大值在堆顶。…

应用TortoiseSVN的SubWCRev管理VisualStudio C#项目编译版本号

1、拷贝Porperties目录下的文件AssemblyInfo.cs生成副本AssemblyInfo.template.cs, 作为版本管理的模板文件。 2、修改模板文件中的想要管理的版本号信息 // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.5.0.$WCREV$")]//0.9.5…

渗透测试工具ZAP入门教程(3)-扫描流程

使用ZAP扫描网站流程如下: 1)、输入URL,点击启动浏览器,在打开的浏览器登录要扫描的网站,操作页面各种功能,尽可能遍历所有功能及页面 2)、点击Spider Start按钮,爬取静态地址&…

量化:pandas基础

文章目录 简介Series构造 DataFrame构造列的查改增删填充默认值 简介 pandas是 Python 的核心数据分析支持库,提供了快速、灵活、明确的数据结构。 pandas主要的两种数据结构为Series和DataFrame,分别用于处理一维和二维数据。 Series Series 是一种类…

机器学习实战14-在日本福岛核电站排放污水的背景下,核电站对人口影响的分析实践

大家好,我是微学AI,今天给大家介绍一下机器学习实战14-在日本福岛核电站排放污水的背景下,核电站对人口影响的分析实践。 近日,日本政府举行内阁成员会议,决定于2023年8月24日启动福岛核污染水排海。当地时间2023年8月24日13时&am…

【优化算法】Python实现面向对象的遗传算法

遗传算法 遗传算法(Genetic Algorithm)属于智能优化算法的一种,本质上是模拟自然界中种群的演化来寻求问题的最优解。与之相似的还有模拟退火、粒子群、蚁群等算法。 在具体介绍遗传算法之前,我们先来了解一些知识🧀 DNA: 携带有…

【Acwing901】滑雪(记忆化搜索)题目讲解

题目描述 题目分析 样例解释 轨迹如下所示 状态表示 可以用f[i,j]表示从点(i,j)开始往下滑的最长的滑雪轨迹,那么最终答案就是遍历每一个点的f[i,j],然后取最大值 状态计算 状态的转移也是非常的简单,…