麒麟V10系统上安装Oracle
以下是在麒麟V10系统上安装Oracle数据库的详细步骤:
安装前准备
-
检查系统版本:使用
uname -a
、cat /etc/os-release
等命令检查服务器是麒麟V10系统。 -
配置固定IP和本地yum源:
-
挂载麒麟V10的iso文件到/mnt目录,如
mount -o loop Kylin-Server-10-SP1-Release-Build20-20210518-x86_64.iso /mnt
。 -
备份并修改
/etc/yum.repos.d/kylin_x86_64.repo
文件,配置本地yum源,内容如下:复制
[ks10-local] name = local_yum baseurl = file:///mnt gpgcheck = 0 enabled = 1
-
创建缓存,执行
yum clean all
和yum makecache
命令。 -
配置固定IP,编辑
/etc/sysconfig/network-scripts/ifcfg-ens33
文件,设置IP地址、网关、子网掩码等信息。
-
-
初始化服务器参数:
-
初始化主机名,如
hostnamectl set-hostname server01
。 -
关闭selinux,修改
/etc/selinux/config
文件,将SELINUX=disabled
。 -
关闭防火墙(非必须),执行
systemctl stop firewalld
和systemctl disable firewalld
命令。
-
创建用户及目录
-
创建用户和用户组:
-
创建oinstall用户组和dba用户组,命令分别为
groupadd oinstall
和groupadd dba
。 -
创建oracle用户,并将其加入到oinstall组和dba组中,命令为
useradd -g oinstall -G dba oracle
,然后设置oracle用户的登录密码,命令为passwd oracle
。
-
-
创建数据库软件存储目录:
-
创建Oracle基目录,如
mkdir -p /u01/oracle
。 -
创建Oracle家目录,如
mkdir -p /u01/oracle/19.3.0
。 -
创建Oracle产品清单目录,如
mkdir -p /u01/oraInventory
。 -
将上述目录授权给oracle用户,命令为
chown -R oracle:oinstall /u01/oracle
和chown -R oracle:oinstall /u01/oraInventory
。
-
安装依赖包
使用yum install ksh libaio-devel elfutils-gcc*
命令安装Oracle 19c依赖包。注意,依赖libnsl-2.28在iso里并未提供,需要单独拷贝libpthread_nonshared.a文件到/usr/lib64下。
配置内核参数
编辑/etc/sysctl.conf
文件,添加如下内容:
复制
fs.file-max =6815744
kernel.sem = 250 32000 100 200
kernel.shmmni =4096
kernel.shmall =1073741824
kernel.shmmax =4398046511104
kernel.panic_on_oops= 1
net.core.rmem_default= 262144
net.core.rmem_max= 4194304
net.core.wmem_default= 262144
net.core.wmem_max= 1048576
fs.aio-max-nr =1048576
net.ipv4.ip_local_port_range= 9000 65500
然后执行sysctl -p
命令使配置生效。
配置oracle环境变量
切换到oracle用户,编辑~/.bash_profile
文件,添加如下内容:
复制
export ORACLE_SID=orcl;
export ORACLE_UNQNAME=orcl;
export ORACLE_BASE=/u01/app/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/db_1;
export NLS_DATE_FORMAT="YYYY:MM:DDHH24:MI:SS";
export NLS_LANG=american_america.ZHS16GBK;
export TNS_ADMIN=$ORACLE_HOME/network/admin;
export ORA_NLS11=$ORACLE_HOME/nls/data;
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib
export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native;
解压安装包
切换到oracle用户,将下载的Oracle安装包上传到服务器的/u01目录下,然后执行unzip LINUX.X64_193000_db_home.zip -d /u01/app/oracle/product/19.3.0/db_1/
命令解压安装包。
安装Oracle
-
在root用户下执行
xhost +
命令。 -
切换到oracle用户,执行
export CV_ASSUME_DISTID=RHEL7.6
命令伪装redhat 7.6系统。 -
执行
export LANG=en_US
和export DISPLAY=:1.0
命令。 -
进入到oracle安装目录
/u01/app/oracle/product/19.3.0/db_1/
,执行./runInstaller
命令开始安装。 -
在安装界面中,选择“只安装软件”,然后根据提示进行安装,安装过程中需确认安装路径和Inventory路径等信息。
安装完成后,还需要根据实际情况进行数据库的配置和优化。
在麒麟V10系统上安装Oracle数据库过程中,需要注意以下几点:
系统环境方面
-
确保系统资源充足:Oracle数据库对系统资源要求较高,安装前要确保服务器有足够的内存、CPU和磁盘空间。一般建议内存至少为16GB,磁盘空间至少为50GB以上,具体可根据实际业务需求进行调整。
-
检查系统版本和补丁:确保麒麟V10系统的版本与Oracle数据库版本兼容,并且系统补丁是最新的,以避免因系统问题导致安装失败或数据库运行异常。
-
关闭不必要的服务:在安装过程中,关闭一些不必要的服务和进程,如防火墙、selinux等,以免它们对安装过程产生干扰。但关闭防火墙后要注意服务器的安全性,安装完成后根据需要重新配置防火墙规则。
用户和权限方面
-
正确创建用户和用户组:严格按照要求创建oinstall和dba用户组以及oracle用户,并确保将oracle用户加入到这两个组中。同时,要正确设置oracle用户的密码,并且在安装过程中使用oracle用户进行操作。
-
合理设置目录权限:创建好Oracle基目录、家目录和产品清单目录后,要将这些目录的权限正确授权给oracle用户和oinstall组,否则在安装过程中可能会出现权限不足导致无法写入文件等问题。
依赖包和配置方面
-
安装完整依赖包:安装Oracle前要确保所有依赖包都已正确安装,缺少依赖包可能会导致安装过程中出现错误。除了使用yum安装的依赖包外,还要注意一些特殊的依赖文件,如libnsl-2.28中的libpthread_nonshared.a文件,需要单独拷贝到指定目录下。
-
准确配置内核参数:编辑
/etc/sysctl.conf
文件时,要仔细核对每个参数的值是否正确,这些参数对Oracle数据库的性能和稳定性有很大影响。配置完成后,一定要执行sysctl -p
命令使配置生效,并且可以通过sysctl -a
命令查看参数是否已正确设置。 -
正确设置环境变量:在oracle用户的
~/.bash_profile
文件中设置环境变量时,要确保每个变量的值都正确无误,如ORACLE_BASE、ORACLE_HOME、PATH等。设置完成后,执行source ~/.bash_profile
命令使环境变量生效,并且可以通过echo $变量名
命令查看变量是否已正确设置。
安装过程方面
-
选择正确的安装模式:在安装界面中,要根据实际需求选择合适的安装模式。如果只是想安装Oracle数据库软件,可以选择“只安装软件”模式;如果需要同时创建数据库实例,可以选择“安装数据库软件并创建数据库”模式。
-
确认安装路径和Inventory路径:在安装过程中,要仔细确认Oracle软件的安装路径和Inventory路径是否正确。安装路径是Oracle数据库软件的存放位置,Inventory路径是Oracle产品清单的存放位置,这两个路径在后续的数据库维护和升级中非常重要,一旦设置错误可能会导致后续操作出现问题。
-
耐心等待安装完成:Oracle数据库的安装过程可能会比较漫长,需要耐心等待。在安装过程中,不要随意中断安装进程,否则可能会导致安装失败或数据库文件损坏。如果安装过程中出现错误提示,要仔细查看错误信息,根据提示进行相应的处理,必要时可以查阅官方文档或寻求技术支持。
后续配置方面
-
数据库配置和优化:安装完成后,还需要根据实际业务需求对数据库进行配置和优化,如设置数据库字符集、创建表空间、配置监听器和tnsnames.ora文件等。这些配置和优化工作对于数据库的性能和稳定性至关重要,需要仔细操作。
-
备份和恢复策略:在数据库投入使用前,要制定好备份和恢复策略,定期对数据库进行备份,以防止数据丢失或损坏。同时,要熟悉备份文件的恢复方法,以便在出现故障时能够快速恢复数据库。
相关文章:
麒麟V10系统上安装Oracle
以下是在麒麟V10系统上安装Oracle数据库的详细步骤: 安装前准备 检查系统版本:使用uname -a、cat /etc/os-release等命令检查服务器是麒麟V10系统。 配置固定IP和本地yum源: 挂载麒麟V10的iso文件到/mnt目录,如mount -o loop Ky…...

项目开发实践——基于SpringBoot+Vue3实现的在线考试系统(七)
文章目录 一、题库管理模块实现1、新增题目功能实现1.1 页面设计1.2 前端功能实现1.3 后端功能实现1.4 效果展示2、题目列表功能实现2.1 页面设计2.2 前端功能实现2.3 后端功能实现2.3.1 后端查询题目列表接口实现2.3.2 后端编辑试题接口实现2.4 效果展示二、代码下载一、题库管…...

Elasticsearch:Jira 连接器教程第二部分 - 6 个优化技巧
作者:来自 Elastic Gustavo Llermaly 将 Jira 连接到 Elasticsearch 后,我们现在将回顾最佳实践以升级此部署。 在本系列的第一部分中,我们配置了 Jira 连接器并将对象索引到 Elasticsearch 中。在第二部分中,我们将回顾一些最佳实…...

Vulnhub Earth靶机攻击实战(一)
导语 首先需要我们进入到https://vulnhub.com/entry/the-planets-earth,755/地址去获取Earth靶机,然后导入到VMware中,如下所示。 文章目录 导入虚拟机信息收集路径扫描破解密码反射Shell提权总结导入虚拟机 下载并导入虚拟机,如下所示。 信息收集 首先我们通过arp-sc…...

51单片机——DS18B20温度传感器
由于DS18B20数字温度传感器是单总线接口,所以需要使用51单片机的一个IO口模拟单总线时序与DS18B20通信,将检测的环境温度读取出来 1、DS18B20模块电路 传感器接口的单总线管脚接至单片机P3.7IO口上 2、DS18B20介绍 2.1 DS18B20外观实物图 管脚1为GN…...

HTML5+Canvas实现的鼠标跟随自定义发光线条源码
源码介绍 HTML5Canvas实现的鼠标跟随自定义发光线条特效源码非常炫酷,在黑色的背景中,鼠标滑过即产生彩色变换的发光线条效果,且线条周围散发出火花飞射四溅的粒子光点特效。 效果预览 源码如下 <!DOCTYPE html PUBLIC "-//W3C//D…...
关于jwt和security
JSON Web Token(缩写 JWT) 目前最流行、最常见的跨域认证解决方案,前端后端都需要会使用的东西-腾讯云开发者社区-腾讯云 SpringBoot整合Security安全框架、控制权限让我们一起来看看Security吧!我想每个写项目的人,都…...

统计学习算法——逻辑斯谛回归
内容来自B站Up主:动画讲编程https://www.bilibili.com/video/BV1CR4y1L7RC、风中摇曳的小萝卜https://www.bilibili.com/video/BV17r4y137bW,仅为个人学习所用。 极大似然估计 几率、概率与似然 几率是指某个事件发生的可能性与不发生的可能性之比&am…...
算法(蓝桥杯)贪心算法5——删数问题的解题思路
问题描述 给定一个高精度的正整数 n(n≤1000 位),需要删除其中任意 s 个数字,使得剩下的数字按原左右顺序组成一个新的正整数,并且这个新的正整数最小。例如,对于数字 153748,删除 2 个数字后&a…...
数字孪生发展及应用
一、数字孪生的前世今生 (一)萌芽的种子:概念的首次提出 数字孪生的概念最早可追溯到 20 世纪 60 年代,美国国家航空航天局(NASA)在阿波罗计划中,为了训练宇航员和指挥控制人员,使用…...
MYSQL对表的增删改查
表的基本操作 创建表create table [if not exists] <tableName> (<columnName> <columnType> [constraints] [comment] , ...<columnName> <columnType> [constraints] [comment] ) ;删除表drop table [if exists] <tableName> ;…...

左神算法基础提升--4
文章目录 树形dp问题Morris遍历 树形dp问题 求解这个问题需要用到我们在基础班上学到的从节点的左子树和右子树上拿信息的方法。 求最大距离主要分为两种情况:1.当前节点参与最大距离的求解;2.当前节点不参与最大距离的求解; 1.当前节点参与最…...

【docker踩坑记录】
docker踩坑记录 踩坑记录(持续更新中.......)docker images 权限问题 踩坑记录(持续更新中…) docker images 权限问题 permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Head "http://%2Fvar%2Frun%2Fdocker.s…...
CloudberryDB(四)并行执行
要查看CloudberryDB & Greenplum数据库的并行度配置,可以使用以下几种方法: ### 方法一:使用SHOW命令 在Greenplum数据库中,可以使用SHOW命令来查看当前的并行度配置。例如: sql SHOW gp_parallel_degree ; SH…...

LARGE LANGUAGE MODELS ARE HUMAN-LEVEL PROMPT ENGINEERS
题目 大型语言模型是人类级别的提示工程师 论文地址:https://arxiv.org/abs/2211.01910 项目地址:https://github.com/keirp/automatic_prompt_engineer 摘要 通过对自然语言指令进行调节,大语言模型 (LLM) 显示了作为通用计算机的令人印象深…...

rabbitmq安装延迟队列
在RabbitMQ中,延迟队列是一种特殊的队列类型。当消息被发送到此类队列后,不会立即投递给消费者,而是会等待预设的一段时间,待延迟期满后才进行投递。这种队列在多种场景下都极具价值,比如可用于处理需要在特定时间触发…...
Kubernetes (K8s) 入门指南
Kubernetes (K8s) 入门指南 什么是Kubernetes? Kubernetes,通常简称为 K8s(因为从 “K” 到 “s” 之间有八个字符),是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。它最初由谷歌设…...
Python 调用 Ollama 库:本地大语言模型使用详解
ollama 是一个用于调用本地大语言模型(Large Language Models,LLMs)的 Python 库,旨在提供简单、高效的 API 接口,以便开发者能够方便地与本地的大语言模型进行交互。以下是关于如何在 Python 中使用 ollama 库的详细介…...

python matplotlib绘图,显示和保存没有标题栏和菜单栏的图像
目录 1. 使用plt.savefig保存无边框图形 2. 显示在屏幕上,并且去掉窗口的标题栏和工具栏 3. 通过配置 matplotlib 的 backend 和使用 Tkinter(或其他图形库) 方法 1:使用 TkAgg 后端,并禁用窗口的工具栏和标题栏 …...
无人机(Unmanned Aerial Vehicle, UAV)路径规划介绍
无人机(Unmanned Aerial Vehicle, UAV)是无人驾驶飞行器的简称。凭借其体积小巧、操作简便、生存能力强等诸多优势,无人机在军事、电力巡检、航空航天与科学研究等诸多领域得到了广泛应用。在执行任务时,无人机可搭载多种传感器设…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

STM32---外部32.768K晶振(LSE)无法起振问题
晶振是否起振主要就检查两个1、晶振与MCU是否兼容;2、晶振的负载电容是否匹配 目录 一、判断晶振与MCU是否兼容 二、判断负载电容是否匹配 1. 晶振负载电容(CL)与匹配电容(CL1、CL2)的关系 2. 如何选择 CL1 和 CL…...
tomcat入门
1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效,稳定,易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...