当前位置: 首页 > 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数据库并进行关键配置修改的全流程。希望为开发环境搭建提供有效参考,生产环境请务必重新审核安全设置!


http://www.kler.cn/a/573389.html

相关文章:

  • (二 十)趣学设计模式 之 迭代器模式!
  • UDP透传程序
  • 【踩坑随笔】`npm list axios echarts`查看npm依赖包报错
  • Redis maven项目 jedis 客户端操作(一)
  • 在https的网站里访问http的静态资源
  • AI数字人源码开发---SaaS化源码部署+PC+小程序一体化
  • 微信小程序投票系统的构建与实现
  • 200W数据去重入库的几种方法及优缺点
  • 云原生 DB 技术将取代K8S为基础云数据库服务-- 2025年云数据库专栏(一)
  • formdata 传list
  • c++ 接口/多态
  • 拉货搬家小程序开发中保障用户隐私和数据安全的方法
  • IntelliJ IDEA集成MarsCode AI
  • CentOS 8.2 更新源
  • 谷歌浏览器插件开发避免跨域以及流式数据输出
  • Oracle常用分析诊断工具(9)——AWR
  • OpenAI 最后一代非推理模型:OpenAI 发布 GPT-4.5预览版
  • 多线程的使用、同步和异步、synchronized、线程安全的单例模式、死锁、解决死锁
  • Windows系统编程(八)线程同步
  • 系统架构设计师—软件工程基础篇—系统分析与设计