Oracle 表空间扩容步骤
解决oracle表空间无自动扩容导致表空间爆满影响数据入库问题
在扩容之前,先看一下服务器空间是否充足
执行命令查看服务器内存使用情况
df -h
sqlplus命令 连接oracle数据库
sqlplus / as sysdba
下面这个命令是调整显示长宽
set linesize 300;
查看表空间使用情况命令
select a.tablespace_name, a.bytes / 1024 / 1024 "sum MB", (a.bytes - b.bytes) / 1024 / 1024 "used MB", b.bytes / 1024 / 1024 "free MB", round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "used%" from (select tablespace_name, sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name, sum(bytes) bytes, max(bytes) largest from dba_free_space group by tablespace_name) b where a.tablespace_name = b.tablespace_name order by ((a.bytes - b.bytes) / a.bytes) desc;
查看表空间文件路径命令(ps:INDX表示表空间名称,根据以上查看表空间使用情况命令执行后得出)
select file_name from dba_data_Files where tablespace_name='INDX';
执行后的样子
/xxx/oracle/oracle11g/data/prod/INDX01.dbf
/xxx/oracle/oracle11g/data/prod/INDX02.dbf
对表空间进行扩容命令(ps:创建表空间名称不可与已经存在的表空间名称重复)
INDX为表空间名称
/xxx/oracle/oracle11g/data/prod/INDX03.dbf为你服务器存放表空间的绝对路径
5g为需要扩容空间的大小
alter tablespace INDX add datafile '/xxx/oracle/oracle11g/data/prod/INDX03.dbf' size 5g;
删除表空间文件,但删除后,服务器内存释放,不过不是立即释放,删除的表空间也是空的表空间
INDX为表空间名称
/xxx/oracle/oracle11g/data/prod/INDX03.dbf为你服务器存放表空间的绝对路径
alter tablespace INDX drop datafile '/xxx/oracle/oracle11g/data/prod/INDX2.dbf';
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?