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结合是最佳作业方式哈(* ̄︶ ̄)

相关推荐
AOwhisky4 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
小红卒4 小时前
mysql之udf提权
数据库·mysql·网络安全
Trouvaille ~5 小时前
【Redis篇】Redis 哨兵(Sentinel):高可用自动故障转移
数据库·redis·缓存·中间件·sentinel·高可用·哨兵
qfljg5 小时前
oracle 迁移到postgres
数据库·oracle
六月雨滴5 小时前
Oracle SGA 优化
oracle·dba
giaz14n9X5 小时前
Redis 分布式锁进阶第五十七篇
数据库·redis·分布式
剑神一笑6 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库
Maynor9966 小时前
Codex API 网关迁移与流量优化实战
数据库·oracle
WyCAGy8ij6 小时前
Redis 分布式锁进阶第二篇讲解
数据库·redis·分布式
南极企鹅6 小时前
MySQL的两大支柱:undo Log&redo log
数据库·mysql·oracle