记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)

概述

今天告警报system表空间没有自动扩展,检查发现这个数据库的一些数据文件都很小,所以针对数据文件做了一些扩容,下面简单记录下操作过程。


1、目前表空间情况

--查看表空间使用情况 SELECT a.tablespace_name "表空间名", total "表空间大小", free "表空间剩余大小", (total - free) "表空间使用大小", total / (1024 * 1024 * 1024) "表空间大小(G)", free / (1024 * 1024 * 1024) "表空间剩余大小(G)", (total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", round((total - free) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, SUM(bytes) free FROM dba_free_space GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) total FROM dba_data_files GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name; --查看表空间物理文件的名称及大小 SELECT tablespace_name, file_id, file_name, round(bytes / (1024 * 1024 * 1024), 0) total_space_GB FROM dba_data_files ORDER BY tablespace_name;

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(1)

可以看到数据文件基本都是1G、2G,对于生产环境怎么可能够用。

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(2)


2、扩展数据文件

扩展命令如下:

ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/data01.dbf' RESIZE 30g; ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/sysaux01.dbf' RESIZE 10g; ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/system01.dbf' RESIZE 10g; ALTER DATABASE DATAFILE '/u01/app/oracle/oradata/undotbs01.dbf' RESIZE 10g;

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(3)


3、扩展后结果

大概花费了一个小时完成了扩容,扩容后结果如下:

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(4)

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(5)


这里是把数据文件resize更大,如果要调整小一点的话就要慎重了。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

记一次真实的生产数据库数据文件扩容案例(记一次真实的生产数据库数据文件扩容案例)(6)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页