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

Docker - Oracle Database 23ai Free

博文目录

文章目录

  • 说明
  • 命令
  • Navicat
    • SYSTEM
    • PDBADMIN
  • 扩展
    • 公共用户
    • 本地用户


说明

Oracle 官方镜像仓库

Database 23ai Free | Oracle

Docker 官方没有提供 Oracle Database 相关镜像, 但是 Oracle 官方镜像仓库有提供, 打开上面的链接, 选择 Database, 选择合适的版本, 如 enterprise, express 和 free, 这里以 free 为例. Free 分为 FULL 和 LITE 两个版本, 这里以 LITE 为例

Oracle Database Free 有使用限制, 前台进程最多 2 个 CPU, 2 GB RAM 和 12 GB 用户数据(硬盘)

Oracle Database 23ai Free offers the ability to experience Oracle Database, which businesses throughout the world rely on for their mission-critical workloads. The resource limits for Oracle Database Free are up to 2 CPUs for foreground processes, 2 GB of RAM and 12 GB of user data on disk. It is packaged for ease of use and simple download.

数据卷数据卷印射在容器内的路径
oracle/opt/oracle/oradata
容器内的路径说明
/opt/oracle/oradata数据目录
/opt/oracle/scripts/startup数据库启动后要运行的自定义脚本目录

命令

docker run -d --name oracle -p 1521:1521 -e TZ=Asia/Shanghai -e ORACLE_PWD=Mrv587.. -v oracle:/opt/oracle/oradata container-registry.oracle.com/database/free:23.4.0.0-lite
# 查看日志
docker logs oracle
# 跟踪日志
docker logs -f oracle
docker logs --follow oracle
# 查看最后10条日志
docker logs --tail 10 oracle
# 查看最近10分钟的日志
docker logs --since 10m oracle
# 进入容器并执行 bash
docker exec -it oracle bash
# 退出容器
exit# 直接从主机进入客户端
docker exec -it oracle sqlplus sys/Mrv587..@FREE as sysdba
docker exec -it oracle sqlplus system/Mrv587..@FREE
docker exec -it oracle sqlplus pdbadmin/Mrv587..@FREEPDB1# 创建公共用户
# -- 以具有DBA权限的用户连接到数据库
CONNECT sys/password AS SYSDBA;
# -- 切换到根容器
ALTER SESSION SET CONTAINER = CDB$ROOT;
# -- 创建公共用户
CREATE USER C##COMMON_USER IDENTIFIED BY password;
# -- 授予公共用户权限
GRANT DBA TO C##COMMON_USER;# 创建本地用户
# -- 以具有DBA权限的用户连接到数据库
CONNECT sys/password AS SYSDBA;
# -- 切换到目标 PDB,例如 freepdb1
ALTER SESSION SET CONTAINER = freepdb1;
# -- 创建本地用户
CREATE USER LOCAL_USER IDENTIFIED BY password;
# -- 授予本地用户权限
GRANT CONNECT, RESOURCE TO LOCAL_USER;

Navicat

SYSTEM

在这里插入图片描述

PDBADMIN

在这里插入图片描述

扩展

Oracle PDB(Pluggable Database,可插拔数据库)是 Oracle Multitenant 架构的一部分,这一架构在 Oracle 12c 中引入。Multitenant 架构允许一个单独的容器数据库(Container Database,CDB)容纳多个独立的 PDB。每个 PDB 可以被认为是一个完全独立的数据库实例,具有自己的数据文件、系统表空间和用户表空间。

在 Oracle Multitenant 架构中,每个 PDB 都有一个默认的管理账户,通常命名为 PDBADMIN。这个账户类似于单实例 Oracle 数据库中的 SYSTEM 用户,但它的权限范围仅限于 PDB 本身。

在 Oracle 12c 及其后的版本中,引入了多租户架构,支持容器数据库(CDB)和可插拔数据库(PDB)。在这种架构中,用户可以分为公共用户(Common Users)和本地用户(Local Users)。这两种用户类型有不同的特性和用途。

  • 公共用户(Common Users):在整个 CDB 中具有统一身份,必须以 C## 开头,管理范围覆盖所有 PDB,适用于全局性管理和操作。
  • 本地用户(Local Users):仅存在于特定 PDB 中,没有命名规则限制,管理范围仅限各自 PDB,适用于特定应用或业务需求。

公共用户

  • 公共用户是一个在 CDB 的根容器(CDB$ROOT)和所有 PDB 中都存在的用户。这个用户在创建时自动存在于每个 PDB 中。
  • 公共用户的名称必须以 C## 或 c## 开头。例如:C##ADMIN。
  • 公共用户在 CDB 和所有 PDB 中具有统一的身份。创建、修改或删除公共用户时,这些操作会自动应用到 CDB 和所有 PDB。
  • 公共用户通常用于管理和维护整个 CDB。例如,DBA 可能会创建一个公共用户来管理所有 PDB 中的资源或执行全局性操作。

本地用户

  • 本地用户是只存在于特定 PDB 中的用户。每个 PDB 可以有自己的本地用户,这些用户只能在各自的 PDB 中操作。
  • 本地用户的名称没有特殊的命名规则限制,可以是任何合法的 Oracle 用户名(不需要以 C## 开头)。
  • 本地用户只能在创建它的 PDB 中存在和操作。本地用户无法访问其他 PDB,也不能在根容器(CDB$ROOT)中存在。
  • 本地用户通常用于特定应用程序或业务单元,只需要访问和操作一个特定 PDB 中的数据。
http://www.lryc.cn/news/387543.html

相关文章:

  • spring常用方法
  • 虚拟机能装在移动硬盘里吗安全吗 PD虚拟机迁移到移动硬盘的方法
  • 刷算法Leetcode---7(二叉树篇)(前中后序遍历)
  • AliyunOS安装Node.js
  • three.js - MeshPhongMaterial材质(实现玻璃水晶球效果)
  • 笔记本电脑安装CentOS
  • ssh转发功能入门
  • Listary(Windows 文件搜索工具)专业版值得购买吗?
  • 面试突击指南:Java基础面试题2
  • MySQL快速安装(mysql8.0.30区别之前yum安装)
  • 俄罗斯防空系统
  • 文件上传漏洞---Pyload
  • 应用案例 | 如何监测高价值货物在物流运输过程中受到的振动和冲击?全面保障货物安全
  • VMware17安装Ubuntu20版本-保姆级别
  • 初探Xcode工具
  • 小迪安全v2023笔记 1-18
  • RabbitMQ WEB管理端介绍
  • 三阶魔方公式详解及快速解法方法介绍
  • 前端的拖拽和缩放(缩放以鼠标为中心)
  • 【Vue】单向和双向数据绑定
  • HDFS学习
  • Winform使用HttpClient调用WebApi的基本用法
  • python–基础篇–正则表达式–是什么
  • 15 个适用于企业的生成式 AI 用例
  • 若依框架中组件使用教程
  • 秋招力扣刷题——数据流的中位数
  • 51单片机学习——LED功能一系列实现
  • 互联网大厂核心知识总结PDF资料
  • 设计模式-状态模式和策略模式
  • Java NIO Buffer概念