Oracle 19c补丁升级(Windows)

一、打补丁前备份检查

1、补丁包获取

补丁包:
百度网盘链接:https://pan.baidu.com/s/1vibWR6dQac807z1ovZvfSw?pwd=k7i2
提取码:k7i2

2、备份数据包以及数据库软件

select name from v$datafile;
archive log list;

在这里插入图片描述
我们可以看到数据库还处于非归档模式
非归档模式变成归档模式:

shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
archive log list

在这里插入图片描述

shutdown immediate;

关闭数据库,对开始时查询到的数据文件进行物理备份。

sqlplus -version

在这里插入图片描述

顺便可以查看一下当前sqlplus版本是多少。

3、检查OPatch版本

  • 盘符和家目录根据自己的环境更改
F:\app\database\OPatch\opatch version

在这里插入图片描述
可以看到我当前的OPatch版本,我需要更新一下OPatch

二、补丁升级

1、更新OPatch

更新方法:
将原来的OPatch改名备份为OPatch_old
在这里插入图片描述
解压p6880880_122010_MSWIN-x86-64.zip 将 OPatch 解压至Oracle家目录下
在这里插入图片描述
在这里插入图片描述

重新检查版本:

F:\app\database\OPatch\opatch version

在这里插入图片描述

更新成功,此时OPatch已经被更新为12.2.0.1.41版本

2、关闭监听以及服务

lsnrctl stop
lsnrctl status

这里直接通过cmd方式进入控制面板会显示权限不足
我们找到C:\Windows\System32这根个位置下的cmd,选择以管理员身份运行
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、补丁升级过程

将下载的补丁p35962832_190000_MSWIN-x86-64.zip进行解压,并在补丁根目录下执行 opatch apply命令进行补丁安装
在这里插入图片描述
在这里插入图片描述
解压完成,然后我们配置Oracle环境变量
在这里插入图片描述
接下来开始打补丁

  • 注意,这里也要用管理员启动cmd,否则会出现无法锁定主产品清单问题。
F:                                                          

cd F:\p35962832_190000_MSWIN-x86-64\35962832                                                     

set ORACLE_HOME=F:\app\database       

%ORACLE_HOME%\OPatch\opatch apply      

在这里插入图片描述
安装过程
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
安装完成
在这里插入图片描述
查看补丁安装结果:

%ORACLE_HOME%\OPatch\opatch lsinventory

在这里插入图片描述
再次查看sqlplus版本

sqlplus -version

在这里插入图片描述
sqlplus升级成功

4、启动监听以及服务

打开服务:
在这里插入图片描述
启动最终结果:
在这里插入图片描述

启动监听:

lsnrctl start
lsnrctl status

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

三、数据库补丁应用

在这里插入图片描述

  • 如果没有启动的话需要先启动一下数据库
sqlplus / as sysdba
startup
quit
cd %ORACLE_HOME%/OPatch
datapatch -verbose

在这里插入图片描述
到这里很慢会卡一会,耐心等待
在这里插入图片描述

  • 查看数据库版本
sqlplus / as sysdba

column product format A30
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;

在这里插入图片描述
OK升级成功。在这里插入图片描述

<think>嗯,用户想了解Java中System.getProperty的使用方法和示例。首先,我需要回忆这个方法的基本作用。System.getProperty是用于获取系统属性的,比如操作系统信息、Java版本等。用户可能想快速掌握如何调用这个方法,并获取常见的属性值。 接下来,我应该整理一些常用的属性键,比如os.name、java.version、user.dir等,这些都是常见的示例。同时,用户可能需要知道如何列出所有可用的系统属性,这时候可以用System.getProperties()方法返回Properties对象,然后遍历输出。 然后,用户可能有实际应用的需求,比如根据不同的操作系统执行不同的逻辑,这时候需要举例说明如何用获取到的os.name进行判断,比如判断是否Windows系统。此外,用户可能关心如何正确使用这个方法,比如处理可能的SecurityException,或者属性不存在时返回null的情况,这些注意事项也需要提到。 还要注意引用中的内容,比如引用[1]中的示例,引用[2]中的方法说明,引用[3]中的列出所有属性的例子。需要将这些信息整合到回答中,并正确标注引用来源。同时,按照用户的要求,生成相关问题,帮助用户进一步学习相关的知识,比如参数的意义、安全性问题、与getenv的区别等。 最后,确保回答结构清晰,分点说明基本用法、常用属性示例、获取所有属性、实际应用案例以及注意事项,并且每个部分都给出代码示例,符合用户要求的格式。还要检查LaTeX语法是否正确,行内公式用$...$,独立公式用$$...$$,但在这个问题中可能涉及较少数学公式,但如果有变量或代码中的符号,需要正确使用格式。</think>### Java System.getProperty() 方法详解 #### 一、基本用法 `System.getProperty(String key)` 用于获取指定系统属性值,其语法为: ```java String value = System.getProperty("属性键"); ``` #### 二、常用属性示例 1. **操作系统信息** ```java String osName = System.getProperty("os.name"); // 如 "Windows 10" String osArch = System.getProperty("os.arch"); // 如 "amd64"[^2] ``` 2. **Java环境信息** ```java String javaVersion = System.getProperty("java.version"); // 如 "17.0.1" String javaHome = System.getProperty("java.home"); // JDK安装路径[^1] ``` 3. **用户信息** ```java String userDir = System.getProperty("user.dir"); // 当前工作目录 String userHome = System.getProperty("user.home"); // 用户主目录[^1] ``` #### 三、获取所有系统属性 使用 `System.getProperties()` 遍历全部属性: ```java Properties prop = System.getProperties(); prop.forEach((k, v) -> System.out.println(k + " => " + v));[^3] ``` #### 四、实际应用案例 **场景:跨平台路径处理** ```java String os = System.getProperty("os.name").toLowerCase(); if (os.contains("win")) { System.out.println("当前是Windows系统,使用反斜杠路径"); } else { System.out.println("当前是Linux/Mac系统,使用正斜杠路径"); } ``` #### 五、注意事项 1. **安全性** 访问某些属性(如 `java.class.path`)可能需要安全管理器授权,否则会抛出 `SecurityException`[^2] 2. **默认值设置** 可指定属性不存在时的默认返回值: ```java String unknownProp = System.getProperty("undefined.key", "默认值"); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会编程的喵星人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值