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

相关推荐
IT19956 小时前
Fail2Ban 防护 MySQL 实战|登录失败 3 次,IP 封禁 24 小时
数据库·mysql
夕除6 小时前
redis--IO 多路复用(select + poll)
数据库·sql
lzhdim10 小时前
100条常用SQL语句
数据库·sql·mysql·mybatis
天河归来10 小时前
从原始消息到业务数据:三层数据架构的设计与实践
数据库·数据仓库·架构
数据库小学妹10 小时前
金融数据库成本怎么算?五笔钱加一张TCO表
数据库·金融行业·数据库选型·国产化替代·tco·金融数据库
KaiwuDB11 小时前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式
auspicious航11 小时前
PostgreSQL的备份与恢复
数据库·postgresql
这个DBA有点耶11 小时前
从 MySQL 到时序数据库:我帮朋友做迁移的完整记录
数据库·架构·dba
泡海椒11 小时前
深度解析JQuick-SQL AST到逻辑计划转换机制|分布式SQL原理
数据库·分布式·sql
心静财富之门11 小时前
Python 数据共享四种方案完整实例(同进程 / JSON / Redis / HTTP)
数据库·python·oracle