oracle报错ora-01691,如何扩大表空间大小

1.目的

  • 解决oracle数据库表结构空间不足,导致客户端或服务端程序无法连接数据库;
  • 知悉 oralce提示ora-01691的查询分析语句及快速解决办法

2.解决办法

查询表结构容量空间以及扩大容量后进行查询验证

sql 复制代码
select b.file_id,b.tablespace_name,b.file_name,b.bytes,(b.bytes-sum(nvl(a.bytes,0))),sum(nvl(a.bytes,0)),sum(nvl(a.bytes,0))/(b.bytes)*100 
from dba_free_space a,dba_data_files b 
where a.file_id=b.file_id 
group by b.tablespace_name,b.file_name,b.file_id,b.bytes 
order by b.tablespace_name

做法1:删除占用大量数据的表资料(特别是图文),设置定时清理机制(特别是图文插入的数据)

做法2:扩大表空间容量,单个最大是32G,以防万一,故本文在上面增加USER01和USER02两个文件,++而下面语句是在再次增加【USER03】及【USER04】:20G+25G=45G++

sql 复制代码
--01 实际数据库的名字,可以按照用户自定义的名字
--02 F:\APP\ADMINISTRATOR\ORADATA 先查实际的目录,放置在同一个目录下
--03 20G或25G 可以自己定义,小于32G即可,目前增加45G
--04 USERS03或USERS04 可以自己定义

ALTER TABLESPACE "USERS" ADD DATAFILE
'F:\APP\ADMINISTRATOR\ORADATA\实际数据库名\USERS03.DBF' SIZE 20G AUTOEXTEND ON NEXT
50M MAXSIZE UNLIMITED;

ALTER TABLESPACE "USERS" ADD DATAFILE
'F:\APP\ADMINISTRATOR\ORADATA\实际数据库名\USERS04.DBF' SIZE 25G AUTOEXTEND ON NEXT
50M MAXSIZE UNLIMITED;

综上:两个做法1+2结合是最佳作业方式哈(* ̄︶ ̄)

相关推荐
jnrjian5 分钟前
Oracle RAC crs stop时force 关闭DB,另一个node会立即进行recover
数据库·oracle
次次皮5 分钟前
Oracle判空踩坑(对比mysql)
数据库·mysql·oracle
严谨的麻辣烫12 分钟前
固定 IP 稳定性如何检测?使用 Python 实现网络连通性与耗时监控
开发语言·数据库·php
牧瀬クリスだ19 分钟前
Redis List实战:从队列到最新列表的高效应用
数据库·redis·list
码智社21 分钟前
Redis生产环境高频踩坑总结(Java后端视角)
java·数据库·redis
江苏汉软27 分钟前
制造企业为什么需要MES
java·数据库·制造·mes系统·mes软件
心.c30 分钟前
从“加个缓存”到稳定上线:把 Redis 放回真实业务里
数据库·redis·ai·1024程序员节
benjormin34 分钟前
MySQL数据库基础
数据库·mysql
znnnk10 小时前
数据库被AI“重写”:2026,从CPU中心走向GPU中心
数据库·人工智能·oracle
微微%10 小时前
mysql的安装和使用
数据库·mysql·mysql8安装