oracle 表空间不够处理
1、查询表空间情况:
select b.file_id 文件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
2、新增表空间文件
alter tablespace ehrds add datafile '/data/oracle/ehrds/ehrds1.dbf' size 32m autoextend on next 32m maxsize unlimited
注意,
1. 路径/data/oracle/ehrds/ 应跟查出来的表空间路径对应
2. ehrds1 根据实际情况命名,不要重复
3. 数据库删除用户,删除表空间,释放磁盘文件
--锁定用户 alter user EHRDS2020 account lock; --查看用户使用的线程 select saddr,sid,serial#,paddr,username,status from v$session where username ='EHRDS2020' --干掉这个线程 alter system kill session '1266,25020'; --删除用户 drop user EHRDS2020 cascade; --删除表空间 drop tablespace EHRDS2020 including contents and datafiles cascade constraint; --重启数据库,如果不重启,变空间文件还被使用,磁盘不会释放 shutdown abort startup