数据库管理-第八十七期 19c OCM之路-第一堂(02)(20230630)

news2025/4/12 1:59:22

第八十六期 19c OCM之路-第一堂(02)

本来计划是昨天写的,但是昨天突发膝盖筋膜炎,去骨科医院做了下治疗,前后两夜几乎无眠。本期内容主要是针对第一堂第四个考点:Manage application containers内容去做的一些分析,由于这个功能用的确实不多,但是整体内容也不算太少,作为一堂的一个考点应该考不了太多内容吧。

考点4:Manage application containers 管理Application容器

  1. 创建一个名为appcdb的application container并完成其seed库创建
create pluggable database appcdb as application container admin user admin identified by oracle file_name_convert=('/pdbseed/','/appcdb/');
alter pluggable database appcdb open;
-- alter pluggable database appcdb save state;

alter session set container=appcdb;
create pluggable database as seed admin user admin identified by oracle file_name_convert=('/pdbseed/','/appcdbseed/');
alter pluggable database appcdb$seed open;
alter session set container=appcdb$seed;
alter pluggable database application all sync;
alter pluggable database close immediate;
alter pluggable database open read only;
-- alter pluggable database appcdb save state;
  1. 在appcdb中通过复制pdbprod1的方式创建一个名为apppdb1的application pdb,并确保能跟随CDB启动。
alter session set container=appcdb;
create pluggable database apppdb1 from pdbprod1 file_name_convert=('/pdbprod1/','/apppdb1/');
alter pluggable database apppdb1 open;
alter session set container=apppdb1;
@ ?/rdbms/admin/pdb_to_apppdb.sql
alter pluggable database close immediate;
alter pluggable database open;
alter pluggable database save state;
  1. 在appcdb中创建一个名为appv的application,初始版本为1.0。1.0执行script01.sql,2.0执行script02.sql,1.2执行script03.sql。
alter session set container=appcdb;
alter pluggable database application appv begin install '1.0';
-- 模拟script01.sql
-- alter session set container=apppdb1;
-- update hr.employees set salary=salary*1.2;
-- commit;
alter session set container=appcdb;
alter pluggable database application appv end install ;

alter session set container=appcdb;
alter pluggable database application appv begin upgrade '1.0' to '1.1';
-- 模拟script02.sql
-- alter session set container=apppdb1;
-- update hr.employees set salary=salary*1.5;
-- commit;
alter session set container=appcdb;
alter pluggable database application appv end upgrade;

alter session set container=appcdb;
alter pluggable database application appv begin upgrade '1.1' to '1.2';
-- 模拟script03.sql
-- alter session set container=apppdb1;
-- update hr.employees set salary=salary*2;
-- commit;
alter session set container=appcdb;
alter pluggable database application appv end upgrade;

在这里插入图片描述
这里执行完成后会出现两个新的PDB,作为不同版本的记录。

  1. 控制appv版本compatibility至1.1版本
alter pluggable database application appv set compatibility version '1.1';

这时候1.0版本将被舍弃。

  1. 其他一些操作:
alter session set container=appcdb;
alter pluggable database application appv begin patch 230629 minimum version '1.1';
alter pluggable database application appv end patch 230629;

alter pluggable database application appv begin uninstall;
alter pluggable database application appv end uninstall;

这些操作还是读题吧,理解的不是太透彻,也希望其他大佬协助一下。

考点5:Network configuration 网络配置

  1. 服务端配置:
    创建一个名称为LSNR2端口为1525的监听,并让PRODCDB自动注册到该监听:
    这里可以使用netca创建监听,也可以通过手动添加配置信息的方式添加:
$ORACLE_HOME/network/admin/listener.ora
LSNR2 =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = host01)(PORT = 1525))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1525))
    )
  )

lsnrctl start LSNR2

注:这里要求HOST使用主机名而不是IP地址。这里建议把所有数据库的静态监听也给做了。

SID_LIST_LISTENER=
  (SID_LIST=
      (SID_DESC=
         (GLOBAL_DBNAME=PRODCDB)
         (SID_NAME=PRODCDB)
         (ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1)
    )
    (SID_LIST=
      (SID_DESC=
         (GLOBAL_DBNAME=pdbprod1)
         (SID_NAME=PRODCDB)
         (ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1)
    )
  ...
  (SID_LIST=
      (SID_DESC=
         (GLOBAL_DBNAME=PROD5)
         (SID_NAME=PROD5)
         (ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1)
    )
  )

lsnrctl reload listener
# 记不住咋办?$ORACLE_HOME/network/admin/samples/listener.ora里面有相关内容,tnsnames同样
prodcdb
sqlplus / as sysdba
alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=host01)(PORT=1525))';
alter system register;
  1. 客户端连接配置:
    这一部分详见大多数上一期的考点1部分就行了。
    使用PROD_S通过LSNR_2共享方式访问至pdbprod1:
$ORACLE_HOME/network/admin/tnsname.ora
PROD_S =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = host01)(PORT = 1525))
    (CONNECT_DATA =
      (SERVER = SHARED)
      (SERVICE_NAME = PRODCDB)
    )
  )

注:这里就可能出现需要通过默认监听(1521)连接到PRODCDB和其PDB中,因此上一步还是完成静态监听操作。

总结

第一堂还剩下少数一些内容。主要是Application Container相关内容比较繁琐,争取下一期更新完第一堂。
老规矩,知道写了些啥。

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

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

相关文章

Spring Boot中的@MessageMapping注解:原理及使用

Spring Boot中的MessageMapping注解:原理及使用 简介 在Web应用程序中,实现实时的双向通信是一项重要的功能。为了实现这种功能,需要使用WebSocket协议。Spring框架提供了Spring WebSocket模块来实现WebSocket通信。Spring Boot是基于Sprin…

《刷题日记03》链表

题目描述力扣https://leetcode.cn/problems/LGjMqU/ 给定一个单链表 L 的头节点 head ,单链表 L 表示为: L0 → L1 → … → Ln-1 → Ln 请将其重新排列后变为: L0 → Ln → L1 → Ln-1 → L2 → Ln-2 → … 不能只是单纯的改变节点内部的值…

实例003 像开始菜单一样漂亮的菜单

实例说明 Windows的开始菜单非常的独特,在菜单的旁边有一条竖着的彩条,彩条中还写着文字。这种独特的菜单能够使程序的界面看起来更加的漂亮。本例中就实现了这种菜单,运行本例弹出“打开菜单”时,就会看到菜单的左边有一个紫色的…

ChatGPT微调系列一:微调 流程

文章目录 前言一、啥叫微调二、为啥要微调三、不是所有模型都可以微调的四、总述微调的基本流程,以及涉及的主要函数,参数1. 安装2. 准备训练数据3. openai.api_key os.getenv() 进行一个说明4. 通过API 调用模型 常用函数5. 微调模型 常用函数6. OpenA…

【论文阅读】Self-supervised Image-specific Prototype Exploration for WSSS

一篇CVPR2022上的论文,用于弱监督分割 论文标题: Self-supervised Image-specific Prototype Exploration for Weakly Supervised Semantic Segmentation 作者信息: 代码地址: https://github.com/chenqi1126/SIPE 论文链接&…

【doxygen】markdown 表格中插入换行与缩进

文章目录 markdown 表格换行markdown 标准换行doxygen 中 markdown 表格换行 markdown 表格缩进 doxygen 中使用 markdown markdown 表格换行 markdown 表格生成 doxygen 时换行与标准的 markdown 语法稍有差异 markdown 标准换行 markdown 中可以使用 html 的换行标签 <…

Python学习之文件操作【基本操作,JSON文件操作】

前言 Python的文件操作是一个非常重要的主题&#xff0c;它可以用来读取&#xff0c;写入和操作各种类型的文件&#xff0c;包括文本文件、图像文件、音频文件等。在这里&#xff0c;我们将讨论一些基本的Python文件操作和JSON文件操作。 Python文件操作 Python提供了多种方…

73、基于51单片机温湿度光照检测控制esp8266无线WiFi app远程监测报警(程序+原理图+PCB源文件+参考论文+开题报告+元器件清单等)

研究目的 现代的生活中&#xff0c;许多情况都对环境的温湿度有比较严格的要求&#xff0c;因此&#xff0c;必须在某些特定环境安装温湿度报警器对环境的温湿度进行监控和调节。为此&#xff0c;本题目选用花卉温室的温湿度调节为背景环境&#xff0c;研究利用集成温湿度传感…

赛效:PDF文件怎么加密

1&#xff1a;在网页上打开并登录91ai工具&#xff0c;在特色功能里点击“PDF加密”。 2&#xff1a;点击上传文件&#xff0c;将本地PDF文件添加上去。 3&#xff1a;文件上传成功后&#xff0c;在文件下方设置密码后点击“开始加密”。 4&#xff1a;加密完成后点击下方下载按…

YOLOv5改进系列(12)——更换Neck之BiFPN

【YOLOv5改进系列】前期回顾: YOLOv5改进系列(0)——重要性能指标与训练结果评价及分析 YOLOv5改进系列(1)——添加SE注意力机制

浅谈安科瑞电力监控系统解决方案 安科瑞 许敏

摘要&#xff1a;随着经济的发展&#xff0c;能源消耗速度正不断加快&#xff0c;因此我国提出了绿色可持续发展战略&#xff0c;要求在发展建设中以节能为主&#xff0c;不断减少资源能耗&#xff0c;而电能便是首要控制内容。如今我国为电能使用&#xff0c;对计量表进行了优…

Web 应用程序综合监控

综合监控是什么意思 模拟用户通过 Web 应用程序的旅程并对其进行监控以检测任何增加延迟的元素的过程被广泛称为综合监控或综合测试。 为什么需要综合监测 为了确保最终用户的无缝体验&#xff0c;综合性能监控势在必行。监视综合事务以帮助您了解用户如何与 Web 应用程序交…

flex布局瀑布流占位两边对齐不对称

.page{display: flex;justify-content: space-between;flex-wrap: wrap; }.page:after {content: ;width: 400px; // 也可以 flex:1}

压缩文件——干货代码分享

1.背景 最近写接口遇到通过FTP服务器发送文件的需求&#xff0c;文件内容需加密并压缩&#xff0c;故记录一下&#xff0c;提供已经测试通过的代码。 2.代码 package com.example.demo.utils;import lombok.extern.slf4j.Slf4j;import java.io.*; import java.util.zip.GZIPOu…

大学智慧课堂系统整理

目录 一、题目类型选择器(非组件库) 1.1、效果展示 1.2、代码展示 二、题目类型选择器(Vant组件库) 2.1、效果展示 2.2、代码展示 一、题目类型选择器(非组件库) 使用vue2&#xff1a;在methods里区分单个点击和多个点击&#xff0c;在view视图区分判断题和选择题。 如下…

正则表达式和BeautifulSoup

文章目录 1、正则表达式介绍2、正则表达式和BeautifulSoup3、获取属性4、Lambda表达式 1、正则表达式介绍 正则表达式是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。它描述了一种字符串匹配的模式&#xff08;pattern&#xff09;&#xff0c;可以用来…

​Nature |HiFi宏基因组助力挖掘海洋“新”微生物组

近期在《Nature》发表的一篇研究论文中&#xff0c;表述了如何在罕见的微生物类群和环境中研究未知的酶和天然产物&#xff0c;研究突出了微生物组学在深入挖掘天然产物合成与酶学机制中的关键作用&#xff0c;对海洋生态、进化、生物技术与天然产物等领域的研究具有重要意义。…

基于Java+Vue前后端分离乐购游戏商城系统设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

制造企业可以通过数字工厂管理系统降低采购成本吗

制造企业可以通过数字工厂管理系统降低采购成本。制造业数字工厂系统是一种基于数字化技术的管理系统&#xff0c;可以帮助企业实现生产过程的数字化管理&#xff0c;提高生产效率和降低生产成本。下面具体介绍数字工厂管理系统如何降低制造企业的采购成本。 一、优化采购计划 …

【两个无穷大的数相加】

两个无穷大的数相加 两个无穷大的数相加&#xff0c;因为int有限,哪怕用long int也不可能够&#xff0c;用string存&#xff0c;用手工算数的方式从右往左一位一位加&#xff0c;满10就进一。这样不管有多长&#xff0c;都能算出结果。 最近在做QT项目&#xff0c;所以用c写的…