一个Oracle Application Container的示例

news/2025/2/14 3:23:10/

本例基本涵盖了Oracle Multitenant功能中application container的以下内容:

  • 创建application container/root
  • 创建application PDB
  • 创建application SEED
  • 在application root中安装application
  • 在application root中升级application
  • 同步application

整个过程如下
创建application container/root

create pluggable database app1_root as application container
admin user admin identified by Welcome1
roles=(connect);alter session set container=app1_root;alter pluggable database open;

创建两个application PDB:

create pluggable database app1_pdb1 
admin user admin identified by Welcome1
roles=(connect);alter pluggable database app1_pdb1 open;create pluggable database app1_pdb2 
admin user admin identified by Welcome1
roles=(connect);alter pluggable database app1_pdb2 open;

创建application SEED:

create pluggable database as seed 
admin user admin identified by Welcome1;alter pluggable database app1_root$seed open;
alter pluggable database app1_root$seed close immediate;
alter pluggable database app1_root$seed open read only;

安装application,版本1.0:

alter session set container=app1_root;
alter pluggable database application APP1_USER_APP begin install '1.0';
create user user1 identified by Welcome1 container=all;
alter pluggable database application APP1_USER_APP end install '1.0';

两个application PDB与application root同步应用:

alter session set container=app1_pdb1;
alter pluggable database application APP1_USER_APP sync;
alter session set container=app1_pdb2;
alter pluggable database application APP1_USER_APP sync;

升级应用到2.0:

alter session set container=app1_root;
alter pluggable database application APP1_USER_APP begin upgrade '1.0' to '2.0';
grant create session to user1;
alter pluggable database application APP1_USER_APP end upgrade to '2.0';

其中一个application PDB与application root同步应用:

alter session set container=app1_pdb1;
alter pluggable database application APP1_USER_APP sync;

测试:

SQL> connect user1/Welcome1@//localhost/app1_root
Connected.
SQL> connect user1/Welcome1@//localhost/app1_pdb1
Connected.
SQL> connect user1/Welcome1@//localhost/app1_pdb2
ERROR:
ORA-01045: user USER1 lacks CREATE SESSION privilege; logon denied

可以看到,只有同步了应用的PDB具有连接权限。

参考

  • Oracle Multitenant Application Containers – Part XI Common Application Users
  • About Application Container Administration

http://www.ppmy.cn/news/1264295.html

相关文章

Nmap脚本的应用场景

网络安全检测和漏洞扫描 Nmap脚本是一种强大的工具,可以用于网络安全检测和漏洞扫描。在渗透测试工程师的角度下,本文将详细阐述Nmap脚本的应用场景,以及如何使用Nmap脚本进行网络安全检测和漏洞扫描。 一、Nmap脚本的应用场景 Nmap脚本在渗…

【NodeJs】UniSMS 实现短信验证码

承接上文 ,上次用的是 短信宝平台 认证已经通过 后续又新增要求 平台相当麻烦! 短信宝实现短信发送要求: 1.平台绑定手机号 必须和 营业执照法人一致 2.平台个人实名认证 必须和 营业执照法人一致 3.平台需要上传营业执照 4.平台需要上…

Hazel引擎学习(十二)

我自己维护引擎的github地址在这里,里面加了不少注释,有需要的可以看看 参考视频链接在这里 Scene类重构 参考:《InsideUE4》GamePlay架构(二)Level和World 目前我的Scene类基本只是给entt的封装,提供了…

排序:挖坑快排前后指针快排

目录 挖坑快排: 代码实现: 代码分析: 前后指针快排: ​编辑动画分析: 代码分析: 代码演示: 快排的优化:三数取一 挖坑快排: 挖坑法,顾名思义&am…

Java获取本地IP和mac地址

经常在项目中遇到获取本地IP和mac的需求,下面给一个以java编写的例子,代码如下: import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.net.UnknownHostException;public class N…

未用的引脚如何处理?--持续更新中

前言: 随着集成电路规模的越来越大,如今的大规模芯片都集成了很多功能模块,但是在实际的电路设计中我们又不可能把芯片所有的功能模块(或者说接口)全部用上,因此总会有或多或少的管脚会“用不上”,那这些未用的管脚一般…

安全扫描五项简介

目录 安扫五项 1.代码检测 2.主机基线 nginx合规检查 麒麟基线 3.WEB扫描 4.渗透测试 用户枚举漏洞 漏洞描述 修复建议 点击劫持漏洞 漏洞描述 修复建议 XSS漏洞 漏洞描述 修复建议 3.主机漏洞 超高危漏洞 高危漏洞 中危漏洞 低危漏洞 信息漏洞 参考信息…

Spring Boot学习随笔-SpringBoot的引言,回顾传统SSM开发

学习视频:【编程不良人】2021年SpringBoot最新最全教程 第一章、传统SSM开发回顾以及问题 Spring SpringMVC Mybatis SSM 实现一个简单功能 员工添加、查询… SSM项目简单实现 项目 需求分析 —>概要设计 —>(库表设计) —> 详细…