oracle 添加表空间内存,oracle中表空间扩容或表空间新增

最近开发的项目遇到用户反馈使用系统时,系统反应很慢。

由于系统最近没有更新过,以及之前一直使用正常,服务器内存cpu使用正常的情况下就怀疑是不是数据库有问题

通过登录简单的查询一下数据库中的信息,发现数据库查询速度比平时慢

通过下面sql查询了一下数据库表空间资源情况

SELECT A.TABLESPACE_NAME "表空间名",

TOTAL / 1024 / 1024 "表空间大小单位(M)",

TRUNC(TOTAL / 1024 / 1024 / 1024, 2) "表空间大小单位(G)",

FREE / 1024 / 1024 "表空间剩余大小单位(M)",

TRUNC(FREE / 1024 / 1024 / 1024, 2) "表空间剩余大小单位(G)",

(TOTAL - FREE) / 1024 / 1024 "表空间使用大小单位(M)",

TRUNC((TOTAL - FREE) / 1024 / 1024 / 1024, 2) "表空间使用大小单位(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

发现表空间的使用率快满了

bVbEPmG

5.那么接下来好处理了,就是增加表空间就能解决问题了

①.先查询表空间的对应的物理文件(楼主使用的表空间是DATA所以下面查询的表空间名也是DATA)

SELECT TABLESPACE_NAME, --表空间名

FILE_NAME, --表空间对应的物理文件

AUTOEXTENSIBLE --是否自动扩容

FROM DBA_DATA_FILES

WHERE TABLESPACE_NAME = 'DATA';

bVbEPub

②未对应的物理文件扩容,执行下面语句

ALTER TABLESPACE DATA ADD DATAFILE '物理文件路径(上图的FILE_NAME)' SIZE 30000M AUTOEXTEND on next 10000m;

③执行该语句,出现了ORA-01537:无法添加文件-该文件已是数据库的一部分

bVbEPuh~~~~

④遇到上面问题可以给对应的表空间新增物理文件(只需要把上面的file_name后面部分的文件换成数据库中没有的文件名即可,上面的是data01.dbf,可以替换为data02.dbf)。下面的语句时给这个物理文件初始大小为30g,自动扩展为10g

ALTER TABLESPACE DATA ADD DATAFILE '新的File_name' SIZE 30000M AUTOEXTEND on next 10000m;

⑤完成上面操作后,数据库的服务查询慢已经恢复正常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值