ora-01659、ORA-32773 增大表空间

ora-01659 无法分配超出23的minextents(在表空间 users中)

是用户表空间不够导致

 

增大表空间

-- step1 查看Oracle表空间的使用情况:
select dbf.tablespace_name,
       dbf.totalspace "总量(M)",
       dbf.totalblocks as 总块数,
       dfs.freespace "剩余总量(M)",
       dfs.freeblocks "剩余块数",
       (dfs.freespace / dbf.totalspace) * 100 "空闲比例"
  from (select t.tablespace_name,
               sum(t.bytes) / 1024 / 1024 totalspace,
               sum(t.blocks) totalblocks
          from dba_data_files t
         group by t.tablespace_name) dbf,
       (select tt.tablespace_name,
               sum(tt.bytes) / 1024 / 1024 freespace,
               sum(tt.blocks) freeblocks
          from dba_free_space tt
         group by tt.tablespace_name) dfs
 where trim(dbf.tablespace_name) = trim(dfs.tablespace_name)

注意:
1、表空间尽量让free百分比保持在10%以上,如果低于10%就增加datafile或者resizedatafile,一般数据文件不要超过2G

 

-- step2 找到需要扩展空间的表空间,查看其数据文件路径:
select * from dba_data_files t where t.tablespace_name = 'USERS'

 

-- step3 增加表空间大小
  --A 设置表空间自动增长
ALTER TABLESPACE USERS AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED
  --B 若A报错“ORA-32773: 不支持对小文件表空间 SJPT 的操作” 则执行以下sql (B1或B2择其一)
--B1 增大表空间
alter database datafile 'd:\oradata\ALS6\USER2.dbf' resize 2048M
--B2 增加数据文件
alter tablespace USERS add datafile 'd:\oradata\ALS6\USER2.dbf' size 1024m reuse autoextend on next 512m
  --C 设置表空间数据文件自动扩展
alter database datafile 'd:\oradata\ALS6\USER2.dbf' autoextend on;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值