当前位置: 首页 > news >正文

被环境变量虐过一遍获得的启示

Oracle数据库环境存在两个数据库版本12C及19C,在执行一些操作时需要设置对应版本的环境变量
计划登录12C环境,于是按如下方式设置环境变量

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_HOME/product/12.2.0/dbhome_1
export ORACLE_SID=db12c

可是通过sqlplus登陆后却显示19C版本信息
针对这个问题,最开始的方式是在root中修改bash_profile文件,然后登录到oracle用户,很是麻烦
后面一直寻找更简单的方式,通过which查看sqlplus使用的是哪个

which sqlplus
/u01/app/oracle/product/19.3.0/dbhome_1/bin/sqlplus

此时考虑which命令是根据什么寻找到这个sqlplus的
通过查阅资料获取如下信息

which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。

查看当前PATH信息

echo $PATH
/opt/java/jdk1.8.0_231/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/u03/app/oracle/product/19.3.0/dbhome_1/bin/:/usr/local/python3/bin:/root/bin:/u02/app/oracle/product/12.2.0/dbhome_1/bin/:

里面有两个Oracle的路径,第一个是19C,第二个是12C
这说明which在查找到19C的环境变量后就直接使用了,没有再往后找,那操作系统也应该是这个思路,索性我直接修改PATH的信息

export PATH=/opt/java/jdk1.8.0_231/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin:/root/bin:
export ORACLE_BASE=/u02/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1/bin/
export ORACLE_SID=db12c
export PATH=$PATH:$ORACLE_HOMME/bin:.

顺利通过测试
再尝试一次19C

export PATH=/opt/java/jdk1.8.0_231/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin:/root/bin:
export ORACLE_BASE=/u03/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1/bin/
export ORACLE_SID=db19c
export PATH=$PATH:$ORACLE_HOMME/bin:.

通过测试
将这两个环境变量写入文件,直接调用

vim .bash_profile_12C
export PATH=/opt/java/jdk1.8.0_231/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin:/root/bin:
export ORACLE_BASE=/u02/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/12.2.0/dbhome_1/bin/
export ORACLE_SID=db12c
export PATH=$PATH:$ORACLE_HOMME/bin:.vim .bash_profile_19C
export PATH=/opt/java/jdk1.8.0_231/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/python3/bin:/root/bin:
export ORACLE_BASE=/u03/app/oracle/
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1/bin/
export ORACLE_SID=db19c
export PATH=$PATH:$ORACLE_HOMME/bin:.

直接调用即可,长舒一口气,不知道大家还有没有更好的办法

相关文章:

被环境变量虐过一遍获得的启示

Oracle数据库环境存在两个数据库版本12C及19C,在执行一些操作时需要设置对应版本的环境变量 计划登录12C环境,于是按如下方式设置环境变量 export ORACLE_BASE/u01/app/oracle export ORACLE_HOME$ORACLE_HOME/product/12.2.0/dbhome_1 export ORACLE_S…...

关于Hbase的一些问题

HBase 1. RowKey如何设计,设计不好会产生什么后果 唯一原则:在设计上要保持RowKey的唯一性。 因为HBase中的数据是以KV的格式来存储的,所以如果向同一张表中插入RowKey相同的数据,旧的数据会被覆盖掉。 长度原则:建…...

level=warning msg=“failed to retrieve runc version: signal: segmentation fault“

安装docker启动后,发现里面没有runc版本信息 目前看是少了runc组件 那我们安装runc https://github.com/opencontainers/runc/releases/download/v1.1.10/runc.amd64 [rootlocalhost ~]# mv runc.amd64 /usr/bin/runc mv:是否覆盖"/usr/bin/runc&q…...

电力工作记录仪、智能安全帽、智能布控球助力智能电网建设

电力行业的建设和发展是国家经济发展的重要支撑,而智能电网作为电力系统的重要组成部分,它的安全高效运行关乎到整个电力系统乃至民生的稳定和安全。为了加快国家经济的发展以及满足人们对电力的需求和用电可靠性的要求,国家早在十二规划中就…...

【CSS】各百分比透明度 opacity 对应的 16 进制颜色值(例如:#FFFFFF80)

文章目录 使用:6位颜色值2位透明度值 color: #000000D4; /* 等价于 */ color: #000000; opacity : 0.83; /* 等价于 */ color: #000000; opacity : 83%; 对照表(0:完全透明,1:不透明) 透明度值百分百值十…...

有依次对应关系的数组X、Y、Z,如何排序其中一个X数组,使得另外的数组还与排序完成后的数组相对应(C语言实现)

1. 目的 有依次对应关系的数组X、Y、Z,排序其中一个X数组,使得另外的数组还与排序完成后的数组相对应,并打印出排序完成后的X、Y、Z数组。 2. 具体实现 以下面的这个对应关系为例,进行相应编程实现。 X [3.7,7.7,-6.6,1.5,-4.5…...

Mysql之聚合函数

Mysql之聚合函数 什么是聚合函数常见的聚合函数GROUP BYWITH ROLLUPHAVINGHAVING与WHERE的对比 总结SQL底层原理 什么是聚合函数 对一组数据进行汇总的函数,但是还是返回一个结果 聚合函数也叫聚集,分组函数 常见的聚合函数 1.AVG(): 求平均值 2.SUM() :…...

Flutter笔记:拖拽手势

Flutter笔记 拖拽手势 作者:李俊才 (jcLee95):https://blog.csdn.net/qq_28550263 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/134485123 目 录 1. 概述2. 垂直拖…...

软件运维面试题

文章目录 面试题如销售签有一外地客户,要求实施人员在客户现场一周内完成所有项目实施,而标准实施一般为期一个月,针对以上情况实施人员应该如何应对?答案 当你觉得工作的付出和你的收入不成正比的时候你会怎么做?答案 在你进行实…...

代码随想录算法训练营第23期day53|1143.最长公共子序列、1035.不相交的线、53. 最大子序和

目录 一、1143.最长公共子序列 二、1035.不相交的线 三、53. 最大子序和 一、1143.最长公共子序列 力扣题目链接 class Solution { public:int longestCommonSubsequence(string text1, string text2) {vector<vector<int>> dp(text1.size() 1, vector<int…...

MySQL 的执行原理(五)

5.6 再深入查询优化 5.6.1. 全局考虑性能优化 5.6.3.1. 为什么查询速度会慢 在尝试编写快速的查询之前&#xff0c;需要清楚一点&#xff0c;真正重要是响应时间。如果把查询看作是一个任务&#xff0c;那么它由一系列子任务组成&#xff0c;每个子任务都会消耗一定的时间。…...

如何快速将txt类型的日志文件转换为excel表格并进行数据分析报表统计图(如:饼图、折线图、柱状图)?

打开excel创建空白文档 选择一个txt文件 一动下面箭头↑竖线&#xff0c;可以拖拽左右调整要判断转换为一列的数据宽度 根据情况设置不同列的数据格式&#xff08;每一列可以点击&#xff09;&#xff0c;设置好后点击【完成】 设置单元格数据格式 手动插入第一行为每列数据的…...

内网穿透的应用-如何在Docker中部署MinIO服务并结合内网穿透实现公网访问本地管理界面

文章目录 前言1. Docker 部署MinIO2. 本地访问MinIO3. Linux安装Cpolar4. 配置MinIO公网地址5. 远程访问MinIO管理界面6. 固定MinIO公网地址 前言 MinIO是一个开源的对象存储服务器&#xff0c;可以在各种环境中运行&#xff0c;例如本地、Docker容器、Kubernetes集群等。它兼…...

关于Unity自带的保存简单且持久化数据PlayerPrefs类的使用

Unity的PlayerPrefs类是用于在游戏中保存和读取玩家偏好设置或其他简单数据的工具。它提供了一种简单的键值对存储方式&#xff0c;可以在游戏中持久化保存数据。 PlayerPrefs提供了三种类型的数据的处理&#xff1a;分别是int,float,string。 具体使用方法如下&#xff1a; …...

力扣贪心——跳跃游戏I和II

1 跳跃游戏 利用边界进行判断&#xff0c;核心就是判定边界&#xff0c;边界内所有步数一定是最小的&#xff0c;然后在这个边界里找能到达的最远地方。 1.1 跳跃游戏I class Solution {public boolean canJump(int[] nums) {int len nums.length;int maxDistance 0;int te…...

【SA8295P 源码分析 (三)】132 - GMSL2 协议分析 之 GPIO/SPI/I2C/UART 等通迅控制协议带宽消耗计算

【SA8295P 源码分析】132 - GMSL2 协议分析 之 GPIO/SPI/I2C/UART 等通迅控制协议带宽消耗计算 一、GPIO 透传带宽消耗计算二、SPI 通迅带宽消耗计算三、I2C 通迅带宽消耗计算四、UART 通迅带宽消耗计算系列文章汇总见:《【SA8295P 源码分析 (三)】Camera 模块 文章链接汇总 -…...

毕业论文GPT说:

作为一个计算机专业的大四学生&#xff0c;学过英语&#xff0c;微积分&#xff0c;离散数学&#xff0c;概率论与数理统计&#xff0c;线性代数&#xff0c;具体数学&#xff0c;数论&#xff0c;C语言&#xff0c;汇编语言&#xff0c;在网格机算、数据科学、机器学习与智能工…...

Week-T10 数据增强

文章目录 一、准备环境和数据1.环境2. 数据 二、数据增强&#xff08;增加数据集中样本的多样性&#xff09;三、将增强后的数据添加到模型中四、开始训练五、自定义增强函数六、一些增强函数 &#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f…...

史上最全!PMP实用应试技巧汇总!

PMP&#xff08;Project Management Professional 项目管理专业人士资格认证&#xff0c;由全球最大的项目管理专业组织机构——美国PMI发起&#xff0c;目的是用来严格评估管理项目人员知识技能是否具有高品质的资格认证考试。给大家带来关于PMP考试的实用应试技巧。 PMP解题…...

037、目标检测-SSD实现

之——实现 目录 之——简单实现 杂谈 正文 1.类别预测层 2.边界框预测 3.多尺度输出联结做预测&#xff08;提高预测效率&#xff09; 4.多尺度实现 5.基本网络块 6.完整模型 杂谈 原理查看&#xff1a;037、目标检测-算法速览-CSDN博客 正文 1.类别预测层 类别预测…...

Ceph 对象存储深度解析系列 第二部分:RGW 数据路径、分片和自动化

新钛云服已累计为您分享896篇技术干货简介在本深度解析的第一部分中&#xff0c;我们剖析了 Ceph RGW 内部的高性能请求路径。我们涵盖了其无状态前端、基础 RADOS 存储池以及关键的桶索引&#xff0c;揭示了动态分片如何使单个桶内的对象列表实现几乎无限的可扩展性。我们确立…...

CANN/ge ES代码生成器工具

ES (Eager Style) Generator 【免费下载链接】ge GE&#xff08;Graph Engine&#xff09;是面向昇腾的图编译器和执行器&#xff0c;提供了计算图优化、多流并行、内存复用和模型下沉等技术手段&#xff0c;加速模型执行效率&#xff0c;减少模型内存占用。 GE 提供对 PyTorch…...

群论与张量积:构建等变神经网络的核心原理与实践

1. 项目概述&#xff1a;当AI遇见数学的优雅 如果你在深度学习的海洋里游过泳&#xff0c;大概率听过“卷积神经网络&#xff08;CNN&#xff09;在处理图像时具有平移不变性”这种说法。这听起来很酷&#xff0c;但你是否想过&#xff0c;这种“不变性”从何而来&#xff1f;它…...

# 026 Agent 的文件处理:PDF、Excel、图片、音频的解析与生成

一、从一次线上事故说起 去年冬天凌晨两点&#xff0c;我被值班电话吵醒。客户那边一个自动化报表Agent跑崩了&#xff0c;日志里只有一行&#xff1a;MemoryError: cannot fit int into an index-sized integer。查了半天&#xff0c;发现是Agent在处理一个300MB的Excel文件时…...

解决Wireshark安装 无法显示USB接口

密评实施过程中&#xff0c;会使用到Wireshark抓取智能密码钥匙的通信流量&#xff0c;但是某些情况下安装Wireshark之后&#xff0c;无法找到USB的捕获接口&#xff0c;重启Wireshark和电脑后还是无法正常显示。如下图。解决办法如下&#xff1a;将“USBPcapCMD.exe”复制到“…...

Tomato-Novel-Downloader:智能小说下载工具的全方位指南

Tomato-Novel-Downloader&#xff1a;智能小说下载工具的全方位指南 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 在数字阅读日益普及的今天&#xff0c;高效获取和管理小说…...

ARM Cortex-A9 MPCore调试架构与扫描测试技术详解

1. ARM Cortex-A9 MPCore调试架构概述在嵌入式系统开发领域&#xff0c;ARM Cortex-A9 MPCore处理器因其出色的性能表现和灵活的调试功能而广受青睐。作为一款多核处理器&#xff0c;其调试系统设计尤为复杂&#xff0c;需要兼顾芯片测试(DFT)和生产验证的双重需求。Cortex-A9的…...

Vrite高级功能揭秘:实时评论、版本历史和冲突解决

Vrite高级功能揭秘&#xff1a;实时评论、版本历史和冲突解决 【免费下载链接】vrite Open-source developer content platform 项目地址: https://gitcode.com/gh_mirrors/vr/vrite Vrite作为一款开源开发者内容平台&#xff0c;不仅提供了基础的内容编辑功能&#xff…...

AC-GAN原理与Keras实现:从零构建条件生成对抗网络

1. 从零开始构建AC-GAN&#xff1a;原理与架构解析在深度学习领域&#xff0c;生成对抗网络&#xff08;GAN&#xff09;已经成为图像生成任务的重要框架。而辅助分类器生成对抗网络&#xff08;AC-GAN&#xff09;作为GAN的重要变体&#xff0c;通过引入类别信息显著提升了生成…...

别再死记公式了!用PyTorch的CrossEntropyLoss搞懂多分类与多标签任务的区别

从原理到实践&#xff1a;PyTorch中CrossEntropyLoss的多分类与多标签任务深度解析 当你第一次在PyTorch中遇到nn.CrossEntropyLoss时&#xff0c;是否曾被它的"多面性"所困惑&#xff1f;这个看似简单的损失函数&#xff0c;在处理单标签多分类&#xff08;如手写数…...