Oracle 数据库 varchar2 从 4000 扩展到 32k

Oracle 数据库 varchar2 从 4000 扩展到 32k

  • [0. 引言](#0. 引言)
  • [1. 扩展 varchar2 支持长度](#1. 扩展 varchar2 支持长度)
  • [2. 测试](#2. 测试)

0. 引言

今天来个项目需求,有1个字段的存储内容大概1万字。

当然其中1个方法是将这个字段的内容切分成几个字段,还有1个方法就是将 varchar2 默认支持 4000 的能力扩展到 32k。

接下来就试一试吧。

1. 扩展 varchar2 支持长度

使用 sysdaba 连接数据库,

复制代码
sqlplus / as sysdba

查看 pdbs,

复制代码
show pdbs;

关闭要扩展的 pdb,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 CLOSE;

以 upgrade 模式 open,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 OPEN UPGRADE;

将 session 切换到要扩展的 pdb,

复制代码
ALTER SESSION SET CONTAINER=ORCLPDB1;

将 PDB 中的 MAX_STRING_SIZE 设置更改为 EXTENDED,

复制代码
ALTER SYSTEM SET MAX_STRING_SIZE=EXTENDED;

在 PDB 中运行 rdbms/admin/utl32k.sql 脚本。您必须以 SYSDBA 身份连接才能运行 utl32k.sql 脚本,

复制代码
@?/rdbms/admin/utl32k.sql

关闭要扩展的 pdb,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 CLOSE;

以正常模式 open,

复制代码
ALTER PLUGGABLE DATABASE ORCLPDB1 OPEN;

2. 测试

执行下面建表语句,如果能够正常执行,说明扩展成功,

复制代码
CREATE TABLE large_text_table (
    large_text_column VARCHAR2(20000)
);

reference: http://www.liberidu.com/blog/2013/12/24/ora-14696-max_string_size-migration-is-incomplete-for-pluggable-database/

相关推荐
L.EscaRC6 分钟前
Redis大Key与内存不足问题深度解析与应对策略
数据库·redis·缓存
雲烟26 分钟前
Qt SQLite在I.mx8上使用问题
数据库·qt·i.mx8
TDengine (老段)1 小时前
TDengine 转换函数 CAST 用户手册
java·大数据·数据库·物联网·时序数据库·tdengine·涛思数据
苦瓜炒蛋挞1 小时前
小迪安全第二十二天-安全开发-PHP应用&数据库操作&留言板功能&第三方插件
数据库·网络安全·php·小迪安全
chushiyunen2 小时前
redis命令 geo(对地理坐标的支持)
数据库·redis·缓存
baivfhpwxf20232 小时前
删除数据表SQL,不是删除数据,是删除表结构
数据库·sql
码界奇点2 小时前
深入解析MySQL6存储过程游标与触发器的实战应用与性能优化
数据库·sql·性能优化·七牛云存储
鸽鸽程序猿2 小时前
【Redis】List类型介绍
数据库·redis·list
帅中的小灰灰2 小时前
C++编程观察者设计模式
数据库·c++·设计模式
2501_941664962 小时前
云计算与边缘计算:新时代数字化转型的双轮驱动
数据库