当前位置: 主页 > 数据库

oracle 数据库空间-oracle 10g r2官方文档库

发布时间:2023-02-09 09:39   浏览次数:次   作者:佚名

最近遇到一个比较有意思的问题:测试小伙伴告诉我,在日常重启和维护数据库的过程中,发现数据库宕机了! ! 明明是oracle rac,为什么重启一个node数据库就挂了? ?

有意思的问题,到时候分析一下。 检查 oracle 问题最简单快捷的方法是检查 oracle 警报日志。 分析日志后发现,我的伙伴在扩表空间的时候,把数据文件创建到了本地目录下! 因为oracle rac的数据文件是共享文件,所以需要构建到共享存储中,也就是磁盘组中。 如果将数据文件构建到数据库节点的本地目录下,重启节点,数据文件就会丢失oracle 数据库空间,数据库自然挂掉。 下面介绍扩容oracle rac表空间的步骤:

1.查询需要扩容的表空间。 正常的话,如果表空间使用率超过80%,就需要扩容了。

oracle 10g r2官方文档库_oracle 数据库空间_oracle imp全库导入

选择总计。 表空间名称,

回合(总计 MB,2)作为 Total_MB,

oracle imp全库导入_oracle 数据库空间_oracle 10g r2官方文档库

回合(总计 MB - free.MB,2)作为 Used_MB,

round((1 - free.MB / total.MB) * 100, 2) || '%' 作为 Used_Pct 来自

oracle 10g r2官方文档库_oracle 数据库空间_oracle imp全库导入

(选择表空间名称,总和(字节)/ 1024 / 1024 作为 MB 从 dba_free_space 组按表空间名称)免费,

(select tablespace_name, sum(bytes) / 1024 / 1024 as MB from dba_data_files group by tablespace_name) 总计

oracle 10g r2官方文档库_oracle imp全库导入_oracle 数据库空间

其中 free.tablespace_name = total.tablespace_name order by used_pct desc;

2.查询磁盘组剩余空闲空间

oracle 数据库空间_oracle 10g r2官方文档库_oracle imp全库导入

从 v$asm_diskgroup 中选择 TOTAL_MB、FREE_MB;

3. 向表空间添加数据文件。 下面的语句是在表空间lztb中增加一个20G的数据文件。 对应的磁盘组为DATA_LZTB,数据文件自动扩容功能关闭。 必须特别注意+号,否则会把数据文件建到本地磁盘oracle 数据库空间,导致打开题时出现问题。

alter tablespace lztb add datafile '+DATA_LZTB' size 20480m autoextend off;