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

使用Docker搭建Oracle Database 23ai Free并扩展MAX_STRING_SIZE的完整指南

使用Docker搭建Oracle Database 23ai Free并扩展MAX_STRING_SIZE的完整指南

    • 前言
    • 环境准备
      • 目录创建
      • 启动Docker容器
    • 数据库配置修改
      • 进入容器启动SQL*Plus
      • PDB操作与字符串扩展设置
      • 配置验证
    • 管理员用户创建
    • 注意事项
    • 总结

前言

本文将详细讲解在Docker环境中配置Oracle Database 23ai Free,并进行扩展字符串长度(MAX_STRING_SIZE=EXTENDED)设置及PDB操作的完整流程。适合作为开发环境搭建的参考手册。

环境准备

目录创建

为数据持久化创建专用目录(权限设置适用于开发环境):

mkdir -p /u01/data/free23ai/
chmod 777 /u01/data/free23ai/  # 生产环境建议设置适当权限

启动Docker容器

运行Oracle Database 23c Free容器:

docker run -d --name oracle-db \-p 1521:1521 \-e ORACLE_PDB=FREEPDB1 \-e ORACLE_PWD=<自定义密码> \-v /u01/data/free23ai/:/opt/oracle/oradata \container-registry.oracle.com/database/free:23.7.0.0-amd64

数据库配置修改

进入容器启动SQL*Plus

docker exec -it oracle-db bash
sqlplus / as sysdba

PDB操作与字符串扩展设置

-- PDB状态确认
SHOW PDBS;-- 以升级模式重新打开PDB
ALTER PLUGGABLE DATABASE FREEPDB1 CLOSE;
ALTER PLUGGABLE DATABASE FREEPDB1 OPEN UPGRADE;-- 切换容器
ALTER SESSION SET CONTAINER=FREEPDB1;-- 扩展字符串长度配置
ALTER SYSTEM SET MAX_STRING_SIZE=EXTENDED;-- 执行变更应用脚本
@?/rdbms/admin/utl32k.sql-- 正常模式重启
ALTER PLUGGABLE DATABASE FREEPDB1 CLOSE;
ALTER PLUGGABLE DATABASE FREEPDB1 OPEN;

配置验证

-- 扩展字符串长度建表测试
CREATE TABLE large_text_table (large_text_column VARCHAR2(20000)
);DROP TABLE large_text_table;

管理员用户创建

-- 授予DBA权限
CREATE USER admin IDENTIFIED BY <密码>;
GRANT DBA TO admin;
GRANT EXECUTE ON CTX_DDL TO admin;  -- 如需使用全文检索功能

注意事项

  1. 必须实施卷挂载实现数据持久化
  2. MAX_STRING_SIZE修改仅限数据库创建初期
  3. 生产环境需重新审核权限设置(777权限仅限开发)
  4. 请设置高强度密码

总结

本文详细讲解了使用Docker搭建Oracle数据库并进行关键配置修改的全流程。希望为开发环境搭建提供有效参考,生产环境请务必重新审核安全设置!

相关文章:

使用Docker搭建Oracle Database 23ai Free并扩展MAX_STRING_SIZE的完整指南

使用Docker搭建Oracle Database 23ai Free并扩展MAX_STRING_SIZE的完整指南 前言环境准备目录创建启动Docker容器 数据库配置修改进入容器启动SQL*PlusPDB操作与字符串扩展设置配置验证 管理员用户创建注意事项总结 前言 本文将详细讲解在Docker环境中配置Oracle Database 23a…...

【UI设计——视频播放界面分享】

视频播放界面设计分享 在本次设计分享中&#xff0c;带来一个视频播放界面的设计作品。 此界面采用了简洁直观的布局。顶部是导航栏&#xff0c;包含主页、播放、搜索框等常见功能&#xff0c;方便用户快速找到所需操作。搜索框旁输入 “萌宠成长记”&#xff0c;体现了对特定内…...

SyntaxError: positional argument follows keyword argument

命令行里面日常练手爬虫不注意遇到的问题&#xff0c;报错说参数位置不正确 修改代码后&#xff0c;运行如下图&#xff1a; 结果&#xff1a; 希望各位也能顺利解决问题&#xff0c;祝你好运&#xff01;...

【JAVA面试题】== 和 equals() 的区别与使用场景

在 Java 面试中&#xff0c; 和 equals() 的区别是一个高频考点。理解它们的底层原理和使用场景&#xff0c;对于掌握 Java 基础知识至关重要。本文将从 基本概念、底层实现 和 实际应用 三个方面&#xff0c;深入解析 和 equals() 的区别。 1. 基本概念 1.1 运算符 作用&a…...

Leetcode 189: 轮转数组

Leetcode 189: 轮转数组 这是一道经典问题&#xff0c;题目要求将一个数组向右轮转 k 个位置&#xff0c;有多种解法可以快速求解&#xff0c;既可以通过额外空间&#xff0c;也可以在 O(1) 的空间复杂度内完成。本题考察数组操作、双指针&#xff0c;以及算法优化能力。 题目…...

使用vue3+element plus 的table自制的穿梭框(支持多列数据)

目录 一、效果图 二、介绍 三、代码区 一、效果图 话不多说&#xff0c;先上图 二、介绍 项目需要&#xff1a;通过穿梭框选择人员信息&#xff0c;可以根据部门、岗位进行筛选&#xff0c;需要显示多列&#xff08;不光显示姓名&#xff0c;还包括人员的一些基础信息&…...

Java【多线程】(2)线程属性与线程安全

目录 1.前言 2.正文 2.1线程的进阶实现 2.2线程的核心属性 2.3线程安全 2.3.1线程安全问题的原因 2.3.2加锁和互斥 2.3.3可重入&#xff08;如何自己实现可重入锁&#xff09; 2.4.4死锁&#xff08;三种情况&#xff09; 2.4.4.1第一种情况 2.4.4.2第二种情况 2.4…...

后端-Java虚拟机

Java虚拟机 Java虚拟机的组成 Java虚拟机的组成由类加载器ClassLoader、运行时数据区域&#xff08;JVM管理的内存&#xff09;和执行引擎&#xff08;即时遍历器、解释器垃圾回收器&#xff09; 类加载器加载class字节码文件中的内容到内存运行时数据区域负责管理jvm使用到…...

vue These dependencies were not found

These dependencies were not found: * vxe-table in ./src/main.js * vxe-table/lib/style.css in ./src/main.js To install them, you can run: npm install --save vxe-table vxe-table/lib/style.css 解决&#xff1a; nodejs执行以下语句 npm install --save vxe-t…...

Yak 在 AI 浪潮中应该如何存活?

MCP 是 Claude 发起的一个协议&#xff0c;在2024年10月左右发布&#xff0c;在2025年2月开始逐步有大批量的 AI 应用体开始支持这个协议。这个协议目的是让 AI 同时可以感知有什么工具可以用&#xff0c;如果要调用这些工具的话&#xff0c;应该是用什么样的方式。 这个 MCP 协…...

AI是否能真正理解人类情感?从语音助手到情感机器人

引言&#xff1a;AI与情感的交集 在过去的几十年里&#xff0c;人工智能&#xff08;AI&#xff09;的发展速度令人惊叹&#xff0c;从简单的语音识别到如今的深度学习和情感计算&#xff0c;AI已经深入到我们生活的方方面面。尤其是在语音助手和情感机器人领域&#xff0c;AI不…...

大语言模型学习--本地部署DeepSeek

本地部署一个DeepSeek大语言模型 研究学习一下。 本地快速部署大模型的一个工具 先根据操作系统版本下载Ollama客户端 1.Ollama安装 ollama是一个开源的大型语言模型&#xff08;LLM&#xff09;本地化部署与管理工具&#xff0c;旨在简化在本地计算机上运行和管理大语言模型…...

linux上面安装 向量数据库 mlivus和 可视化面板Attu

1. 确保docker(docker 19.0以上即可) 和 docker-compose&#xff08;V2.2.2以上&#xff09; 都已安装 2. 创建milvus工作目录 # 新建一个名为milvus的目录用于存放数据 目录名称可以自定义 mkdir milvus# 进入到新建的目录 cd milvus 3. 下载并编辑docker-compose.yml 在下载…...

虚拟机ip设置

打开上次安装的虚拟机&#xff0c;左上角编辑/虚拟网络编辑器 改地址 地址要看自己电脑情况配置&#xff0c;我这是学校电脑 都是配一样的 然后改虚拟网卡 改和刚刚一样的 是改ipv4 然后启动虚拟机 输入vi /etc/sysconfig/network-scripts/ifcfg-ens33 使用vi编辑器修改其中…...

用工厂函数简化redis配置

工厂函数&#xff08;Factory Function&#xff09;不同于构造函数&#xff0c;工厂函数就是一个普通函数&#xff0c;通常用于创建对象或实例。它的核心思想是通过一个函数来封装对象的创建逻辑&#xff0c;而不是直接使用类的构造函数。工厂函数可以根据输入参数动态地决定创…...

类和对象-继承-C++

1.定义 面向对象的三大特征之一&#xff0c;为了减少重复的代码 2.语法 class 子类 &#xff1a;继承方式 父类 &#xff08;子类也叫派生类&#xff0c;父类也称为基类&#xff09; 例&#xff1a;class age&#xff1a;public person&#xff1b; #include<iostrea…...

使用Maven搭建Spring Boot框架

文章目录 前言1.环境准备2.创建SpringBoot项目3.配置Maven3.1 pom.xml文件3.2 添加其他依赖 4. 编写代码4.1 启动类4.2 控制器4.3 配置文件 5.运行项目6.打包与部署6.1 打包6.2 运行JAR文件 7.总结 前言 Spring Boot 是一个用于快速构建 Spring 应用程序的框架&#xff0c;它简…...

RockyLinux 为 k8s 集群做准备

1.准备VM 镜像 开启虚拟机 选择安装 Rocky linux 9.5 软件选择最小安装就可以了 在 rocky 9 以后版本中 他全部 采用 network manager 去替换老的 network 去实现网络的管理 1.网卡配置 cat /etc/NetworkManager/system-connections/ens160.nmconnection 我们配置了两块网…...

安卓基础组件Looper - 02 native层面的剖析

文章目录 native使用使用总结创建Looper构造函数创建(不推荐)使用举例源代码 Looper::prepare 获取Looper可忽略初始化Looper主动休眠 pollAll主动唤醒 wake 发送消息 sendMessage轮询消息 native使用 Android Native Looper 机制 - 掘金 (juejin.cn) /system/core/libutils/…...

用大白话解释搜索引擎Elasticsearch是什么,有什么用,怎么用

Elasticsearch是什么&#xff1f; Elasticsearch&#xff08;简称ES&#xff09;就像一个“超级智能的图书馆管理系统”&#xff0c;专门帮你从海量数据中快速找到想要的信息。它底层基于倒排索引技术&#xff08;类似书籍的目录页&#xff09;&#xff0c;能秒级搜索和分析万…...

机器学习的三个基本要素

机器学习的基本要素包括模型、学习准则&#xff08;策略&#xff09;和优化算法三个部分。机器学习方法之间的不同&#xff0c;主要来自其模型、学习准则&#xff08;策略&#xff09;、优化算法的不同。 模型 机器学习首要考虑的问题是学习什么样的模型&#xff08;Model&am…...

二十三种设计模式

2 工厂方法模式 工厂模式&#xff08;Factory Pattern&#xff09;是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式。 在工厂模式中&#xff0c;我们在创建对象时不会对客户端暴露创建逻辑&#xff0c;并且是通…...

Spring Boot 异步编程深入剖析

Spring Boot 异步编程深入剖析 1. 异步方法的使用 原理深度解析 Spring Boot 的异步方法基于 Spring 的 AOP&#xff08;面向切面编程&#xff09;实现。当在方法上添加 Async 注解时&#xff0c;Spring 会为该方法所在的类创建一个代理对象。当调用该异步方法时&#xff0c…...

SqlSugar 语法糖推荐方式

//方式1&#xff1a;var dd _repository._Db.Queryable<ConfigAggregateRoot, UserRoleEntity>((o, p) > o.Id p.Id).Select((o, p) > new{o.Id,o.Remark,p.RoleId,});//方式2&#xff1a;不推荐使用&#xff0c;建议优先使用 Lambda 表达式&#xff0c;因为它更…...

SQL 全面指南:从基础语法到高级查询与权限控制

SQL&#xff1a;全称 Structured Query Language&#xff0c;结构化查询语言。操作关系型数据库的编程语言&#xff0c;定义了一套操作关系型数据库统一标准 。 一、SQL通用语法 在学习具体的SQL语句之前&#xff0c;先来了解一下SQL语言的同于语法。 1). SQL语句可以单行或多…...

Spring Cloud Gateway 网关的使用

在之前的学习中&#xff0c;所有的微服务接口都是对外开放的&#xff0c;这就意味着用户可以直接访问&#xff0c;为了保证对外服务的安全性&#xff0c;服务端实现的微服务接口都带有一定的权限校验机制&#xff0c;但是由于使用了微服务&#xff0c;就需要每一个服务都进行一…...

【Spring Cloud Alibaba】基于Spring Boot 3.x 搭建教程

目录 前言一、开发环境二、简介 1.主要功能2.组件 三、搭建过程 1 - 主体工程搭建2 - 服务注册与发现组件 —— Nacos的安装3 - 服务注册与发现 —— 服务提供者4 - 服务注册与发现 —— 服务消费者5 - 服务配置中心6 - OpenFeign服务接口调用7 - OpenFeign高级特性8 - Spring…...

JavaWeb-jdk17安装

下载jdk17 地址&#xff1a;https://www.oracle.com/java/technologies/downloads/#jdk17-windows 安装jdk 配置环境变量 右键点击我的电脑>属性>高级系统设置>环境变量 在系统变量Path变量中添加 测试 java -version javac -version...

docker关闭mysql端口映射的使用

需求 项目中的数据库为mysql&#xff0c;如果将端口映射到宿主机上&#xff0c;容易被工具扫描出&#xff0c;且随着国产化的进程推进&#xff0c;mysql将不被允许。为了提高安全性与满足项目需求&#xff0c;这里采用隐藏mysql端口方式&#xff0c;不映射宿主机端口&#xff…...

【银河麒麟高级服务器操作系统】服务器测试业务耗时问题分析及处理全流程分享

更多银河麒麟操作系统产品及技术讨论&#xff0c;欢迎加入银河麒麟操作系统官方论坛 https://forum.kylinos.cn 了解更多银河麒麟操作系统全新产品&#xff0c;请点击访问 麒麟软件产品专区&#xff1a;https://product.kylinos.cn 开发者专区&#xff1a;https://developer…...